LINUX高级应用之IPTABLES 实例分析
来源:互联网 发布:傻瓜软件 编辑:程序博客网 时间:2024/05/21 14:14
#------------------------------- ACCEPT IP -------------------------------
iptables -F
#首先我们知道 -F 是清除的意思,所以第一条的作用就是把 FILTRE TABLE 的所有链的规则都清空
iptables -A INPUT -s 172.20.20.1/32 -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT
#在 FILTER TABLE 的 INPUT 链 匹配源地址是172.20.20.1的主机,状态分别是NEW,ESTABLISHED,RELATED 的都放行。
iptables -A INPUT -s 127.0.0.1/32 -m state --state NEW,ESTABLISHED -j ACCEPT
#这个也是同理,只不过是源地址发生了改变。
iptables -A INPUT -s 172.20.20.1/32 -m state --state NEW,ESTABLISHED -p tcp -m multiport --dport 123,110 -j ACCEPT
#我们发现多了几个选项,-p 指定协议,-m 指定模块,multiport模块的作用就是可以连续匹配多各不相邻的端口号。完整的意思就是源地址是172.20.20.1的主机,状态分别是NEW,ESTABLISHED,RELATED的,TCP协议,目的端口分别为123 和 110 的数据包都可以通过。
iptables -A INPUT -s 172.20.22.0/24 -m state --state NEW,ESTABLISHED -p tcp -m multiport --dport 123,110 -j ACCEPT
#这条语句也是一样的。
iptables -A INPUT -s 172.20.1.69/32 -m state --state NEW,ESTABLISHED -p tcp -m multiport --dport 123,110 -j ACCEPT
iptables -A INPUT -s 172.20.33.173/32 -m state --state NEW,ESTABLISHED -p tcp -m multiport --dport 123,110 -j ACCEPT
#iptables -A INPUT -s 172.20.1.249/32 -m state --state NEW,ESTABLISHED -p tcp -m multiport --dport 123,110 -j ACCEPT
iptables -A INPUT -s 172.18.185.88/25 -m state --state NEW,ESTABLISHED -p tcp -m multiport --dport 123,110 -j ACCEPT
iptables -A INPUT -s 172.18.218.88/32 -m state --state NEW,ESTABLISHED -p tcp -m multiport --dport 123,110 -j ACCEPT
iptables -A INPUT -s 172.18.205.88/32 -m state --state NEW,ESTABLISHED -p tcp -m multiport --dport 123,110 -j ACCEPT
#iptables -A INPUT -s 172.20.9.187 -m state --state NEW,ESTABLISHED -p tcp -m multiport --dport 1230,110 -j ACCEPT
#iptables -A INPUT -s 172.20.12.157 -m state --state NEW,ESTABLISHED -p tcp -m multiport --dport 1230,110 -j ACCEPT
#-------------------------------- DROP IP --------------------------------
#这里我要说一下默认策略的问题,默认策略通过 -P DROP 来指定,系统默认是ACCEPT。由于系统默认是放行,我为了达到限制的目的,所以就要在最后加上一条规则 DROP 掉没经过允许就访问我的123和110端口的人。
iptables -A INPUT -s 0/0 -m state --state NEW -p tcp -m multiport --dport 123,110 -j DROP
#这句意思为源地址是0/0的 NEW状态的的TCP数据包都禁止访问我的123和110端口。
#iptables -A INPUT -s ! 172.20.89.0/24 -m state --state NEW -p tcp -m multiport --dport 1230,110 -j DROP
#“!”号的意思 取反。就是除了172.20.89.0这个IP段的地址都DROP。
#-------------------------------NAT IP--------------------------------------
#以下操作是在 NAT TABLE 里面完成的。请大家注意。
#还有在 NAT TABLE 里面我门常做的动作有 SNAT 和 DNAT 分别叫源地址转换和目的地址转换。我们学校就是用SNAT来实现,提供我们学生访问户联网的共享。
iptables -t nat -F
iptables -t nat -A PREROUTING -d 192.168.102.55 -p tcp --dport 90 -j DNAT --to 172.20.11.1:800
#-A PREROUTING 指定在路由前做的。完整的意思是在 NAT TABLE 的路由前处理,目的地为192.168.102.55 的 目的端口为90的我们做DNAT处理,给他转向到172.20.11.1:800那里去。
iptables -t nat -A POSTROUTING -d 172.20.11.1 -j SNAT --to 192.168.102.55
#-A POSTROUTING 路由后。意思为在 NAT TABLE 的路由后处理,凡是目的地为 172.20.11.1 的,我们都给他做SNAT转换,把源地址改写成 192.168.102.55 。
#iptables -t nat -A PREROUTING -s 0/0 -p tcp --dport 9065 -j DNAT --to 172.20.77.252
#同理
#iptables -t nat -A POSTROUTING -s 0/0 -p tcp --dport 9065 -j SNAT --to 192.168.102.55
#同理
#iptables -t nat -A PREROUTING -s 172.20.23.1 -d 192.168.102.12 -p tcp --dport 25 -j DNAT --to 192.168.102.12:22
#同理
#------------------------------------------------------------------------
- LINUX高级应用之IPTABLES 实例分析
- LINUX高级应用之IPTABLES实例分析
- iptables高级应用实例
- iptables高级应用实例
- iptables高级应用实例(转)
- iptables应用实例
- iptables 实例分析
- iptables 实例分析
- Linux-Netfilter&iptables实现机制的分析及应用
- Linux-Netfilter&iptables实现机制的分析及应用
- linux iptables应用
- 嵌入式 iptables防火墙应用实例
- Netfilter的高级应用 Iptables功能扩展
- linux iptables 防火墙常用实例
- Linux笔记:iptables配置实例
- 【嵌入式Linux学习七步曲之第七篇 Linux的高级应用编程】Linux下的线程实现机制分析
- linux之iptables
- linux 命令之iptables
- 在Dell Mini 9小试了下Moblin系统
- 创建iptables NAT规则
- 经典推理题:《三个精灵》
- 关于可剥夺式进程调度方案,计算CPU利用率的题目
- 脑筋急转弯
- LINUX高级应用之IPTABLES 实例分析
- 试着推荐一本书,已经翻译为中文了,至于翻译的质量嘛,不清楚,我是看原版的不错。
- 学习使用 iptables
- C#winform中怎么将程序最小化到系统托盘
- JavaScript操作select下拉菜单全集合
- Linux环境下基于策略的路由
- Oracle的with子句的用法
- 电信,网通双线实战
- 基于策略路由的IP地址控制