我发现这个方便的脚本在线,并希望修改它只阻止SSH访问,但我不知道什么关于iptables,我害怕我杀了我的系统,因为我没有物理访问它。
http://ipinfodb.com/ip_country_block_iptables.php
我应该改变什么才能放下端口22?
我知道黑客可以使用代理等,这不会是我唯一的安全。 这个原因只是为了减less我从中国获得的有关自动攻击的fail2ban电子邮件的数量:)
谢谢Maciej
你需要在你的发行版中的这个相当于这个:
$ apt-cache显示xtables-addons-common 包:xtables-addons-common 描述-en:扩展目标和匹配iptables [工具,库] Xtables-addons为iptables提供了额外的模块,不存在于 内核,是patch-o-matic的inheritance者。 扩展包括像TEE,TARPIT,CHAOS或类似的模块的新目标 geoip和帐户。
您对geoip模块感兴趣。 然后添加一些规则到你的iptables 。
检查HOWTO中的第四点。
示例规则的简单演练:
# iptables -A INPUT -m geoip --src-cc A1,A2 -j DROP
以上命令在使用geoip模块的INPUT链中添加一条规则,以匹配源自特定国家(由其ISO 3661代码标识)的连接。 在这种情况下, A1和A2代表:
A1 => "Anonymous Proxy" , A2 => "Satellite Provider" ,
该命令使用否定( ! )来反转匹配,导致所有不是来自指定国家(本例中为CA)的stream量被丢弃:
# iptables -A INPUT -m geoip ! --src-cc CA -j DROP
最后一个例子展示了如何创build一个自定义链来分析你的sshd服务器的stream量:
# iptables -N SSH_GEOIP # iptables -A SSH_GEOIP -m geoip --src-cc CA # iptables -A SSH_GEOIP -m geoip --src-cc DE # iptables -A SSH_GEOIP -m geoip --src-cc US # iptables -A SSH_GEOIP -m geoip --src-cc JP # iptables -A SSH_GEOIP -m geoip --src-cc FR # iptables -A SSH_GEOIP -m geoip ! --src-cc CA,DE,US,JP,FR # iptables -A INPUT -p tcp --dport 22 -j SSH_GEOIP