如何限制 Linux 本机只能访问国内的 IP?

2019 年 7 月 12 日
 yumenoks
如何限制 Linux 本机只能访问国内的 IP?
百度了下只找到了,限制某一个国家的 IP 访问本机,但是我这个正好相反,
百度到的是进站,我的这个应该是限制出站,要怎么弄呢?
5856 次点击
所在节点    Linux
21 条回复
nyanyh
2019 年 7 月 12 日
ipset 白名单?
yumenoks
2019 年 7 月 12 日
恩差不多,如果是存在于 cnip 这个列表的才能出去,如果不是就不行,大概是这样的需求
lihongjie0209
2019 年 7 月 12 日
iptables 枚举
yumenoks
2019 年 7 月 12 日
@lihongjie0209 cnip 为允许出站的列表 先是设置 iptables -A OUTPUT 为拒绝.
然后 iptables -A OUTPUT -p tcp -m set --match-set cnip src -j ACCEPT 这样写对么?
3CH0
2019 年 7 月 12 日
iptables -A OUTPUT -p tcp -m set ! --match-set cnip src -j DROP
yumenoks
2019 年 7 月 12 日
@3CH0 设置好 ipset cnip 之后 只需要设置这一句就可以了吗?
greenskinmonster
2019 年 7 月 12 日
iptables -A OUTPUT -m geoip ! --destination-country CN -j DROP
用 geoip 模块
yumenoks
2019 年 7 月 12 日
@3CH0 @greenskinmonster 目前用的 ipset
iptables -A OUTPUT -p tcp -m tcp --dport 53 -j ACCEPT
iptables -A OUTPUT -p udp -m udp --dport 53 -j ACCEPT
iptables -A INPUT -p tcp --dport 22 -j ACCEPT
iptables -A OUTPUT -p tcp --sport 22 -j ACCEPT
iptables -A INPUT -p tcp -m set ! --match-set cnip src -j DROP
这样设置之后好像 curl 不到网页内容了,还需要什么设置吗?
herozzm
2019 年 7 月 12 日
你需要一个国内 ip 库,ip138 里去下载
yumenoks
2019 年 7 月 12 日
@herozzm 已经下载好了批量添加到了 ipset cnip 这列表里面了
catcalse
2019 年 7 月 12 日
iptables geo
yumenoks
2019 年 7 月 12 日
@catcalse geo 回比较效率吗?还有上面的设置还有啥要完善的吗?
3CH0
2019 年 7 月 12 日
@3CH0 #5 应该是 dst
yumenoks
2019 年 7 月 12 日
@3CH0 -destination-country cnip src -j DROP?
yumenoks
2019 年 7 月 12 日
@greenskinmonster 装 geoip 各种出错郁闷中!!!
greenskinmonster
2019 年 7 月 12 日
@yumenoks 用 ipset 也一样啊,还是写规则的问题
yumenoks
2019 年 7 月 12 日
@greenskinmonster 主要是规则参数不是很熟悉..
pussy2019
2019 年 7 月 13 日
@方滨兴
AlynxZhou
2019 年 7 月 13 日
放到国内不就成了?(滑稽
yumenoks
2019 年 7 月 13 日
@AlynxZhou 不太成,防火墙规则没那么广泛哈哈,还是自己定义的好

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://study.congcong.us/t/582377

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX