使用iptables允许与特定IP之间的通信


25

我想允许所有流量使用iptables到特定的ip。

尝试通过添加行:

/sbin/iptables -A INPUT -p tcp -s XXX.XXX.XXX.XXX -j ACCEPT
/sbin/iptables -A OUTPUT -p tcp -s  XXX.XXX.XXX.XXX -j ACCEPT

...但是仍然无法访问远程IP(XXX.XXX.XXX.XXX)。

有什么建议吗?

在adv中tnx!

编辑:根据您的建议,我更改了iptables。仍然我无法连接到远程服务器。iptables状态看起来像这样:

[root@myserver ~]# /etc/init.d/iptables status
Table: nat
Chain PREROUTING (policy ACCEPT)
num  target     prot opt source               destination         

Chain POSTROUTING (policy ACCEPT)
num  target     prot opt source               destination         

Chain OUTPUT (policy ACCEPT)
num  target     prot opt source               destination         

Table: mangle
Chain PREROUTING (policy ACCEPT)
num  target     prot opt source               destination         

Chain INPUT (policy ACCEPT)
num  target     prot opt source               destination         

Chain FORWARD (policy ACCEPT)
num  target     prot opt source               destination         

Chain OUTPUT (policy ACCEPT)
num  target     prot opt source               destination         

Chain POSTROUTING (policy ACCEPT)
num  target     prot opt source               destination         

Table: filter
Chain INPUT (policy DROP)
num  target     prot opt source               destination         
1    ACCEPT     all  --  0.0.0.0/0            0.0.0.0/0           state RELATED,ESTABLISHED 
2    REJECT     tcp  --  0.0.0.0/0            0.0.0.0/0           tcp flags:!0x17/0x02 reject-with tcp-reset 
3    DROP       all  --  0.0.0.0/0            0.0.0.0/0           state INVALID 
4    ACCEPT     all  --  0.0.0.0/0            0.0.0.0/0           
5    DROP       tcp  --  0.0.0.0/0            0.0.0.0/0           tcp dpts:1024:65535 
6    DROP       tcp  --  0.0.0.0/0            0.0.0.0/0           tcp dpt:8443 
7    ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0           tcp dpt:3718 
8    ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0           tcp dpt:88 
9    ACCEPT     udp  --  0.0.0.0/0            0.0.0.0/0           udp dpt:88 
10   ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0           tcp dpt:8080 
11   ACCEPT     udp  --  0.0.0.0/0            0.0.0.0/0           udp dpt:8080 
12   ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0           tcp dpt:873 
13   ACCEPT     udp  --  0.0.0.0/0            0.0.0.0/0           udp dpt:873 
14   ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0           tcp dpt:8880 
15   ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0           tcp dpt:80 
16   ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0           tcp dpt:443 
17   ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0           tcp dpt:21 
18   ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0           tcp dpt:20 
19   ACCEPT     tcp  --  XXX.XXX.XXX.XXX      0.0.0.0/0           
20   ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0           tcp dpt:22 
21   ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0           tcp dpt:587 
22   ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0           tcp dpt:25 
23   ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0           tcp dpt:465 
24   ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0           tcp dpt:110 
25   ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0           tcp dpt:995 
26   DROP       tcp  --  0.0.0.0/0            0.0.0.0/0           tcp dpt:143 
27   DROP       tcp  --  0.0.0.0/0            0.0.0.0/0           tcp dpt:993 
28   ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0           tcp dpt:106 
29   ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0           tcp dpt:3306 
30   DROP       tcp  --  0.0.0.0/0            0.0.0.0/0           tcp dpt:5432 
31   DROP       tcp  --  0.0.0.0/0            0.0.0.0/0           tcp dpt:9008 
32   DROP       tcp  --  0.0.0.0/0            0.0.0.0/0           tcp dpt:9080 
33   DROP       udp  --  0.0.0.0/0            0.0.0.0/0           udp dpt:137 
34   DROP       udp  --  0.0.0.0/0            0.0.0.0/0           udp dpt:138 
35   DROP       tcp  --  0.0.0.0/0            0.0.0.0/0           tcp dpt:139 
36   DROP       tcp  --  0.0.0.0/0            0.0.0.0/0           tcp dpt:445 
37   ACCEPT     udp  --  0.0.0.0/0            0.0.0.0/0           udp dpt:1194 
38   ACCEPT     udp  --  0.0.0.0/0            0.0.0.0/0           udp dpt:53 
39   ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0           tcp dpt:53 
40   ACCEPT     icmp --  207.250.234.40       0.0.0.0/0           icmp type 8 code 0 
41   DROP       icmp --  0.0.0.0/0            0.0.0.0/0           icmp type 8 code 0 
42   DROP       all  --  0.0.0.0/0            0.0.0.0/0           

Chain FORWARD (policy DROP)
num  target     prot opt source               destination         
1    ACCEPT     all  --  0.0.0.0/0            0.0.0.0/0           state RELATED,ESTABLISHED 
2    REJECT     tcp  --  0.0.0.0/0            0.0.0.0/0           tcp flags:!0x17/0x02 reject-with tcp-reset 
3    DROP       all  --  0.0.0.0/0            0.0.0.0/0           state INVALID 
4    ACCEPT     all  --  0.0.0.0/0            0.0.0.0/0           
5    DROP       tcp  --  0.0.0.0/0            0.0.0.0/0           tcp dpt:8443 
6    ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0           tcp dpt:3718 
7    ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0           tcp dpt:88 
8    ACCEPT     udp  --  0.0.0.0/0            0.0.0.0/0           udp dpt:88 
9    ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0           tcp dpt:8080 
10   ACCEPT     udp  --  0.0.0.0/0            0.0.0.0/0           udp dpt:8080 
11   ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0           tcp dpt:873 
12   ACCEPT     udp  --  0.0.0.0/0            0.0.0.0/0           udp dpt:873 
13   DROP       all  --  0.0.0.0/0            0.0.0.0/0           

Chain OUTPUT (policy DROP)
num  target     prot opt source               destination         
1    ACCEPT     all  --  0.0.0.0/0            0.0.0.0/0           state RELATED,ESTABLISHED 
2    REJECT     tcp  --  0.0.0.0/0            0.0.0.0/0           tcp flags:!0x17/0x02 reject-with tcp-reset 
3    DROP       all  --  0.0.0.0/0            0.0.0.0/0           state INVALID 
4    ACCEPT     all  --  0.0.0.0/0            0.0.0.0/0           
5    DROP       tcp  --  0.0.0.0/0            0.0.0.0/0           tcp dpts:1024:65535 
6    DROP       tcp  --  0.0.0.0/0            0.0.0.0/0           tcp dpt:8443 
7    ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0           tcp dpt:3718 
8    ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0           tcp dpt:21 
9    ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0           tcp dpt:20 
10   ACCEPT     tcp  --  0.0.0.0/0            XXX.XXX.XXX.XXX      
11   ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0           tcp dpt:88 
12   ACCEPT     udp  --  0.0.0.0/0            0.0.0.0/0           udp dpt:88 
13   ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0           tcp dpt:8080 
14   ACCEPT     udp  --  0.0.0.0/0            0.0.0.0/0           udp dpt:8080 
15   ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0           tcp dpt:873 
16   ACCEPT     udp  --  0.0.0.0/0            0.0.0.0/0           udp dpt:873 
17   ACCEPT     all  --  0.0.0.0/0            0.0.0.0/0           

[root@myserver ~]# 

我认为,如果您完全停止IPtables服务,则可以连接到该站点,对吗?
David Z

请回应,如果是一个很好的回应@ user48058
丹尼尔·迪亚斯

Answers:


33

我认为您需要将-s标志之一更改为-d标志。如果您的XXX.XXX.XXX.XXX地址位于防火墙之外,则应该为

/sbin/iptables -A INPUT -p tcp -s XXX.XXX.XXX.XXX -j ACCEPT
/sbin/iptables -A OUTPUT -p tcp -d  XXX.XXX.XXX.XXX -j ACCEPT

否则,反过来

编辑:

并刷新iptables:

根据您的配置:

/etc/init.d/iptables restart  

/etc/init.d/networking restart  

/etc/init.d/firewall restart

iptables是否需要重启服务?在我的情况下(Ubuntu的19.04),它不需要,只是做iptables -A和规则生效
transang


10

-A追加。这会将规则添加到规则列表的末尾,因此传入的连接可能会被列表中较高的规则删除。

为了确保接受到IP地址的所有连接,将其更改-A-I将规则插入列表顶部:

iptables -I INPUT -p tcp -s XXX.XXX.XXX.XXX -j ACCEPT
iptables -I OUTPUT -p tcp -d  XXX.XXX.XXX.XXX -j ACCEPT`

2

规则集的其余部分是什么样的? -A追加,因此如果您在执行此操作之前在列表的末尾有一个-p tcp -s xxx.xxx.xxx.xxx -j REJECT或(更有可能)-j REJECT,那将毫无用处。


仍然无法正常工作,请您检查我的iptables状态,我已经编辑了我的主要帖子。在adv中转为tnx!
user48058

您到底为什么在输入和输出中删除“ tcp dpts:1024:65535”?我敢肯定,这就是问题的根源。您可以通过查看点击次数(iptables -L -n -v)来验证这一点,执行不起作用的操作,然后再次查看点击次数。
Bill Weiss,2010年

向上移动-p tcp -s XXX.XXX.XXX.XXX -j ACCEPT,然后重试。尝试/sbin/iptables -I INPUT 1 -p tcp -s XXX.XXX.XXX.XXX -j ACCEPT/sbin/iptables -I OUTPUT 1 -p tcp -s XXX.XXX.XXX.XXX -j ACCEPT
比尔·韦斯

为什么在输入和输出中输入“ tcp dpts:1024:65535”?我敢打赌,这就是您问题的根源。
网络赛跑者
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.