如何使用bashinputssh密码?
我每天都通过ssh连接到服务器。 我经历这个例程:
IC001:Desktop user$ ssh user@my.server.com user@my.server.com's password: Last login: Tue Jun 4 10:09:01 2013 from 0.0.0.0 $
我想自动化这个过程,并创build一个bash脚本来为我做。 我不关心安全性,并且可以在脚本中公开存储我的密码。 我也可以在脚本执行的时候在屏幕上公开地input。 所以我创造了这个:
#!/bin/bash ssh user@my.server.com echo mypassword
但它不起作用。 我也试过send
而不是echo
,但它也没有工作。 请告知是否可以做。
仔细检查您是否无法使用密钥。
否则使用期望:
#!/usr/bin/expect -f spawn ssh user@my.server.com expect "assword:" send "mypassword\r" interact
创build一个新的密钥对(使用默认值)
ssh-keygen
将公钥复制到服务器:(上次密码)
ssh-copy-id user@my.server.com
从现在开始,服务器应该识别您的密钥,而不再要求您input密码:
ssh user@my.server.com