SSH相关命令整理

大多数Linux服务器使用SSH进行远程管理。而作为一个众所周知的服务,SSH也总是成为被攻击的对象。Fail2Ban则是帮助服务器抵御暴力破解的一个软件。为了便于日后维护,这里整理了一些有关SSH的常用的命令。

列出最新日志文件中登录失败的条目:

cat /var/log/secure | grep 'Failed password'

列出所有日志文件中登录失败的条目:

cat /var/log/secure* | grep 'Failed password'

列出最新日志文件中登录失败的IP和次数:

cat /var/log/secure | awk '/Failed/{print $(NF-3)}' | sort | uniq -c | awk '{print $2" = "$1;}'

列出所有日志文件中登录失败的IP和次数:

cat /var/log/secure* | awk '/Failed/{print $(NF-3)}' | sort | uniq -c | awk '{print $2" = "$1;}'

查看被识别为暴力破解而被禁的IP地址列表(sshd是服务名称,不同情况可能有所不同):

iptables -L f2b-sshd

查看Fail2Ban最近的100条日志:

tail -100 /var/log/fail2ban.log

检查Fail2Ban总服务状态:

fail2ban-client status

检查Fail2Ban的SSH保护服务状态(sshd是服务名称,不同情况可能有所不同):

fail2ban-client status sshd

在SSH保护服务中添加/删除白名单(sshd是服务名称,不同情况可能有所不同;1.2.3.4是IP地址,按需修改):

fail2ban-client set sshd addignoreip 1.2.3.4
fail2ban-client set sshd delignoreip 1.2.3.4

参考文章:
https://www.howtoing.com/how-to-install-fail2ban-on-centos
https://www.jianshu.com/p/1eb53a0200e8