Linux

关注公众号 jb51net

关闭
首页 > 网站技巧 > 服务器 > Linux > Linux之iptables命令用法

Linux之iptables命令用法解读

作者:minh_coo

文章概述了Linux下的netfilter框架与iptables工具,二者协同实现包过滤防火墙,详解四表五链结构、规则配置命令及常用场景,强调规则顺序、匹配条件、方向性考虑和默认策略设置(如白名单采用ACCEPT而非DROP)的重要性

一、netfilter/iptables

二者组成Linux下的包过滤防火墙。

二、四表五链

1、规则表

2、规则链

三、规则配置

1、命令格式

iptables [-t table] command chain parameter target

table:指定操作的表,默认filter表

command:操作的命令

chain:规则链(INPUT、OUTPUT、FORWARD…)

parameter:匹配规则

示例:
iptables -t filter -I OUTPUT -s 192.168.1.111 -p tcp -m tcp --dports 22:25 -j DROP

target:处理数据包的方式

四、常用规则示例

1、规则保存

service iptables save

若不保存,待服务器重启时会恢复原先状态。

2、查看规则(带编号)

iptables -L -n --line-number

3、删除OUTPUT第一条规则

iptables -D OUTPUT 1

4、拒绝进入防火墙的所有ICMP协议数据包

iptables -I INPUT -P icmp -j REJECT

5、限制udp53端口只进不出

iptables -I OUTPUT -p udp --dport 53 -j REJECT

6、获取域名服务端口号

grep domain /etc/services

五、注意点

1、规则顺序

若报文已被前面的规则匹配,则会直接执行对应的操作,即使后续规则也能匹配,但不会再执行。

2、匹配条件

若一条规则中有多个匹配条件,则需同时满足所有匹配条件,报文才能被匹配,即"与"的关系。

3、将更容易被匹配的规则放在前面

在没有顺序要求的情况下,不同类别的规则,被匹配次数多、匹配频率高的规则应放在前面。

4、当IPTABLES所在主机作为网络防火 墙时,在配置规则时,应着重考虑方向性,双向都要考虑,从外到内,从内到外。

5、在配置IPTABLES白名单时,往往会将链的默认策略设置为ACCEPT,通过在链的最后设置REJECT规则实现白名单机制,而不是将链的默认策略设置为DROP,如果将链的默认策略设置为DROP,当链中的规则被清空时,管理员的请求也将会被DROP掉。

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

您可能感兴趣的文章:
阅读全文