第一步:安装好 ssh
第二步:配置 openSSH 为允许 PubkeyAuthentication 认证
vim /etc/ssh/sshd_config
PubkeyAuthentication yes # 去掉注释
AuthorizedKeysFile ~/.ssh/authorized_keys # 去掉注释
AuthorizedKeysFile .ssh/authorized_keys # 去掉注释, CentOS 请用这个
useDNS no # 不改的话 ssh 客户端连接的时候会很慢,这一步可以忽略
第三步:把公钥加入到 authorized_keys 中,以让服务端认识你的公钥
# 复制自己的公钥到粘贴板
cat ~/.ssh/id_rsa.pub| pbcopy
# 复制自己的公钥到粘贴板直接粘贴到服务器上
cat ~/.ssh/id_rsa.pub | ssh root@xxx.xx.xxx.xx "mkdir -p ~/.ssh && cat >> ~/.ssh/authorized_keys"
brew install ssh-copy-id
ssh-copy-id root@xxx.xx.xxx.xx
第四步:重启 sshd 服务
service ssh restart
service sshd restart #centos
更多情况请参考 http://www.cyberciti.biz/faq/centos-stop-start-restart-sshd-command/
第五步:增强安全性
为了安全起见,如果你的主机只有你一两个人需要登录主机,可以禁用掉其它的 Passord 认证方式。
vim /etc/ssh/sshd_config
PasswordAuthentication no # 去掉注释, yes 改成 no
ChallengeResponseAuthentication no # 去掉注释, yes 改成 no
第六步: Storing Passphrases in the Keychain
本机的这一步可以略过,主要用在需要转发 ssh key 的安全主机上