iptables脚本

echo "firewall start! let us go!"    弹出  防火墙开启  冲啊
echo 1 > /proc/sys/net/ipv4/ip_forward  写入 /proc/sys/net/ipv4/ip_forward 值为1
echo 1 > /proc/sys/net/ipv4/ip_dynaddr  写入  /proc/sys/net/ipv4/ip_dynaddr 值为1
echo 0 > /proc/sys/net/ipv4/tcp_ecn    写入  /proc/sys/net/ipv4/tcp_ecn  值为0
echo 1 > /proc/sys/net/ipv4/tcp_syncookies   写入 /proc/sys/net/ipv4/tcp_syncookies  值为1
echo 1 > /proc/sys/net/ipv4/icmp_echo_ignore_broadcasts  写入/proc/sys/net/ipv4/icmp_echo_ignore_broadcasts  值为1

#
/sbin/modprobe ip_tables
/sbin/modprobe iptable_nat
/sbin/modprobe iptable_filter
/sbin/modprobe ip_conntrack
/sbin/modprobe ip_conntrack_ftp
/sbin/modprobe ip_nat_ftp
/sbin/modprobe ipt_MASQUERADE
/sbin/modprobe ipt_state
/sbin/modprobe ipt_multiport

#
/sbin/iptables -F  删除规则
/sbin/iptables -t nat -F 删除 nat中的规则

#
/sbin/iptables -Z       清零   filter表
/sbin/iptables -t nat -Z  清零 nat表

#
#/sbin/iptables -P INPUT DROP   INPUT默认规则 改为DROP
#/sbin/iptables -P FORWARD DROP FORWARD 默认规则 改为 DROP
#/sbin/iptables -P OUTPUT DROP  OUTPUT 默认规则 改为DROP

#
/sbin/iptables -A INPUT -i lo -j ACCEPT  在最后添加一条规则 INPUT链  通过lo端口的 接受
/sbin/iptables -A OUTPUT -o lo -j ACCEPT 在最后添加一条规则 OUTPUT链 通过lo端口的 接受

#
/sbin/iptables -A OUTPUT -o eth1 -p tcp -m state --state ESTABLISHED,NEW,RELATED -j ACCEPT
           在最后添加一条规则  通过端口eth1 协议tcp的,状态为 ESTABLISHED,NEW,RELATED的 接受
#
/sbin/iptables -A OUTPUT -o eth0 -d $PRIV -j ACCEPT
  在最后添加一条规则   OUTPUT链 中  通过eth0口,目标为 $PRIV 的 接受
#
/sbin/iptables -A INUPUT -i eth0 -p tcp -s $PRIV -j ACCEPT
      在最后添加一条规则 INPUT链 中 通过eth0端口的 协议tcp的 源为 $PRIV 接受
#
iptables -A INPUT -i eth1 -p tcp -m state --state ESTABLISHED,RELATED -j ACCEPT
   在最后添加一条规则  通过eth1口的 协议为tcp的 状态为 ESTABLISHED,RELATED的 接受
#
/sbin/iptables -A INPUT -p icmp --icmp-tye echo-request -m limit --limit 1/s --limit-burst 10 -j ACCEPT
                 在最后添加一条规则  协议为icmp 类型为 echo-request    封包 1秒发送1个 容器容量为10  接受
/sbin/iptables -A OUTPUT -p icmp --icmp-type echo-reply -j ACCEPT
  在最后添加一条规则    协议为icmp 类型为  echo-reply  接受
#
/sbin/iptables -A OUTPUT --dport 53 -j ACCEPT
        在最后添加一条规则  目标端口为 DNS的接受
/sbin/iptables -A INPUT --sport 53 -j ACCEPT
在最后添加一条规则                  源端口为 DNS的 接受
#
/sbin/iptables -A FORWARD -p tcp -m multiport --dport 135,137,138,139,445 -j ACCEPT
在最后添加一条规则  协议tcp 目标端口为 135.137.138.139.445的 接受
/sbin/iptables -A FORWARD -i eth0 -j ACCEPT
在最后添加一条规则     通过eth0端口的 接受
/sbin/iptables -A FORWARD -i eth1 -m state --state ESTABLISHED,RELATED -j ACCEPT
在最后添加一条规则   通过eth1 端口的 状态为 ESTABLISHED,RELATED的 接受
/sbin/iptables -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT
在最后添加一条规则    状态为 ESTABLISHED,RELATED 的接受
/sbin/iptables -A FORWARD -f -m limit --limit 100/s --limit-burst 120 -j LOG --log-level DEBUG
在最后添加一条规则 封包每秒 发送100个 容器容量为120 的 写入日志 并删除
#
#
/sbin/iptables -t nat -A PREROUTING -p tcp -i eth1 -d 221.226.x.x --dport 80-j DNAT --to-destination 192.168.5.16:80
            在最后添加一条规则   协议为tcp  通过端口eth1 目标地址为 221.226.X.X 目标端口80的 地址转换为 目标192.168.5.16:80
/sbin/iptables -t nat -A POSTROUTING -p tcp -o eth1 -s 192.168.5.16 --sport 80-j SNAT --to-source 221.226.x.x
在最后添加一条规则   协议为tcp  通过端口eth1 源地址为 192.168.5.16 源端口80的 地址转换为源 192.168.5.16:80
#
/sbin/iptables -t nat -A PREROUTING -p tcp -i eth1 -d 221.226.x.x --dport 21 -j DNAT --to-destination 192.168.5.16:21
 在最后添加一条规则       协议为tcp     通过eth1 进入的 目标地址为221.226.x.x 目标端口 21 地址转换 目标地址为 192.168.5.16:21
/sbin/iptables -t nat -A POSTROUTING -p tcp -o eth1 -s 192.168.5.16 --sport 21-j SNAT --to-source 221.226.x.x:21
 在最后添加一条规则       协议为tcp   通过eth0口输出的 源为192.168.5.16 源端口21 地址转换为 源 221.226.x,x:21
/sbin/iptables -t nat -A PREROUTING -p tcp -i eth1 -d 221.226.x.x --dport 20-j DNAT --to-destination 192.168.5.16:20
 在最后添加一条规则       协议为tcp   通过eth1 口 进入的 目标地址221.226.x.x 目标端口为20 地址转换为 目标 192.168.5.16:20
/sbin/iptables -t nat -A POSTROUTING -p tcp -o eth1 -s 192.168.5.16 --sport 20-j SNAT --to-source 221.226.x.x:20
 在最后添加一条规则       协议为tcp    通过eth1口输出的 源为 192.168.5.16 源端口 20 地址转换为 源 221.226.x.x:20
#
/sbin/iptables -t nat -A PREROUTING -p tcp -i eth1 -d 221.226.x.x --dport 443 -j DNAT --to-destination 192.168.5.16:443
 在最后添加一条规则       协议为tcp   通过eth1口进入的 目标地址221.226.x.x 目标端口 443 地址转换为 目标 192.168.5.16:443
/sbin/iptables -t nat -A POSTROUTING -p tcp -o eth1 -s 192.168.5.16 --dport 443 -j SNAT --to-source 221.226.x.x:443
 在最后添加一条规则       协议为tcp  通过eth 1 口 传出 源地址192.168.5.16 目标端口 443 地址转换为 源221.226.x.x:443
#
/sbin/iptables -t nat -A PREROUTING -p tcp -i eth1 -d 221.226.x.x --dport 25-j --to-destination 192.168.5.16:25
 在最后添加一条规则       协议为tcp    通过端口 eth1 目标地址 221.226.x.x 目标端口25 地址转换为 目标 192.168.5.16:25
/sbin/iptables -t nat -A POSTROUTING -p tcp -o eth1 -s 192.168.5.16 --sport 25-j --to-source 221.226.x.x:25
 在最后添加一条规则       协议为tcp      通过端口 eth1 传出 源为 192.168.5.16 源端口为25 转换为 源 221.226.x.x:25
/sbin/iptables -t nat -A PREROUTING -p tcp -i eth1 -d 221.226.x.x --dport 110 -j --to-destination 192.168.5.16:110
 在最后添加一条规则       协议为tcp     通过端口  eth1 传入的  目标地址 221.226.x.x 目标端口110 的转换为 目标地址 192.168.5.16:110
/sbin/iptables -t nat -A POSTROUTING -p tcp -o eth1 -s 192.168.5.16 --sport 110 -j --to-source 221.226.x.x:110
 在最后添加一条规则       协议为tcp    通过端口 eth1  源为192.168.5.16 源端口为110 转换为 源 221.226.x.x:110
/sbin/iptables -t nat -A PREROUTING -p tcp -i eth1 -d 221.226.x.x --dport 143 -j --to-destination 192.168.5.16:143
 在最后添加一条规则       协议为tcp     通过端口   eth1 传入  目标地址为221.226.x.x 目标端口143 转换为目标端口 192.168.5.16:143
/sbin/iptables -t nat -A POSTROUTING -p tcp -o eth1 -s 192.168.5.16 --sport 143 -j --to-source 221.226.x.x:143
 在最后添加一条规则       协议为tcp     通过端口   eth1 传出 源为192.168.5.16 源端口 为143 转换为 源 221.226.x.x:143
#
/sbin/iptables -t nat -A PREROUTING -p tcp -i eth1 -d 221.226.x.x --dport 23-j --to-destination 192.168.5.16:23
 在最后添加一条规则       协议为tcp     通过端口  eth1 目标地址为221.226.x.x,目标端口23 转换为目标地址 192.168.5.16:23
/sbin/iptables -t nat -A POSTROUTING -p tcp -o eth1 -s 192.168.5.16 --sport 23-j --to-source 221.226.x.x:23
 在最后添加一条规则       协议为tcp     通过端口 eth1 源192.168.5.16 源端口23 转换为  源地址 221.226.x.x:23
#
/sbin/iptables -t nat -A PREROUTING -p tcp -i eth1 -d 221.226.x.x --dport 22-j --to-destination 192.168.5.16:22
 在最后添加一条规则       协议为tcp      通过端口eth1 传入   目标地址221.226.x.x 目标端口22 转换为目标地址 192.168.5.16:22
/sbin/iptables -t nat -A POSTROUTING -p tcp -o eth1 -s 192.168.5.16 --sport 22-j --to-source 221.226.x.x:22
 在最后添加一条规则       协议为tcp     通过端口eth1 传出   源地址 192.168.5.16 源端口22 转换为 源 221.226.x.x:22
#
/sbin/iptables -t nat -A POSTROUTING -o eth1 -j MASQUERADE
     在最后添加一条规则    通过eth1端口输出的 地址伪装            
/sbin/iptables -A INPUT -i eth1 -j ext
   在最后添加一条规则   通过eth1端口的 ext

你可能感兴趣的:(防火墙,net,start,休闲,firewall)