客户端建立私钥和公钥 在客户端终端运行命令 ssh-keygen -t rsa ssh服务端配置 vi /etc/ssh/sshd_config # 是否让 sshd 去检查用户家目录或相关档案的权限数据, # 这是为了担心使用者将某些重要档案的权限设错,可能会导致一些问题所致。 # 例如使用者的 ~.ssh/ 权限设错时,某些特殊情况下会不许用户登入 StrictModes no # 是否允许用户自行使用成对的密钥系统进行登入行为,仅针对 version 2。 # 至于自制的公钥数据就放置于用户家目录下的 .ssh/authorized_keys 内 RSAAuthentication yes PubkeyAuthentication yes AuthorizedKeysFile %h/.ssh/authorized_keys 把客户端的公钥添加到服务器的authorized_keys vi ~/.ssh/id_rsa.pub 复制到服务器上的 /home/username/.ssh/authorized_keys 文件中 服务端重启sshd systemctl restart sshd 客户端通过私钥登录ssh服务器 ssh -i ~/.ssh/id_rsa name@每次敲命令,都要指定私钥,是一个很繁琐的事情,所以我们可以把私钥的路径加入ssh客户端的默认配置里 vi /etc/ssh/ssh_config #其实默认id_rsa就已经加入私钥的路径了,这里只是示例而已 IdentityFile ~/.ssh/id_rsa #如果有其他的私钥,还要再加入其他私钥的路径 IdentityFile ~/.ssh/blue_rsa