Linux下直接用密码登陆是非常不安全的,为什么这么说呢,因为我被无情的攻击了。root密码被黑,服务器被挂马。
朋友建议说禁用密码登陆,改用密钥的方式,能提高安全性。于是乎,做了如下笔记。
1. 生成公钥和私钥
ssh-keygen -t rsa //会让你选择文件存放,此处可直接回车,用默认值 //然后会选择是否用密码(密钥的密码),可以随便设置一个简单的,记住即可
默认在 ~/.ssh目录生成两个文件:
id_rsa :私钥
id_rsa.pub :公钥
2. 把id_rsa(私钥)复制到本地
怎么弄过来自己看着办,反正我是用winscp拖过来的。
3. 导入公钥到认证文件
cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
4. 修改目录及密钥文件权限
chmod 700 ~/.ssh chmod 600 ~/.ssh/authorized_keys
5. 禁用密码登陆
修改/etc/ssh/sshd_config文件(注意是sshd_config,不是ssh_config)。
将PasswordAuthentication yes 改为 PasswordAuthentication no
6. 重启sshd
service sshd restart
搞定,这样就没办法用密码登陆了,保存好密钥文件就行了。