生成证书公私钥

1
ssh-keygen -t rsa -P ''

默认在 ~/.ssh目录生成两个文件:

1
2
id_rsa:私钥
id_rsa.pub:公钥

将公钥复制到远程服务器

方式一:

1
scp ~/.ssh/id_rsa.pub xxx@host:/home/{username}/.ssh/id_rsa.pub
1
mv ~/.ssh/id_rsa.pub  ~/.ssh/authorized_keys

因为配置文件/etc/ssh/sshd_config里是.ssh/authorized_keys,所以要重命名。

注意权限设置很重要! .ssh目录权限一般为700,私钥和公钥文件可以为400或600,总之只能owner有读写权限,其他用户不能有权限。

方式二:

1
ssh-copy-id -i ~/.ssh/id_rsa.pub xxx@host

ssh-copy-id命令可以把本地主机的公钥复制到远程主机的authorized_keys文件上,也会给远程主机的/.ssh, 和/.ssh/authorized_keys设置合适的权限。

重启ssh服务

1
systemctl restart sshd.service