这篇文章上次修改于 2170 天前,可能其部分内容已经发生变化,如有疑问可询问作者。 # iptables命令语法 > - 语法构成 iptables [-I 链名] [-t 表名] [-p 条件] [-j 控制类型] - 参数详解 -A:在链的末尾追加一条规则 -I:在链的开头(或指定序号)插入一条规则 -L:列出所有的规则条目 -n:以数字形式显示规则信息(协议解释成数字) -v:以更详细的方式显示规则信息 --line-numbers:查看规则时,显示规则的序号 -D:删除链内指定序号(或内容)的一条规则 -F:清空所有的规则 -P:为指定的链设置默认规则(一条没有匹配上,按照默认规则走) - 注意事项 不指定表名时,默认指filter表 不指定链名时,默认指定表内的所有链 除非设置链的默认策略,否则必须指定匹配条件 选项、链名、控制类型使用大写字母,其余均为小写 - 数据包的常见控制类型 ACCEPT:允许通过 DROP:直接丢弃,不给出任何回应 REJECT:拒绝通过,必要时会给出提示 LOG:记录日志信息,然后传给下一跳规则继续匹配 # 规则匹配 - 通用匹配(可直接使用,不依赖于其他条件或扩展) > 常见的通用匹配条件 协议匹配:-p 协议名 地址匹配:-s 源地址、-d 目的地址 接口匹配:-i 入站网卡、-o 出站网卡 - 隐含匹配(要求以特定的协议匹配作为前提) > 常见的通用匹配条件 端口匹配:--sport源端口、--dport目的端口 TCP标记匹配:--tcp-flags 检查范围 被设置的标记 ICMP类型匹配:--icmp-type ICMP类型 在iptables中 开启DNS服务端口 - 显式匹配(要求以"-m扩展模块”的形式明确指出类型) > 常见的通用匹配条件 多端口匹配:-m multiport --sports 源端口列表;-m multiport --dports 目的端口列表 IP范围匹配:-m iprange-src-range IP范围 MAC地址匹配:-m mac --mac-source MAC地址 状态匹配:-m state --state 连接状态 ### 开启HTTP端口: http=80 https=443 tomcat=8080 ``` /sbin/iptables -A INPUT -p tcp –source-port 80 -j ACCEPT /sbin/iptables -A INPUT -p tcp –source-port 443 -j ACCEPT /sbin/iptables -A INPUT -p tcp –source-port 8080 -j ACCEPT ``` ### 开启Email端口: stmp pop sendmail 等 ``` /sbin/iptables -A INPUT -p tcp –source-port 25 -j ACCEPT /sbin/iptables -A INPUT -p tcp –source-port 110 -j ACCEPT /sbin/iptables -A INPUT -p tcp –source-port 143 -j ACCEPT /sbin/iptables -A INPUT -p tcp –source-port 993 -j ACCEPT ```
没有评论