案列:只针对filter表,预设策略INPUT链DROP,其他两个链ACCEPT,然后针对192.168.188.0/24开通22端口,对所有网段开放80端口,对所有网段开放21端口。
脚本内容:
#! /bin/bash
ipt="/usr/sbin/iptables" //命令的绝对路径,防止因为环境变量的问题导致命令无法执行
$ipt -F //清空规则
$ipt -P INPUT DROP //默认策略
$ipt -P OUTPUT ACCEPT
$ipt -P FORWARD ACCEPT
$ipt -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT //目的是为了让通信更加顺利
$ipt -A INPUT -s 192.168.133.0/24 -p tcp --dport 22 -j ACCEPT
$ipt -A INPUT -p tcp --dport 80 -j ACCEPT
$ipt -A INPUT -p tcp --dport 21 -j ACCEPT
icmp示例,这里–icmp-type选项要跟-p icmp一起使用,后面指定类型编号。这个8指的是能在本机ping通其他机器,而其他机器不能ping通本机 iptables -I INPUT -p icmp –icmp-type 8 -j DROP
nat表应用 A机器两块网卡ens37(192.168.202.129)、ens33(192.168.100.1),ens37可以上外网,ens33仅仅是内部网络,B机器只有ens33(192.168.100.100),和A机器ens33可以通信互联。 需求1:可以让B机器连接外网
添加自定义名字
A和B都选择LAN区段
需求2:C机器只能和A通信,让C机器可以直接连通B机器的22端口
扩展 1. iptables应用在一个网段 http://www.aminglinux.com/bbs/thread-177-1-1.html 2. sant,dnat,masquerade http://www.aminglinux.com/bbs/thread-7255-1-1.html 3. iptables限制syn速率 http://www.aminglinux.com/bbs/thread-985-1-1.html http://jamyy.us.to/blog/2006/03/206.html