SSH 秘钥登陆远程服务器

文章目录

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

1
ssh-keygen -t rsa

生成的本地秘钥位于:

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

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

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

然后在远程服务器操作:

1
chmod 600 ~/.ssh/authorized_keys

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

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

重启远程机 ssh 服务:

1
/etc/init.d/sshd restart

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

1
vim ~/.ssh/config

加入以下内容:

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

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


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