目录

环境

起因

查看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之后一定要及时修改账号与密码