如何查看自己的ssh端口是否被攻击

文章讲述了SSH端口被频繁爆破的问题,作者通过查看日志发现大量失败登录尝试。提出的解决方案包括关闭SSH密码登录并启用秘钥认证,更改SSH端口以及设置IP黑名单。同时提醒注意常用账号的安全性,及时修改密码。

目录

环境

起因

查看ssh日志

用命令直接查看

解决办法

关闭ssh密码登录启用秘钥登录

缺点

改端口(推荐)

ip黑名单(个人用户不推荐)

缺点

验证/其他的一些命令

查询ip地址的最后登入时间

查询ip地址的开始登入时间

查询恶意ip登入失败时最常用的账号名称

环境

  • debian 11_64
  • 宝塔面板

起因

之前在进入宝塔后台的时候发现一个惊讶的点

我的ssh端口好像一直被别人用弱密码爆破

虽然密码设计的很复杂

但是每次看到这个东西一天加个几千次失败有些看不顺眼

查看ssh日志

不知道为什么我安装网上的教程来做

当我输入

1
cat /var/log/auth.log | grep "Failed password"

时它什么也不显示,好像我本来没有这个文件

看到一些开启日志的解决方法,但是我也懒得搞了

用命令直接查看

于是我直接用命令进行查看

1
lastb | awk '{ print $3}' | sort | uniq -c | sort -n

109 113.140.8.194 109 45.95.147.218 113 185.224.128.141 118 185.217.1.246 121 170.210.208.108 127 141.98.11.110 134 89.39.246.21 144 167.99.89.165 193 101.42.25.236 209 222.138.252.23 283 104.248.123.223 516 113.195.227.183 518 113.57.92.188 558 157.245.42.2 649 64.227.176.74 682 170.64.150.41 682 170.64.163.254 682 170.64.172.227 682 170.64.188.86 1364 170.64.134.101 1364 170.64.162.66 1364 170.64.171.0 1601 170.64.163.255 1878 61.247.57.24

一看,好家伙!!!有几个ip登录了1000+次

ip一搜索

还是臭名昭著的嘞

解决办法

解决办法有三个

关闭ssh密码登录启用秘钥登录

这一栏吧ssh秘钥开启并且把ssh密码登录关闭

缺点

这么做缺点就是如果到一台新的电脑上,你没有备份密钥的话登录就比较麻烦。

改端口(推荐)

恶意ip往往是批量扫描ip的22号端口来判断是否开启ssh登入

如果改了ssh端口的话,一般情况下恶意ip不会花这么多的时间成本来扫描ip开放端口然后再一个一个端口试。

ip黑名单(个人用户不推荐)

或者可以把恶意的ip拉入黑名单,这样就可以禁止它访问我们的ip地址

缺点

恶意ip会变化所以要经常更新ip地址

而且由于黑客可以换ip地址,所以即使经常更新ip黑名单被黑入的概率还是挺大的

验证/其他的一些命令

查询ip地址的最后登入时间

1
lastb | grep ip地址 |tac

可以用来判断恶意ip有无停止进攻

查询ip地址的开始登入时间

1
lastb | grep ip地址

可以用来查询恶意ip什么时候开始发起的进攻

查询恶意ip登入失败时最常用的账号名称

1
lastb | awk '{ print $1}' | sort | uniq -c | sort -n

138 jenkins 146 dev 148 centos 150 deploy 150 sftp 154 node 155 user1 164 steam 169 ubnt 180 testuser 194 vagrant 222 dolphins 232 es 243 pi 266 hadoop 272 ftpuser 282 git 400 postgres 438 oracle 452 test 595 user 737 ubuntu 1186 admin 9292 root

可以看到用到的最多的是root和admin的账号名

所以在开启ssh之后一定要及时修改账号与密码