LeeZC's Blog

用SSH 密钥登录VPS

以前没有在VPS 上部署重要的东西,设置一个稍复杂的密码就可以。下面对记录一下VPS 禁止用户名+密码登录,仅使用密钥登录的过程。

SSH密钥登录VPS

生成SSH 公钥

确认是否已经有一个公钥,即检查.ssh文件夹,以及文件夹中是否存在id_rsaid_rsa.pub文件,有.pub后缀的文件就是公钥,另一个文件则是密钥。如果不存在,或者干脆连.ssh文件夹都没有,可以进行创建。如果存在,就直接把id_rsa.pub内容输出,粘贴的服务器的相关文件。

$ cd ~/.ssh
$ ls

可以用ssh-keygen来创建
默认公钥的位置(.ssh/id_rsa),然后它会让你重复一个密码两次,如果不想在使用公钥的时候输入密码,可以留空。

更改VPS sshd 配置

编辑sshd 配置文件 /etc/ssh/sshd_config
找到并修改为下面的样子:

RSAAuthentication yes
PubkeyAuthentication yes
AuthorizedKeysFile      %h/.ssh/authorized_keys

PasswordAuthentication no

添加公钥

打开文件~/.ssh/authorized_keys, 把本地的id_rsa.pub 内容粘贴到里面,保存退出

重启sshd 服务

service sshd restart

其它安全措施

上面所说的登录方式只是最基本的安全措施,还有比如更改ssh 默认端口、禁止root用户登录、使用denyhosts、启用iptables限制等等。

查看尝试暴力破解机器密码的人

grep "Failed password for root" /var/log/auth.log | awk '{print $11}' | sort | uniq -c | sort -nr | more

查看成功登录信息

查看当前登录用户信息
who命令:
who缺省输出包括用户名、终端类型、登陆日期以及远程主机。
who /var/log/wtmp

last

last 用户名

last -t 20181206160404
显示这个时间戳之前的登陆历史

客户端密钥备份

如果电脑重装了,就很难登录服务器,可以备份密钥,直接复制id_rsaid_rsa.pub两个文件。当电脑重装或者想在其他电脑上登录主机,直接把这两个文件复制到 ~/.ssh/ 目录下就行。
如果使用备份的id_rsa 文件出现下面的错误提示

@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@         WARNING: UNPROTECTED PRIVATE KEY FILE!          @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
Permissions 0644 for 'id_rsa' are too open.
It is required that your private key files are NOT accessible by others.
This private key will be ignored.

可以用更改文件属性的方法来解决

chmod 0600 id_rsa
本文标签: VPS SSH 密钥 登录
本文编写于 1577209513000,技术更迭飞快,文中部分内容可能已经过时
本文网址: https://blog.leezc.cn/posts/2019-12-24-16726.html(转载注明出处)
如果你有任何建议或疑问可以在下面 留言
发表评论
相关推荐