iptables
2016-01-27 20:50
267 查看
iptables
iptables的三个表
1.filter(类似ACL):系统预设,主要用于过滤数据包,内建三个链
INPUT:作用于进入本机的包
OUTPUT:作用于本机发出的包
FORWARD:作用于那些跟本机无关的包(即期望靠本系统转发的包)
2.nat:主要用处是地址转换,也有三个链
PREROUTING:更改包的目的地址
OUTPUT:更改本地(本机)产生的包的目的地址
POSTROUTING:更改包的源地址
3.mangle:主要用于给数据包打tag,然后根据标记去操作哪些包(类似Qos)
![](/e/u261/themes/default/images/spacer.gif)
![](http://s5.51cto.com/wyfs02/M02/7A/6E/wKioL1aovQOxlr8YAAD2BqXQiSI636.png)
-t:指定表名,默认为filter表
-nvL:使用ip形式查看详细的规则列表
--line-numbers:显示规则序号
-F:清除当前规则
-Z:重置数据包和流量的计数器
/etc/init.d/iptables save:保存规则
防火墙规则保存在/etc/sysconfig/iptables文件中
-A chain:增加一条规则
-D chain:删除一条规则
-I chain:插入一条规则
-p:指定协议,可以是 tcp, udp 或者 icmp
--dport:跟-p 一起使用,指定目标端口
--sport:跟-p 一起使用,指定源端口
-s :指定源 IP(可以是一个 ip 段)
-d:指定目的 IP(可以是一个 ip 段)
-j:后跟动作,其中 ACCEPT 表示允许包通过, DROP 表示丢弃包, REJECT 表示拒绝包
-i:指定进接口(不常用,但有时候能用到)
-o:指定出接口
-P chain:指定预设策略,DROP或ACCEPT(默认)
iptables -I INPUT -m iprange --src-range 61.4.176.0-61.4.191.255 -j DROP \\针对一个地址范围
iptables -I INPUT -p icmp --icmp-type 8 -j DROP \\丢弃echo-request报文
nat表的应用
------------案例:使用同一个公网IP上网-----------
[root@localhost ~]# echo "1" > /proc/sys/net/ipv4/ip_forward //启用路由转发功能,默认是0
[root@localhost ~]# iptables -t nat -A POSTROUTING -s 192.168.1.0/24 -o eth0 -j MASQUERADE //设置SNAT策略
MASQUERADE参数的作用:使用该接口的地址作为包的源地址;主要使用在动态获取公网地址的环境
[root@localhost ~]# iptables -t nat -A POSTROUTING -s 192.168.1.4 -o eth0 -j SNAT --to 10.11.11.11 //使用指定地址替换源地址
------------案例:隐藏实际服务器地址-----------
[root@localhost ~]# sysctl -w net.ipv4.ip_forward=1 //启用路由转发功能,默认是0
[root@localhost ~]# iptables -t nat -A PREROUTING -d 114.21.35.66 -p tcp --dport 80 -i eth0 -j DNAT --to 192.168.1.4:8080 //使用指定地址替换目的地址和端口
保存以及备份iptables规则
service iptables save //保存iptables规则
service iptables stop //停止iptables时会清除iptables规则,与iptables -F不同的是它还会重置预设策略为ACCEPT
iptables-save[-t table]>filename //备份iptables规则
iptables-restore[-t table]<filename //还原iptables规则
iptables的三个表
1.filter(类似ACL):系统预设,主要用于过滤数据包,内建三个链
INPUT:作用于进入本机的包
OUTPUT:作用于本机发出的包
FORWARD:作用于那些跟本机无关的包(即期望靠本系统转发的包)
2.nat:主要用处是地址转换,也有三个链
PREROUTING:更改包的目的地址
OUTPUT:更改本地(本机)产生的包的目的地址
POSTROUTING:更改包的源地址
3.mangle:主要用于给数据包打tag,然后根据标记去操作哪些包(类似Qos)
![](/e/u261/themes/default/images/spacer.gif)
![](http://s5.51cto.com/wyfs02/M02/7A/6E/wKioL1aovQOxlr8YAAD2BqXQiSI636.png)
-t:指定表名,默认为filter表
-nvL:使用ip形式查看详细的规则列表
--line-numbers:显示规则序号
-F:清除当前规则
-Z:重置数据包和流量的计数器
/etc/init.d/iptables save:保存规则
防火墙规则保存在/etc/sysconfig/iptables文件中
-A chain:增加一条规则
-D chain:删除一条规则
-I chain:插入一条规则
-p:指定协议,可以是 tcp, udp 或者 icmp
--dport:跟-p 一起使用,指定目标端口
--sport:跟-p 一起使用,指定源端口
-s :指定源 IP(可以是一个 ip 段)
-d:指定目的 IP(可以是一个 ip 段)
-j:后跟动作,其中 ACCEPT 表示允许包通过, DROP 表示丢弃包, REJECT 表示拒绝包
-i:指定进接口(不常用,但有时候能用到)
-o:指定出接口
-P chain:指定预设策略,DROP或ACCEPT(默认)
iptables -I INPUT -m iprange --src-range 61.4.176.0-61.4.191.255 -j DROP \\针对一个地址范围
iptables -I INPUT -p icmp --icmp-type 8 -j DROP \\丢弃echo-request报文
nat表的应用
------------案例:使用同一个公网IP上网-----------
[root@localhost ~]# echo "1" > /proc/sys/net/ipv4/ip_forward //启用路由转发功能,默认是0
[root@localhost ~]# iptables -t nat -A POSTROUTING -s 192.168.1.0/24 -o eth0 -j MASQUERADE //设置SNAT策略
MASQUERADE参数的作用:使用该接口的地址作为包的源地址;主要使用在动态获取公网地址的环境
[root@localhost ~]# iptables -t nat -A POSTROUTING -s 192.168.1.4 -o eth0 -j SNAT --to 10.11.11.11 //使用指定地址替换源地址
------------案例:隐藏实际服务器地址-----------
[root@localhost ~]# sysctl -w net.ipv4.ip_forward=1 //启用路由转发功能,默认是0
[root@localhost ~]# iptables -t nat -A PREROUTING -d 114.21.35.66 -p tcp --dport 80 -i eth0 -j DNAT --to 192.168.1.4:8080 //使用指定地址替换目的地址和端口
保存以及备份iptables规则
service iptables save //保存iptables规则
service iptables stop //停止iptables时会清除iptables规则,与iptables -F不同的是它还会重置预设策略为ACCEPT
iptables-save[-t table]>filename //备份iptables规则
iptables-restore[-t table]<filename //还原iptables规则
相关文章推荐
- jQuery plugin items filter
- Linux下主机充当防火墙的巧妙应用之iptables
- 系统管理员需知的 16 个 iptables 使用技巧
- 全国哀悼日网站页面变成灰色的filter方法
- 用css filter做鼠标滑过图片效果
- ASP 使用Filter函数来检索数组的实现代码
- ASP.NET MVC:Filter和Action的执行介绍
- JSP Filter的应用方法
- PHP中实现Bloom Filter算法
- Jquery find与filter函数区别 说明
- iptables做策略屏蔽QQ与MSN
- Nginx+iptables屏蔽访问Web页面过于频繁的IP(防DDOS,恶意访问,采集器)
- Shell脚本实现监控iptables规则是否被修改
- 修改iptables防火墙规则解决vsftp登录后不显示文件目录的问题
- Event filter with query SELECT * FROM __InstanceModificationEvent WITHIN
- PHP内置过滤器FILTER使用实例
- 一键配置CentOS iptables防火墙的Shell脚本分享
- PHP中filter函数校验数据的方法详解
- javascipt:filter过滤介绍及使用
- 浅析AngularJS Filter用法