ccuu886 发表于 2005-11-11 18:51:34

ROS2.9.2版IP限制访问设置(要求加精)

前几天刚装上ROS,还没过上几回瘾,却被一个问题折磨的不行,跑了10多个论坛,发了10多个帖子,却始终没能解决。

这个问题就是:我做了个WEB服务器,用ROS映射了端口让外网访问,但是我要限制外网的连接,也就是说,要禁止除了我允许的IP以外的外网连接,前几天是怎么试都不行,发了帖子也没人回,只到今天,在群里遇上了一高人--胡天胡地!!在他的启发下,终于设置成功,在此,我要再此感谢这位兄弟~!!!

废话不说了,方法有了我也不想独享,就写在这里让大家也了解了解吧:

先要做端口映射这是肯定的,要限制呢,也就是在这映射里做了。以2.9.2为例:

比如,我允许三个外网加上自己的网吧可以访问,其他的外网都禁止访问
我的WEB服务器映射的端口是8080
三个外网的IP分别是:61.148.*.* 61.187.*.*   61.143.*.9
那么,我在给WEB服务器做映射的时候,在WINBOX里应该这样设置:
IP----FIREWALL-----NAT
然后点+
会出来个表,让你设置,注:我的是英文的。
在GENERAL(常规)选项里:
CHAIN:后面选择dstnat
src.address:后面输入61.148.*.*
dst.address:后面输入你自己的外网IP
PROTOCOL:后面选择6(tcp)
Dst.PORT:后面输入8080
其它都默认。
输入完以后, 再选择Action选项:
ACTION:后面选择DST-NAT
TO ADDRESS:你的WEB服务器内网地址(也就是你要映射的那台机器的内网地址)
TO PORTS:8080

设置完以后,确定,那么外网IP为61.148.*.*的就可以访问你的WEB了,而除它以外的所有外网都不能访问。

接着,再重复上面的步骤,只是把61.148.*.*换成你允许的另一个IP地址了,也就是说除了这个IP什么都不变,再加一条映射。

就这样重复做,只到你把所有的你允许的IP都加完。

但是有一点要注意:自己本网络的外网IP这样加是无效的。当你把上面的所有的IP都加完以后,包括自己的网络在内以及其他的所有外网IP都不能访问你的WEB服务器了。如果自己要访问的话,那就还得加一条映射,跟上面一样,其他的都不变,只是把61.148.*.*这个IP换成你内网的网络号。
比如,我的内网IP是从192.168.0.2到192.168.0.223的,那么我就把那个IP地址换成:192.168.0.0/24然后其他什么都不变,就可以了。(注:这个不是回流,因为CHAIN里还是DSNAT,而不是SRNAT)

大致就是这么个意思了,不知道大家看不看的明白。如果是2.8版的,那么这些工作都是在DNAT里设置。

不过现在我还有个疑问,但还没经过测试。就是可不可以把所有允许的IP都写在一个映射里,每个IP之间用逗号隔开,而不用加那么多的映射,这个我自己还没试过,有机会再试,如果哪个朋友有兴趣,也可以先这样实一下,记得把结果回在帖子里,谢谢。
图里所显示的,就是我加的其中一个外网的,如果你有几个外网,就按照这个设置加几个就可以,唯一要改变的,就是图中SR.ADDRESS里把IP改一下就可以了

marcoluo 发表于 2005-11-13 16:41:06

你这个是转载吧....

jjml999 发表于 2006-6-27 11:26:57

回复 #2 marcoluo 的帖子

转的我的,还好意思加精华!

小雨奇缘 发表于 2006-6-27 13:58:36

不对吧, 外网是指你的ROS的外网IP吧 而不是访问者的IP吧

luzai 发表于 2006-6-27 17:38:00

哦。。。。。。。。。。。。
虽然了解,但是还是帮忙顶

xjalvin 发表于 2006-8-23 10:05:35

顶!!!!!!!!!!

芳草地 发表于 2006-8-23 16:49:05

在服务器端的防火墙做行不行呢?就是像WIN2003的有一项:允许访问的IP(填上就行了吧)

85538946 发表于 2006-11-30 06:38:19

我现在的心情真是难以言表,现在只能很感激很感激的说一声谢谢了!!!!

谢谢你。这位朋友。我终于把这个问题搞懂了。
页: [1]
查看完整版本: ROS2.9.2版IP限制访问设置(要求加精)