检查SSH端口是否被攻击/检查失败登录
SSH端口暴露在公网上很可能被黑客扫描,并尝试登入系统。这种攻击基本每天都在发生。
之前因为服务器里没有什么重要的东西,也就一直没有关注过登陆日志,
刚才在配置ssh chroot出现错误是才去看的auth.log,
记得这个文件就是个登陆日志,而且我之前偶尔查看时都很少内容,所以就直接cat查看了,
谁知道竟然是满屏满屏的,"Failed password for root XXX.XXX.XXX.XXX",等了将近一分钟仍然不见底,
最后只好Ctrl+c提前结束,于是分享一下教程
一、检查攻击来源
btmp文件会记录SSH端口登录失败的信息,包括尝试的用户名、IP地址和时间等信息。
btmp为二进制文件,文件路径为/var/log/btmp,直接查看这个文件太大了
1. 查看文件btmp
使用命令lastb可以查看文件btmp的信息,参数-n可以指定显示数量。
lastb -n 10 | tac
2. 查看攻击者IP及攻击次数
lastb | awk '{ print $3}' | sort | uniq -c | sort -n
这里看到 218.92.0.210 尝试登录了10054次
3. 查看攻击者尝试的用户名
lastb | awk '{ print $1}' | sort | uniq -c | sort -n
使用最多的登录用户名是root 其次是admin
4. 分析攻击者
对攻击次数第一的IP进行分析。
查看攻击开始时间
lastb | grep 218.92.0.210
查看攻击终止时间
lastb | grep 218.92.0.210 | tac
查看IP地理位置
curl ipinfo.io/218.92.0.210
二、防范措施
1. 修改SSH端口
修改SSH端口可以避免广撒网式的端口扫描及后续的攻击。
打开文件sshd_config
vim /etc/ssh/sshd_config
修改参数Port
修改前:
#port 22
修改后:
port 1122
重启SSH守护程序
systemctl restart sshd
2. 设置复杂密码
设置密码为字母+数字+符号组合,提升暴力破解难度。
3. 使用私钥登录
网上教程很多,可以自行补习
目录 返回
首页