iptables命令格式
#iptables [-t表] -命令 匹配 操作
1.表选项
表选项用于指定命令应用于哪个iptables内置
表,iptables内置包括filter表、nat表和mangle表。
2.命令选项
命令 说明
-P或--policy <链名> 定义默认策略
-L或--list <链名> 查看iptables规则列表
-A或—append <链名> 在规则列表的最后增加1条规则
-I或--insert <链名> 在指定的位置插入1条规则
-D或--delete <链名> 从规则列表中删除1条规则
-R或--replace <链名> 替换规则列表中的某条规则
-F或--flush <链名> 删除表中所有规则
-Z或--zero <链名> 将表中数据包计数器和流量计数器归零
3.匹配选项
匹配 说明
-i或--in-interface <网络接口名> //指定数据包从哪个网络接口进入,如ppp0、eth0和eth1等
-o或--out-interface <网络接口名>//指定数据包从哪块网络接口输出,如ppp0、eth0和eth1等
-p或---proto协议类型 // 指定数据包匹配的协议,如TCP、UDP和ICMP等
-s或--source <源地址或子网>//指定数据包匹配的源地址
--sport <源端口号> //指定数据包匹配的源端口号,可以使用“起始端口号:结束端口号”的格式指定一个范围的端口
-d或--destination <目标地址或子网> //指定数据包匹配的目标地址
--dport目标端口号 //指定数据包匹配的目标端口号,可以使用“起始端口号:结束端口号”的格式指定一个范围的端口
4.动作选项
动作 说明
ACCEPT 接受数据包
DROP 丢弃数据包
REDIRECT 将数据包重新转向到本机或另一台主机的某个端口,通常用功能实现透明代理或对外开放内网某些服务
SNAT 源地址转换,即改变数据包的源地址
DNAT 目标地址转换,即改变数据包的目的地址
MASQUERADE IP伪装,即是常说的NAT技术,MASQUERADE只能用于ADSL等拨号上网的IP伪装,也就是主机的IP是由ISP分配动态的;如果主机的IP地址是静态固定的,就要使用SNAT
LOG 日志功能,将符合规则的数据包的相关信息记录在日志中,以便管理员的分析和排错
iptables技巧实例
1、禁止客户机访问不健康网站
【例1】添加iptables规则禁止用户访问域名为www.playboy.com的网站,然后查看filter表的FORWARD链规则列表。
-命令 匹配 操作
#iptables -I FORWARD -d www.playboy.com -j DROP
#iptables -t filter -L FORWARD
【例2】添加iptables规则禁止用户访问IP地址为202.17.61.4的网站,然后查看filter表的FORWARD链规则列表。
-命令 匹配 操作
#iptables -I FORWARD -d 202.17.61.4 -j DROP
#iptables -t filter -L FORWARD
2、禁止某些客户机上网
【例1】添加iptables规则禁止IP地址为192.168.1.200的客户机上网,然后查看filter表的FORWARD链规则列表。
-命令 匹配 操作
#iptables -A FORWARD -s 192.168.1.200 -j DROP
#iptables -t filter -L FORWARD
【例2】添加iptables规则禁止192.168.2.0子网里所有的客户机上网,然后查看filter表的FORWARD链规则列表。
-命令 匹配 操作
#iptables -I FORWARD -s 192.168.2.0/24 -j DROP
#iptables -t filter -L FORWARD
3、禁止客户机访问某些服务
【例1】禁止192.168.1.0子网里所有的客户机使用FTP协议下载(即封闭TCP协议的21端口),然后查看filter表的FORWARD链规则列表。
#iptables -I FORWARD -s 192.168.1.0/24 -p tcp --dport 21 -j DROP
#iptables -t filter -L FORWARD
【例2】禁止192.168.1.0子网里所有的客户机使用Telnet协议连接远程计算机(即封闭TCP协议的23端口),然后查看filter表的FORWARD链规则列表。
#iptables -I FORWARD -s 192.168.1.0/24 -p tcp --dport 23 -j DROP
#iptables -t filter -L FORWARD
4、强制访问指定的站点
【例】强制所有的客户机访问210.21.118.68这台Web服务器,然后查看nat表的PREROUTING链规则列表。
表 -命令 匹配
#iptables -t nat -I PREROUTING -i eth0 -p tcp --dport 80 操作(转换)
-j DNAT --to 210.21.118.68:80
#iptables -t nat -L PREROUTING
5、禁止客户机使用QQ
#iptables -I FORWARD -p tcp --dport 8000 -j DROP
#iptables -I FORWARD -p udp --dport 8000 -j DROP
#iptables -I FORWARD -d tcpconn.tencent.com -j DROP
#iptables -I FORWARD -d tcpconn2.tencent.com -j DROP
#iptables -I FORWARD -d tcpconn3.tencent.com -j DROP
#iptables -I FORWARD -d tcpconn4.tencent.com -j DROP
#iptables -I FORWARD -d http.tencent.com -j DROP
#iptables -I FORWARD -d http2.tencent.com -j DROP
6、禁止使用ICMP协议
【例】禁止Internet上的计算机通过ICMP协议ping到NAT服务器的ppp0接口,但允许内网的客户机通过ICMP协议ping的计算机,然后查看filter表的INPUT链规则列表。
#iptables -I INPUT -i ppp0 -p icmp -j DROP
#iptables -t filter -L INPUT
7、发布内部网络服务器
【例1】发布内网192.168.16.200主机的Web服务,Internet用户通过访问ppp0的IP地址即可访问该主机的Web服务。
#iptables -t nat -I PREROUTING -i ppp0 -p tcp --dport 80 -j DNAT --to-destination 192.168.16.200:80
#iptables -t nat -L PREROUTING
【例2】发布内网192.168.16.100主机的终端服务(使用的是TCP协议的3389端口),Internet用户通过访问ppp0的IP地址访问该机的终端服务。
#iptables -t nat -I PREROUTING -i ppp0 -p tcp --dport 3389 -j DNAT --to-destination 192.168.1.100:3389
#iptables -t nat -L PREROUTING
8、智能DNS服务
【例】将所有从eth0接口进入的DNS请求都发送到IP地址为61.144.56.101这台服务器解析,然后查看nat表的PREROUTING链规则列表。
#iptables -t nat -I PREROUTING -i eth0 -p udp --dport 53 -j DNAT --to-destination 61.144.56.101:53
#iptables -t nat -I PREROUTING -i eth0 -p tcp --dport 53 -j DNAT --to-destination 61.144.56.101:53
#iptables -t nat -L PREROUTING
要把这些修改,改写/etc/sysconfig/iptables
再service iptables restart.
分享到:
相关推荐
1. 打开ip包转发功能 echo 1 > /proc/sys/...2. 在NAT/防火墙计算机上的NAT表中添加目的地址转换规则: iptables -t nat -I PREROUTING -i eth0 -p tcp --dport 80 -j DNAT --to-destination 202.96.134.130:80
iptables 命令的基本用法是使用以下格式:`iptables [-t table] [-A chain] [-p protocol] [-s source] [-d destination] [-j target]` 其中,`-t` 选项指定要操作的表,`-A` 选项指定要添加的链,`-p` 选项指定...
iptables 的基本命令格式为:iptables [-t table] [-A|-D|-C|-I|-L|-F|-Z|-N|-X|-E|-P] [chain] [options]。 其中,-t 选项指定要操作的表,-A 选项追加规则,-D 选项删除规则,-C 选项修改规则,-I 选项插入规则,...
iptables命令框架结构图 iptables命令框架结构图 iptables命令框架结构图
iptables,linux防火墙常用的命令,很不错哦
iptyables 基本命令规则简介 iptables 是基于内核的防火墙,功能非常强大,iptables 内置了 filter,nat 和 mangle 三张表。filter 负责过滤数据包,包括的规则链有,input,output 和 forward;nat 则涉及到网络...
iptables命令的基本格式如下: ```bash iptables [选项] [表名] [链路] [匹配条件] [动作] ``` - **表名**:如 `-t filter` 指定使用 `filter` 表。 - **链路**:如 `INPUT` 或 `OUTPUT`。 - **匹配条件**:如 `-p...
常用的iptables命令 一看就懂。常用的iptables命令常用的iptables命令常用的iptables命令
文档包含了iptables命令使用的一些例子,如NAT、端口重定向、访问控制等
IPtables命令详解.txt
iptables简单使用说明,iptables简介,iptables相关表的介绍
iptables命令详解.docx
iptables 命令注解 命令的基本格式
这是我自己整理的iptables文档,在此提供仅供用来参考参考!
iptables命令全参数大全.doc
iptables语法命令汇总,包括添加、查看、删除、插入、清除语法
iptables 的日常用语,iptables的简单语法
iptables详解(二)(和另一篇 iptables命令详解 结合起来看