导航

腾讯云SSH登陆缓慢

问题描述

最近在远程登录腾讯云的服务器时发现巨慢, 而且在登录后会弹出下面这行提示:

Last failed login: Mon Sep 11 09:27:02 CST 2023 from 61.144.111.227 on ssh:notty
There were 8573 failed login attempts since the last successful login.
Last login: Mon Aug 28 17:36:20 2023 from 39.170.42.227

其实这个也算是正常,因为网上有成千上万的恶意机器人在尝试登陆你的机器,所以会留下这些登陆的记录.

要解决这个问题,有下面几个办法:

  • 配置仅允许通过SSH密钥方式登录,禁止密码登录
  • 将SSH的端口,从22改成其他端口(但这个只能减少简单的机器人的尝试,更多的机器人会扫描所有开放的端口)
  • 安装fail2ban并启用其自动检测SSH多次登录失败的功能,以阻止重复尝试。如果在CentOS 8或CentOS 7上使用firewalld.

对于我而言,因为我直接使用root用户登录,风险其实挺大的,所以我得首先配置下禁止root用户登录,然后创建一个新的用户,后面使用这个新用户登录。

尝试解决

创建新用户

在root用户登录的情况下,使用以下命令创建用户并设置密码

useradd {username}

passwd {username}

在本地,使用以下命令将公钥拷贝到服务器

ssh-copy-id -i ~/.ssh/id_rsa.pub {username}@{your_server_ip}

配置服务器的SSHD

打开 /etc/ssh/sshd_config 文件,做如下修改:

禁止root用户通过ssh登录

PermitRootLogin no

禁止通过密码方式登录

PasswordAuthentication no

配置完成后,重启sshd服务:

systemctl restart sshd

经过上面的配置后,我发现 SSH 登录服务器竟然变快了,😓,至于登录慢的真正原因,目前我还不清楚,不过也算是解决了问题.

参考文档

RedHat官方SSH文档