ssh密匙使用RSA验证方式来建立连接,然后使用对称密匙进行通信。RSA的私钥储存在客 户端,公钥储存在服务器,没有私钥则无法通过暴力破解的方式登录服务器。
制作密匙对
在服务器上制作密匙对,运行如下命令
1 | ssh-keygen |
此时会要求输入密钥锁码供使用密钥时使用,可以留空。生产两个密钥在.ssh目录下,公匙有.pub后缀
在服务器上安装公钥
输入如下命令
1 | cat id_rsa.pub>>authorized.key |
注意密钥文件权限为600
1 | chmod 600 authorized.key |
打开密钥登录
编辑服务器/etc/ssh/sshd_config文件,添加
1 | RSAAuthentication yes` `PubkeyAuthentication yes |
可以开启root用户登录
1 | PermitRootLogin yes |
在完成设置后可以禁用密码登录(应该不会有冒失鬼搞得自己进不去服务器吧)
1 | PasswordAuthentication no |
私钥下载到客户端
每个客户端验证方式不同,不做一一说明。使用ssh命令登录可以在ssh命令后使用-i PrivateFile 。~/.ssh/id_rsa是默认密钥。