我刚刚了解到CSF,就像它给我的日志/阻塞的可能性一样。 但是它并没有做到理想的阻塞。
情况如下,我有一个服务器与多个IP地址。 我在一个IP上运行apache,在另一个上运行ssh(因此,针对我的网站的黑客攻击ssh或其他服务的攻击变less了)。
到csf.allow我补充说:
tcp|in|d=80|d=xx.xx.xx.xx tcp|in|d=22|d=xx.xx.xx.xy
然而,在iptables中,allow被添加在块之前,使其无用。
Chain LOCALINPUT (1 references) num pkts bytes target prot opt in out source destination 1 1074 92873 ACCEPT tcp -- !lo * 0.0.0.0/0 xx.xx.xx.xy tcp dpt:22 2 34401 2163K ACCEPT tcp -- !lo * 0.0.0.0/0 xx.xx.xx.xx tcp dpt:80 3 0 0 DROP all -- !lo * xx.xx.xx.hacker1 0.0.0.0/0 4 0 0 DROP all -- !lo * xx.xx.xx.hacker2 0.0.0.0/0
有没有办法扭转它?
我想出了如何做到这一点,我改变了以下的csf.pl:
在sub linefilter我换了$ inadd(1923行)。
原版的:
my $inadd = "-I"; if ($ad eq "deny") { $inadd = "-A";
新:
my $inadd = "-A"; if ($ad eq "deny") { $inadd = "-I";
我意识到原来是最常见的方式去,但是如果你想过滤特定的端口/ IP的这是解决scheme。 只要确保在忽略列表中拥有自己的(外部)IP地址,或者您可以轻松访问机器(或通过ip等等)访问机器,所以您不会意外locking!