管理Linux主机多了之后,管理大量的登录密码是一件很麻烦的事情,使用SSH-KEY方式登录服务器可以很好的解决问题。
以下是使用SSH-KEY方式实现客户端免密码登录SSH的方法。一套SSH-KEY可以等遍所有的服务器。
1.使用ssh-keygen在本地创建登录远程SSH服务器使用的公钥和私钥
一路enter之后,会在~/.ssh目录下创建两个文件
id_dsa #私钥,妥善保存好。
id_dsa.pub #公钥
2.将公钥复制到服务器上对应用户的 ~/.ssh/目录下。
3.在服务器用户的 ~/.ssh/目录下执行
需要注意的是出于安全考虑,authorized_keys必须是600权限
4.修改/etc/ssh/sshd_config,确认一下SSHD的publickey验证模式是否打开
以下是使用SSH-KEY方式实现客户端免密码登录SSH的方法。一套SSH-KEY可以等遍所有的服务器。
1.使用ssh-keygen在本地创建登录远程SSH服务器使用的公钥和私钥
ssh-keygen -t [rsa|dsa] -C "comments"
# -t 可选择RSA 和 DSA 两种密钥
# -C 可选注释
一路enter之后,会在~/.ssh目录下创建两个文件
id_dsa #私钥,妥善保存好。
id_dsa.pub #公钥
2.将公钥复制到服务器上对应用户的 ~/.ssh/目录下。
3.在服务器用户的 ~/.ssh/目录下执行
cat id_dsa.pub >>authorized_keys
# 首次使用的时候
chmod 600 authorized_keys
需要注意的是出于安全考虑,authorized_keys必须是600权限
4.修改/etc/ssh/sshd_config,确认一下SSHD的publickey验证模式是否打开
# 是否允许公钥认证。仅可以用于SSH-2。
PubkeyAuthentication yes|no #ssh-2 打开
# 是否允许使用纯 RSA 公钥认证。仅用于SSH-1。
RSAAuthentication yes|