iptables INPUT 防止外发邮件和 ping

Men*_*nno 1 iptables

我的标准政策INPUT设置为DROP.

但是,由于此设置,我无法连接到外部邮件主机。我需要什么规则才能连接到这个外部主机。

请注意,这ping也不起作用,尽管这仅用于测试目的(它不需要起作用,但可能有助于找到根本问题)。\

编辑

[root@webshop ~]# iptables -L -v -n
Chain INPUT (policy DROP 150 packets, 18963 bytes)
 pkts bytes target     prot opt in     out     source               destination
 378K  178M ACCEPT     all  --  *      *       xxxxxxxxxxxxx        0.0.0.0/0
    0     0 DROP       tcp  --  *      *       0.0.0.0/0            0.0.0.0/0           tcp dpt:56988 state NEW recent: UPDATE seconds: 60 hit_count: 4 name: DEFAULT side: source
    0     0 ACCEPT     tcp  --  *      *       0.0.0.0/0            0.0.0.0/0           tcp dpt:56988
  628 42832 ACCEPT     tcp  --  *      *       0.0.0.0/0            0.0.0.0/0           multiport dports 8080,8181
 7682  765K ACCEPT     all  --  lo     *       0.0.0.0/0            0.0.0.0/0

Chain FORWARD (policy DROP 0 packets, 0 bytes)
 pkts bytes target     prot opt in     out     source               destination
    0     0 ACCEPT     tcp  --  *      *       0.0.0.0/0            0.0.0.0/0           multiport dports 8080,8181

Chain OUTPUT (policy ACCEPT 933 packets, 616K bytes)
 pkts bytes target     prot opt in     out     source               destination
Run Code Online (Sandbox Code Playgroud)

Lek*_*eyn 5

通信有两个方向,您将查询发送到另一台主机(通过 OUTPUT),另一台主机响应(到 INPUT)。您当前的规则会导致所有响应都被删除。尝试添加以下规则以接受这些响应:

-A INPUT -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
Run Code Online (Sandbox Code Playgroud)

如果没有此规则,TCP ACK 数据包、ICMP 回声回复等将被丢弃,因为您没有规则允许它们。