ssh password and passphrase

1、ssh-keygen -t rsa
采用默认路径,输入passphrase。
2、scp /root/.ssh/id_rsa.pub remote:/root/.ssh/authorized_keys
需要输入root在远程机器的帐号密码
3、eval `ssh-agent`
4、ssh-add
输入之前输入的passphrase。


说明
1,2两步是用来生成rsa公钥/私钥对的。
第一步产生了密钥对,id_rsa文件中是私钥,id_rsa.pub是公钥,也可以产生dsa方式的密钥对
第二步将公钥附加到远程主机的/root/.ssh/authorized_keys文件后面。因为之前该文件是空的,所以直接scp;如果非空,则首先scp到临时文件,然后再cat。

3,4两步用来预制Passphrase.
第三步运行ssh-agent的输出(这是eval 反引号的功能),会设置两个环境变量SSH_AUTH_SOCK和SSH_AGENT_PID,这样程序可以访问后台的ssh-agent程序
第四步设置passphrase。

完成这四步,以后ssh或者scp就不会提示输入passphrase。
如果只完成1,2两步,则会提示输入passphrase。
如果都不作,则提示输入在远程机器的帐号密码。

passphrase是用来对密钥对的私钥进行加密的,不会在网络上传播。

缺点:3,4必需每次登录都执行。因为3设置环境变量,不同的登录是不同的。但对于shell,可以放在.bash_profile中执行,对于cron脚本,也可以在脚本中设置执行;4更是致命的,因为它是交互的,无法自定执行。

解决:只好设置passphrase为空,这样3,4两步也就省掉了。

附:

ssh-agent 程序如同一个看门人,它根据需要安全地提供对安全密钥的访问。ssh-agent 启动后,它就会在后台运行,并且可以由 ssh 和 scp 程序等其他 OpenSSH 应用程序所使用。这就使得 ssh 程序可以请求一个已经解密了的密钥,而不是在每次需要时向您询问私钥的安全口令
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值