一次偶然的机会,部署在客户那里的机器上运行的服务都拒绝访问,ssh也登录不了,过了一小段时间后自己恢复了,由于应用都在容器里可以开机自启。所以在排查问题时优先排查了是否是停电问题。
查看开关机或重启记录 > last
查看最近一次开机时间 > last -1 reboot
查看系统从上次开机到现在运行多久了 > uptime
发现最近都没有关机过,于是想看看是不是有什么人登录上去做了什么奇怪的操作,于是
查看失败登录记录 > sudo lastb
不看不知道,一看吓一跳,里面满满的失败记录
于是突然发现有人在做ssh暴力破解。庆幸的是查了一下日志没有成功过。
稍微统计了一下
图一,ip统计,前面的为攻击次数。
图二,攻击用的常用用户名,前面的为次数。
解决方案:
第一步:
首先赶紧去禁用了攻击的ip段
禁用ip > vim /etc/hosts.deny
格式sshd:ip段:deny
重启ssh服务 > systemctl restart sshd
扩展一下配置允许ssh的ip的方式 > vim /etc/hosts.allow 格式为 sshd:ip段:allow
allow的权限大于deny,可以在deny中配置 sshd:ALL 禁用所有,再在allow中配置需要的ip
注意,多开一个窗口防止配置错误ssh进不去了。
第二步:
修改ssh端口,禁用root用户(如果开启了的话),更换常用的用户登录名,增强密码安全性等操作。
第三步:
在linux主机中加入DenyHosts等类似安全模块,可以通过配置自动禁用多次输入密码错误后的ip,并且发邮件告警。
第三步的配置未完待续。。。。