scp是通过ssh连接来加密传输文件的方式,出于一些自动化操作需要(例如备份文件异地传输),要求能通过命令行免密码自动登录来实现。
假设具体需求是,是由主机aaa.com自动ssh登录到主机bbb.com,具体设置步骤如下:
在aaa.com上的命令:
#cd
# ssh-keygen -t rsa (起个id,例如aaa_rsa,连续三次回车,即在本地生成了公钥和私钥,不设置密码)
在用户主目录下的.ssh目录下就会生成aaa_rsa 和 aaa_rsa.pub两个文件,带pub后缀的文件自然是公的。
然后,将aaa.com的公钥文件 aaa_rsa.pub 发送到bbb.com主机上,同样放置在主目录的.ssh目录下
#scp .ssh/aaa_rsa.pub bbb.com:~/.ssh/
在bbb.com的.ssh目录下:
#cd
#cd .ssh
#touch authorized_keys
#cat aaa_rsa.pub >> authorized_keys
========================================================
以上基本步骤结束,但还差一步:就是检查 authorized_keys的权限是否 600,如果不是:
#chmod 600 authorized_keys
大功告成!
试试在aaa.com上直接ssh到bbb.com,不需输入密码即可登入。
#ssh -i ~/.ssh/aaa_rsa bbb.com
========================================================
在centos5主机上测试通过。
- 登录 发表评论
评论