There were 1978 failed login attempts since …… (二)更改ssh默认22端口阻止SSH暴力攻击

182 阅读2分钟

这是我参与8月更文挑战的第24天,活动详情查看:8月更文挑战

在上一篇文章 There were 1978 failed login attempts since …… denyhosts阻止SSH暴力攻击 中我给大家分享了一个 使用 denyhosts工具 阻止SSH暴力攻击的方法,但是该方法需要安装新的工具,并且需要配置相关设置文件,步骤有点繁琐,操作难度比较大,对一些服务器小白不太友好。

今天说一个简单解决 SSH 暴力攻击(端口扫描)的方法:更改SSH默认 22 端口

(一般服务器都是默认开放 22端口,为SSH提供服务,方便用户通过22端口进行ssh操作,所以大部分自动扫描工具,都是会扫描常见端口进行攻击,如果我们把22端口关掉,或者使用我们自定义的端口进行登录,就可以很大程度避免这种攻击)

步骤:

  1. 远程登录服务器

    可使用 xshell 或者 iterm 等工具登录

  1. 编辑 ssh配置文件(一般在/etc/ssh/目录下)
vim /etc/ssh/sshd_config

修改

#Port 22
#AddressFamily inet
#ListenAddress 0.0.0.0
#ListenAddress ::

添加上自定义的端口为 (23456或者任意10000~65535之间的端口,因为10000以下的端口号可能被特殊软件占用)

Port 22
Port 23456
#AddressFamily inet
#ListenAddress 0.0.0.0
#ListenAddress ::

⚠️注意:这里原来的 22 端口仍然保留,等配置完成,使用 23456 端口能够登录成功之后,再把22端口注释掉,防止更改端口之后登录不成功造成麻烦。   

  1. 开放新增的 23456 端口 (--permanent永久生效,没有此参数重启后失效)
firewall-cmd --zone=public --add-port=ssh端口/tcp --permanent    

更新防火墙:

firewall-cmd –reload

重启sshd服务:

systemctl restart sshd
  1. 注意,要在服务器的安全组设置中开放 23456端口,

    登录服务器控制台,安全组设置中 开放 23456 端口

  1. 退出登录,使用 23456 端口重新登录,
ssh root@0.0.0.0 (你的公网IP) -p 23456

如果能登录成功,则重回上边第 2. 步,将22端口注释,以后使用 23456 端口登录即可。

如有问题,参见:

Linux 修改SSH 默认端口 22,防止被破解密码

centos7修改ssh远程端口