Linux系统大多说都支持OpenSSH,生成公钥、私钥的最好用ssh-keygen命令,
如果用putty自带的PUTTYGEN.EXE生成会不兼容OpenSSH,从而会导致登录时出现server refused our key错误。
1 2 3 4 5 6 |
ssh-keygen -t rsa //命令 Generating public/private rsa key pair. Enter file in which to save the key (/root/.ssh/id_rsa): //建议直接回车使用默认路径 Created directory ’/root/.ssh’ Enter passphrase (empty for no passphrase): //输入密码短语(留空则直接回车) Enter same passphrase again: //重复密码短语(留空则直接回车) |
此时在/root/.ssh/目录下生成了2个文件,id_rsa为私钥,id_rsa.pub为公钥。私钥自己下载到本地电脑妥善保存(丢了服务器可就没法再登陆了),为安全,建议删除服务器端的私钥。公钥则可以任意公开。
2、使用以下命令将公钥导入到VPS:
1 |
cat /root/.ssh/id_rsa.pub >> /root/.ssh/authorized_keys |
3、修改SSH的配置文件/etc/ssh/sshd_config :
1 2 3 |
#RSAAuthentication yes #PubkeyAuthentication yes #AuthorizedKeysFile .ssh/authorized_keys |
去掉上面3行前面的#,保存后重启SSH服务。
1 |
service sshd restart |
在你使用SSH Key登录验证成功后,还是为了安全,建议你关闭root用户使用密码登陆,关闭的方法如下:
修改SSH的配置文件/etc/ssh/sshd_config,找到下面1行:
1 |
PasswordAuthentication yes |
修改为:
1 |
PasswordAuthentication no |
保存后重启SSH服务。
1 |
service sshd restart |
文章评论