iptables 操作
[TOC]
基本操作
查询表中规则
v:显示该表中的所有链n:禁止使用名称转换L:显示规则--line:显示规则在该链的行号
iptables -t 表名 -vnL --line规则管理
命令行参数
I:插入,A:追加,D:删除(可匹配),F:清空所有规则,t:操作的表,p:协议(tcp,udp,icmp等),i:网络接口,s:源地址,d:目的地址,sport:源端口,dport:目的端口,j:动作。
使用示例
# 接受源地址为 192.168.0.0/16,协议为 tcp,目的端口为 22 的数据包
iptables -I INPUT -t filter -p tcp --dport 22 -i eth0 -s 192.168.0.0/16 -j ACCEPT
# 拒绝目的地址为 192.168.0.0/16 的数据包
iptables -A OUTPUT -t filter -d 192.168.0.0/16 -j REJECT
# 删除 INPUT 链的第一条规则,删除匹配源地址为 192.168.0.0/16 的规则
iptables -D INPUT 1 -t filter ; iptables -D INPUT -s 192.168.0.0/16
# 清空 filter 表的所有规则
iptables -t filter -F
# 修改 OUTPUT 链的第一条规则为 DROP。注意:-d 192.168.0.0/16 不能省略
iptables -R OUTPUT 1 -t filter -d 192.168.0.0/16 -j DROP
# 设置 INPUT 的默认匹配规则为 DROP
iptables -P INPUT -t filter DROP
# 多地址
iptables -I INPUT -s 192.168.1.1,192.168.1.2 -j ACCEPT
# 多端口,可组合使用
# 连续端口
iptables -I INPUT -p tcp --dport 22:25 -j ACCEPT
# 非连续端口
iptables -I INPUT -p tcp -m multiport --dports 22,34,45 -j ACCEPTNAT 表
REJECT 动作
REJECT 动作icmp-net-unreachable,icmp-host-unreachable,icmp-port-unreachable,icmp-proto-unreachable,icmp-net-prohibited,icmp-host-prohibited,icmp-admin-prohibited。
默认动作为:icmp-port-unreachable。
NAT 使用
开启 Linux 核心转发
源地址 NAT
主要用于共享同一个外网 IP,修改源 IP 为外网 IP,达到访问互联网的目的。
目的地址 NAT
主要用于内网提供互联网服务,如 WEB,MySQL 等,同时起到隐藏 IP 的作用。
主机端口重定向
REDIRECT,主要用于本地主机端口转发。
自定义链
新建自定义链
自定义链添加规则
使用自定义链
重命名自定义链
删除自定义链
删除 INPUT 中引用的链
清空 WEB 链
删除自定义链
保存规则
常用模块
Last updated
Was this helpful?