用SSHPASS实现非交互式自动登录SSH

SSH2010-10-14 06:50

为了安全性,只能在ssh server后再手动输入密码,而不能像下面的命令那样:
echo -n 'PASSWORD' |sudo -S ls /

要不只能用『密钥对』的方式自动登录,再要不就用『expect』写脚本来自动登录,不过刚刚发现了一个小软件:sshpass

在Ubuntu 10.04下面是没有安装expect和sshpass的,既然这样,我还不如只装上sshpass,还不用写expect脚本呢!

用命令sudo apt-get install sshpass就可以装上sshpass包了,下面是sshpass的用法:
sshpass -p 'PASSWORD' ssh icyomik@ssh.sshcenter.srv

注:sshpass支持-f选项,可以从文本文件读取密码,而不用出现在命令行。
因为是私有机器,所以不怕所谓的不安全,要是用『密钥对』的话,虽然安全但太麻烦,何况在某些机器上不方便保存密钥。


原文链接: http://blog.jtwo.me/use-sshpass-to-implement-the-interactive-automatic-login-ssh