服务器SSH密钥登录设置

本机生成密钥

1
ssh-keygen -t rsa -C "email"

生成后,默认在~/.ssh目录下

1
2
xtong@xtong-TM1704:~$ ls .ssh/
id_rsa id_rsa.ppk id_rsa.pub known_hosts

服务器添加密钥

在服务器的~/.ssh/authorized_keys文件,添加一行,内容是我们本地id_rsa.pub中的全部内容。
如果服务器没有这个文件,则创建此文件。

1
2
3
4
mkdir .ssh
chmod 700 .ssh
touch .ssh/authorized_keys
chmod 600 .ssh/authorized_keys

服务器设置密钥登录

打开服务器的 /etc/ssh/sshd_config文件,修改下面的设置

1
2
3
4
5
6
7
8
9
10
11
# ...
RSAAuthentication yes
PubkeyAuthentication yes

AuthorizedKeysFile .ssh/authorized_keys
# ...
# 允许root用户登录
PermitRootLogin yes
# ...
# 禁止密码登录
PasswordAuthentication no

重启ssh服务

1
service sshd restart