Linux ssh login via certificates

来自WHY42
imported>Soleverlee2016年8月22日 (一) 03:17的版本 (以“=生成秘钥= 首先生成秘钥,秘钥短语可以不生成。 <source lang="bash"> ssh-keygen -t rsa cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys </source>...”为内容创建页面)
(差异) ←上一版本 | 最后版本 (差异) | 下一版本→ (差异)

生成秘钥

首先生成秘钥,秘钥短语可以不生成。

ssh-keygen -t rsa
cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys

然后修改文件权限:

chmod go-w $HOME $HOME/.ssh
chmod 600 $HOME/.ssh/authorized_keys
chown `whoami` $HOME/.ssh/authorized_keys

修改sshd配置

vi /etc/ssh/sshd_config

RSAAuthentication yes
StrictModes yes
PubkeyAuthentication yes
AuthorizedKeysFile .ssh/authorized_keys

然后重启sshd服务:

service sshd restart
#centos 7:
systemctl restart sshd.service

然后就可以使用秘钥登陆了,把私钥(id_rsa)下载到本机登陆。注意权限的问题,另外,使用xshell登录的时候,还是要输用户名噢!(竟然犯了这么蠢的错误,还一直以为是权限的问题)