無知識 | 三無計劃

SSH 秘钥登陆远程服务器

首先在本机上生成密钥对:

ssh-keygen -t rsa

生成的本地秘钥位于:

~/.ssh/id_rsa  #私钥
~/.ssh/id_rsa.pub #公钥

并将本地的公钥导入远程服务器,在本机操作:

cat ~/.ssh/id_rsa.pub | ssh 远程用户名@远程服务器 'cat - >> ~/.ssh/authorized_keys'

然后在远程服务器操作:

chmod 600 ~/.ssh/authorized_keys

在远程服务器中开启秘钥登陆:

vim /etc/ssh/sshd_config
PubkeyAuthentication yes  //将该项改为yes

重启远程机 ssh 服务:

/etc/init.d/sshd restart

在本地编辑或添加配置文件:

vim ~/.ssh/config

加入以下内容:

Host 服务器名字,助记
    HostName IP或者域名
    Port 端口
    User 用户名
    IdentityFile ~/.ssh/id_rsa

即可通过 ssh 服务器名 快速登陆远程服务器。


从安全性上考虑,也更推荐本文这种基于密钥的鉴权方式,而不是使用密码。