#!/bin/bash
#set -x
#zlls
#new gateway
# Enabling IP Forwarding......
#echo "Enabling IP Forwarding........"
echo "1" > /proc/sys/net/ipv4/ip_forward
#ip_forward文件中默认的值为"0",即不打开IP转发功能,改为1即打开IP转发功能
##清除所有规则
iptables -F
iptables -F -t nat
iptables -F -t mangle
iptables -X
iptables -X -t nat
iptables -X -t mangle
##设置默认规则为全部接受(一般应设置为全部禁止即DROP)
iptables -P INPUT ACCEPT
iptables -P OUTPUT ACCEPT
iptables -P FORWARD ACCEPT
###TCP paramete
sysctl -w net.ipv4.ip_forward=1 &>/dev/null
sysctl -w net.ipv4.tcp_syncookies=1 &>/dev/null
sysctl -w net.ipv4.ip_conntrack_max=1048576 &>/dev/null
iptables -A INPUT -p tcp -d 192.168.1.7 -i eth0 -j ACCEPT
#接受从eth0网口进来的数据,并按指定的iptables规则进行数据跳转即数据转发
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
#匹配已经建立的连接或由已经建立的连接所建立的新连接。即匹配所有的TCP回应包。
iptables -A INPUT -i eth1 -p icmp -j DROP
#禁止所有eth1网口进来的数据,即对外网ping不回应
iptables -t nat -A POSTROUTING -o eth1 -j SNAT --to 192.168.1.6
#所有内网地址伪装为192.168.1.6,统一使用此IP地址向外通信
#iptables -t nat -A POSTROUTING -o eth1 -j MASQUERADE
#同上(如果是动态IP则将上面注释去掉)
##IP地址与MAC地址绑定
iptables -I FORWARD -s 192.168.1.251 -m mac --mac-source 00:1F:C6:81:35:6C -j ACCEPT
iptables -I FORWARD -s 192.168.1.249 -m mac --mac-source 00:05:5d:5e:12:03 -j ACCEPT
#IP地址绑定,即IP地址和MAC地址对应才可以访问网络
##放行
iptables -A INPUT -d 123.124.221.162 -j ACCEPT
iptables -A OUTPUT -s 123.124.221.162 -j ACCEPT
iptables -A INPUT -p tcp --dport 21 -j ACCEPT
iptables -A INPUT -p tcp --dport 20 -j ACCEPT
iptables -A OUTPUT -p udp --sport 21 -j ACCEPT
iptables -A OUTPUT -p udp --sport 20 -j ACCEPT
## 端口映射
iptables -t nat -A PREROUTING -d 192.168.1.7 -p tcp --dport 33333 -j DNAT --to 192.168.0.110:3389
##封网站
iptables -I FORWARD -d www.youku.com -j DROP
iptables -I FORWARD -d www.xunlei.com -j DROP
iptables -I FORWARD -d www.baidu.com -j DROP
##封QQ
iptables -I FORWARD -p udp --dport 4000 -j DROP
iptables -I FORWARD -p tcp --dport 4000 -j DROP
iptables -I FORWARD -p udp --dport 8000 -j DROP
iptables -I FORWARD -p tcp --dport 8000 -j DROP
iptables -I FORWARD -d 219.133.48.109 -j DROP
iptables -I FORWARD -d sz3.tencent.com -j DROP
iptables -I FORWARD -d tcpconn.tencent.com -j DROP
iptables -I FORWARD -d http.tencent.com -j DROP
iptables -I FORWARD -d web.qq.com -j DROP
iptables -I FORWARD -p tcp --dport 8000 -d 123.124.221.165 -j ACCEPT
iptables -I FORWARD -p tcp --dport 8000 -d 123.124.221.166 -j ACCEPT
##以上规则对以下IP地址无效
iptables -I FORWARD -s 192.168.1.251 -j ACCEPT
##封IP
iptables -I FORWARD -s 192.168.1.2 -j DROP
iptables -I FORWARD -p udp -s 192.168.1.104 -j DROP
##封传到IP地址192.168.1.104的udp协议