我希望fail2ban参与这些行,并阻止包含的示例IP地址: [Tue Dec 08 12:17:13.622175 2015] [:error] [pid 30390] [client 62.210.88.201:38139] script '/var/www/html/httptest.php' not found or unable to stat [Tue Dec 08 13:22:25.363614 2015] [:error] [pid 30386] [client 62.210.88.201:54141] script '/var/www/html/httptest.php' not found or unable to stat [Tue Dec 08 14:36:01.790899 2015] [:error] [pid 28831] [client 62.210.88.201:42431] script '/var/www/html/httptest.php' not found or unable to stat […]
我一直试图让fail2ban使用Xeams垃圾邮件filter。 但是,我无法弄清楚我应该使用什么可能的正则expression式匹配日志。 日志以这种格式。 61.240.144.65 1451702136946 5 185.130.5.240 1451702444872 5 192.237.159.38 1451705774912 5 185.130.5.240 1451712868825 5 日志的每个部分都被一个Tab(我认为)分开,第一部分是主机IP。 我不知道其他部分是做什么的。 我已经尝试了以下正则expression式,但根据fail2ban-regex它不起作用。 <HOST> 1451.* .* 以及: <HOST> .* .* 我真的不知道如何去匹配这些日志。
即使在将该IP列入白名单后,Fail2ban仍会继续阻止一个IP。 我在/etc/fail2ban/jail.conf有一行如下所示。 ignoreip = 53.45.114.103 但是fail2ban继续阻止这个ip。 我在日志中看到: 2016-01-07 13:34:38,180 fail2ban.actions [44813]: NOTICE [ssh] Ban 53.45.114.103 2016-01-07 13:34:38,496 fail2ban.filter [44813]: INFO [ssh] Found 53.45.114.103 2016-01-07 13:34:38,515 fail2ban.filter [44813]: INFO [ssh] Found 53.45.114.103 2016-01-07 13:34:38,529 fail2ban.filter [44813]: INFO [ssh] Found 53.45.114.103 2016-01-07 13:34:38,534 fail2ban.filter [44813]: INFO [ssh] Found 53.45.114.103 2016-01-07 13:34:38,545 fail2ban.filter [44813]: INFO [ssh] Found 53.45.114.103 […]
我试图让fail2ban阻止某些坏机器人打击我的网站。 我刚刚启用了jail.local中的默认“apache-badbots”(我改变了日志path来匹配我自己的日志和发送报告的用户) enabled = true filter = apache-badbots action = iptables-multiport[name=BadBots, port="http,https"] sendmail-buffered[name=BadBots, lines=5, dest=jisti] logpath = /var/logs/httpd/access_log bantime = 172800 maxretry = 1 我重新启动了fail2ban,并收到一封电子邮件,说监狱已经开始。 然而,当我正在看日志时,其中一个糟糕的机器人攻击了这个网站,fail2ban什么也没做。 所以我检查了filter中的apache-badbots.conf。 我得出结论,正则expression式可能与我使用的自定义日志格式不匹配,也不是实际寻找敲击我的网站的具体的坏bot。 我用failregex修饰,然后用 fail2ban-regex /var/log/httpd/access_log /etc/fail2ban/filter.d/apache-badbots.conf 这个成功报告和300多个匹配。 呜呼我想。 我重新启动了fail2ban。 此后不久,我看到了bot再次锤击该网站,fail2ban无所事事。 我检查了iptables只是为了看看它是否做了什么,但得到的iptables规则错了 iptables -S -P INPUT ACCEPT -P FORWARD ACCEPT -P OUTPUT ACCEPT -N fail2ban-BadBots -N fail2ban-SSH -N fail2ban-php-url-open -A […]
我已经为sshd添加了一些正则expression式规则,并希望禁止在监狱规则(3次,24小时)内匹配此正则expression式的/ var / log / secure中的所有用户。 但我不想等他们再试,我现在要禁止他们。 我将如何实现这一目标?
我注意到我的Ubuntu Xenial服务器上有一些奇怪的东西。 它在默认端口上有SSH,它有fail2ban。 Fail2ban正在检测服务器上的强制尝试,并相应地logging下来: 2017-01-12 10:58:19,927 fail2ban.filter [23119]: INFO [sshd] Found xxxx 2017-01-12 11:03:27,808 fail2ban.filter [23119]: INFO [sshd] Found xxxx 2017-01-12 11:08:37,936 fail2ban.filter [23119]: INFO [sshd] Found xxxx 2017-01-12 11:13:51,538 fail2ban.filter [23119]: INFO [sshd] Found xxxx 2017-01-12 11:18:57,939 fail2ban.filter [23119]: INFO [sshd] Found xxxx 2017-01-12 11:24:10,399 fail2ban.filter [23119]: INFO [sshd] Found xxxx 2017-01-12 11:29:23,161 fail2ban.filter […]
我想弄清楚如何为fail2ban创build一个failregexfilter,以防止下面的攻击。 我尝试了以下failregexexpression式,但它们不匹配/ var / log / https / error_log中的任何内容 failregex = ^\[[^\]]+\] \[error\] \[client <HOST>\].*File does not exist: .*pma* *\s*$ 要么 failregex = ^[[^\]]+\] \[error\] \[client <HOST>\] File does not exist: *phpyadmin* *\s*$ 这是我正在尝试创build规则的探针 [Sat Aug 05 15:42:46 2017] [error] [client 109.188.133.141] File does not exist: /var/www/vhosts/default/htdocs/phpmyadmin2015 [Sat Aug 05 15:42:46 2017] [error] [client 109.188.133.141] […]
尝试阻止一些使用fail2ban读取Apache访问日志的恶意机器人,并坚持设置正确的正则expression式。 我想在访问日志中匹配的行是: 5.10.83.65 – – [18/Mar/2014:09:06:38 +0400] "GET /catalog/product_compare/ ,,/form_key/QLZ6ZkIwX3FWqme3/ HTTP/1.1" 302 522 "-" " Mozilla/5.0 (compatible; AhrefsBot/5.0; +http://ahrefs.com/robot/)" 而我试图使用的简化正则expression式: failregex = ^<HOST>*(AhrefsBot) 但是无论我尝试什么都行不通。 在这里find这个职位是我试图实现badbots 这就是我最终做的,不用做一个大的名单就把他们全部封杀,如果这些单词匹配,就要冒着风险,因为这可能会阻止合法的访问者。 我使用ignoreregex来允许好的,并阻止其他机器人,只要他们自称为bot: failregex = ^<HOST> -.*compatible;.*(Bot|bot) ignoreregex = (Google|Yandex|Mail|bing) 现在这是远远不够理想的,但是阻止99%的不需要的扫描器机器人释放服务器,快速和肮脏。
我正在尝试为fail2ban创build一个筛选器来识别UFW日志中的端口扫描。 我已经确认我的禁止行为在其他filter上正常工作,并且在这个场合创build正确的filter/正则expression式时遇到了困难 – 我相信这将成为我的一个愚蠢的错误。 我已经尝试了fail2ban-regex工具,并获得了0次。 我的jail.local包含: [ufw-port-scan] enabled = true port = all filter = ufw-port-scan banaction = ufw-action logpath = /var/log/ufw.log maxretry = 10 我试图创build的filter(位于/etc/fail2ban/filter.d/ufw-port-scan.conf )如下所示: [Definition] failregex = kernel: \[UFW BLOCK\] IN=.* SRC=<HOST> ignoreregex = 我正在尝试在ufw.log标识一个示例行: Sep 18 21:06:08 trial kernel: [ 3014.939702] [UFW BLOCK] IN=eth0 OUT= MAC=00:00:00:00:00:00:00:00:00:00:00:00:00:00 SRC=192.168.0.5 DST=192.168.0.10 LEN=44 TOS=0x00 PREC=0x00 […]
我已经search了很多这个,但不能设法解决。 解释它最简单的方法是,我曾经只有1个电子邮件服务器,现在我有2个。第一个电子邮件服务器只接受SSL连接,并转发非SSL(即110,143等)到第二个服务器(这是因为客户已经设置了电子邮件并且使用指向第一个电子邮件服务器的DNS条目)。 我想在第二台服务器上使用Fail2ban来阻止login失败,但我无法弄清楚,因为Dovecot只能“看到”第一台服务器的IP地址。 我可以打开服务器1上的iptables日志logging,但无法看到如何将连接“关联”到server2上失败的密码尝试。