centos7防SSH暴力破解一些运维技巧

1、查询登录成功的用户IP

cat /var/log/secure | grep "Accepted password for root from"

2、查询非法登录的用户IP

cat /var/log/secure | grep "Invalid user"

cat /var/spool/mail/root | grep -E "Failed password"

3、查询非法登录的用户IP(这个依赖宝塔面板开启了pure-ftpd,此工具可发送消息到root中)

cat /var/spool/mail/root | grep -E "Invalid user download from|Invalid user ftpuser from"

4、查询登录用户IP(自2022-11-10以来)

journalctl -u sshd --since "2022-11-10" | grep password

5、查询登录失败账号次数及对应IP(清除锁定账号为pam_tally2 -u vbn -r,其中vbn为账号名),前提是通过在/etc/pam.d/sshd文件中添加配置auth required pam_tally2.so deny=3 unlock_time=3600 even_deny_root root_unlock_time=3600,注意加在第二行(最前面那行)

pam_tally2 -u

6、利用netstat 查询攻击IP

netstat -ntu | grep ESTAB | awk '{print $5}' | cut -d: -f1 | sort | uniq -c | sort -n

7、利用lastb 判断

lastb -n 10

8、高级查询,按日期查看IP登录次数,date "+%Y-%m-%d"可换成2022-11-02之类

journalctl -u sshd --since `date "+%Y-%m-%d"` | grep password | awk '{print $1" "$2" "$(NF-3)}' | sort | uniq -c | awk '{print $1" "$2" "$3" "$4'} | column -t

9、高级查询,按日期查看IP登录详细情况,date "+%Y-%m-%d"可换成2022-11-02之类

journalctl -u sshd --since `date "+%Y-%m-%d"` | grep password | awk '{print $1" "$2" "$3" "$(NF-3)" "$(NF-5)}' | column -t

如果云服务器已经不能正常登录了,可以用两种办法:

1、宝塔面板--文件--修改对应的文件。

2、登录腾讯云或阿里云--轻量云服务器--服务器--执行命令(可免登录运行命令)。


其他Xshell按钮查询实用命令

jour1

journalctl -u sshd --since `date "+%Y-%m-%d"` | grep password | awk '{print $1" "$2" "$(NF-3)}' | sort | uniq -c | awk '{print $1" "$2" "$3" "$4'} | column -t

jour2

journalctl -u sshd --since `date "+%Y-%m-%d"` | grep password | awk '{print $1" "$2" "$3" "$(NF-3)" "$(NF-5)}' | column -t

host

cat /etc/hosts.deny

publ

firewall-cmd --list-rich | awk '{print $(NF-1)}' | awk -F= '{print $2}'

ipta

iptables -L -n