设置 SSH 自动登陆(免密码,用户名)
其实我觉得每次使用SSH时输入用户名和密码也没什么不好,但是却被同事各种无情的鄙视。 T T
1、创建公钥、公钥
ssh-keygen -t rsa
无视它出来的任何提示,欢快的一路回车到底吧。
2、把公钥id_rsa.pub复制到远程机器的 /home/username/.ssh目录并命名为authorized_keys
方法1: ssh-copy-id user@host 方法2: cat ~/.ssh/id_rsa.pub | ssh user@host “mkdir ~/.ssh; cat >> ~/.ssh/authorized_keys”
各种手段,随你开心,反正复制过去就成~多台远程主机就多次复制~ 如果你本机登陆用户和远程登陆用户一致的话,就可以直接 ssh hostname直接登陆,下面就不用看了。
3、解决本地登陆用户与远程登陆用户不一致
好吧,这事很纠结,虽然不用输入密码了,但是还得 ssh username@hostname 来登陆,很不爽,你懂的。 其实解决也很简单(but是同事告诉我的,老脸一红),修改本地登陆用户的 ~/.ssh/config 文件,如果木有的话就自个儿建一个吧,内容如下:
Host hostname
user username
Host hostname2
user username2
这样,本地和远程登陆用户名不一致也可以 ssh hostname 登陆了。
另外,第1、2步也可以使用:
ssh-keygen; ssh-copy-id user@host; ssh user@host
总感觉还会死安全保险点好呀.!
第二步可以通过 ssh-copy-id 实现,man 一下
看着有点复杂啊~不用登陆,是不是安全问题 就大了?