2011-11-20 65 views
1

所以我有一个脚本,ssh到另一台计算机。由于我经常使用它,所以我想知道是否可以让脚本自动输入由ssh提示的密码,或者以任何其他方式绕过每次运行脚本时都复制粘贴密码?自动输入shell密码的方法?

回答

3

更好使用空密码设置ssh密钥,而不是将密码放在脚本中。

https://wiki.archlinux.org/index.php/SSH_Keys

+0

谢谢!它工作完美:D – wrongusername

+0

顺便说一句,你会知道如何做到这一点与SSH2?我使用'ssh-kegyen2'生成了一个'id_dsa_1024_a.pub'文件,试图将其附加到'authorized_keys',但仍然无法自动登录。 – wrongusername

+0

@wrongusername - http://serverfault.com/questions/116177/whats-the-difference-between-authorized-keys-and-authorized-keys2 – manojlds

3

在客户端使用无密码的私钥可能会更好,与服务器端authorized_keys文件中的公钥配对使用特定命令可以运行。

例如,具有.ssh/authorized_keys2以下远程主机上的指定用户:

command="date" ssh-rsa AAAAB3NzaC1yc2EAAAABIw[...]Q== Comment for passphraseless key 

威尔只有曾经遇到date当您连接使用该密钥:

[localhost] % ssh -i /path/to/id [email protected]   
Sun 20 Nov 2011 20:29:59 EST 
Connection to remotehost closed. 
+1

是的,谢谢!这工作。 – wrongusername