小编Aus*_*gel的帖子

Ubuntu IPTables 只允许 1 个国家

因此,我一直在网上寻找一个脚本,该脚本将删除除 http(80) 和 https(443) 端口之外的所有端口的所有流量,然后只允许来自国家 x 的所有其他端口的流量(在我的案例国家 x 是美国)。

我不想添加来自每个国家/地区的所有 IP,我只想允许来自我国家/地区的 ip,然后阻止来自外部世界的几乎所有其他流量。我国以外的任何人都不应访问 ssh、ftp、smtp 等。除了我自己。如果这种情况发生变化,我会在它接近时为其添加一个特殊情况。

边注

我必须注意,我确实找到了一个问题,其中包含使用 ip 表按国家/地区禁止 ip的脚本,但这是我必须做的很多额外插入。

标记为最佳答案的脚本将阻止来自这些 IP 的所有流量。我只想阻止访问除 80 和 443 之外的所有端口。

更新

根据以下规则,

iptables -A OUTPUT -m geoip --dst-cc CN -j DROP
Run Code Online (Sandbox Code Playgroud)

我可以修改它并做类似的事情吗

iptables -A OUTPUT -m geoip --dst-cc CN --dport 80 -j ACCEPT
iptables -A OUTPUT -m geoip --dst-cc CN --dport 443 -j ACCEPT
iptables -A OUTPUT -m geoip --dst-cc CN -j DROP
Run Code Online (Sandbox Code Playgroud)

我认为这将允许来自中国的 ips 访问端口 80 和端口 443,而它会丢弃其余端口。这个假设是否正确?如果没有,为什么不呢?

更新 2

经过一番折腾,我发现我的 …

networking firewall ssh http iptables

9
推荐指数
1
解决办法
1万
查看次数

标签 统计

firewall ×1

http ×1

iptables ×1

networking ×1

ssh ×1