Linux下iptables 禁止端口和开放端口

下面的代码如果出现权限问题,就在代码的最前面加上 sudo 赋予权限就可以解决了。

一。端口的开启。

     iptables -A INPUT -p tcp --dport 80 -j ACCEPT

     iptables -A OUTPUT -p tcp --sport 80 -j ACCEPT

     -A:参数就看成是添加一条 INPUT(OUTPUT) 的规则;
     -p:指定是什么协议 我们常用的tcp(udp)协议。 例如:53端口的DNS到时我们要配置DNS用到53端口,大家就会发现使用udp协议的;

    --dport:就是目标端口,当数据从外部进入服务器为目标端口;
    --sport:数据从服务器出去 则为数据源端口;

   -j 就是指定是 ACCEPT 接收 或者 DROP 不接收。

 上面这两行代码是开启 80 端口。

二。端口的关闭。

     iptables -A INPUT -p tcp --dport 80 -j DROP

     iptables -A OUTPUT -p tcp --sport 80 -j DROP

这样就关闭了 80 端口。

三。查看端口命令。

    iptables -L -n    用来查看 iptables 规则。也就是开启的端口等。

四。删除 iptables 规则。

   iptables -L -n --line-numbers   查看规则 前面加上序号。

   iptables -D INPUT [ 序号]  通过上面查看得到的序号,通过序号进行删除 iptables 规则。

五。规则的保存。

     配置完成后是需要保存的。这时就需要 root 权限。sudo 权限已经不够了。设置好后。输入代码:

     iptables-save > /etc/iptables-rules

     ip6tables-save > /etc/ip6tables-rules

    我们需要编辑 /etc/network/interfaces 文件,在最后插入下面两行:

    pre-up iptables-restore < /etc/iptables-rules

    pre-up ip6tables-restore < /etc/ip6tables-rules

重启电脑后。使用   sudo iptables -L     查看配置是否生效。

六。说明:一般的电脑都安装了 iptables(防火墙)。所以就可以通过上面的方法进行端口的开放。如果没有安装防火墙的电脑,就不需要开启端口。因为没有安装 iptables 的电脑。端口是可以直接访问的。

相关推荐