跳至主要内容

iptables实例

echo "Enable IP Forwarding..."
echo "1">/proc/sys/net/ipv4/ip_forward
echo "Starting /sbin/iptables rules..."
/sbin/modprobe iptable_filter
/sbin/modprobe ip_tables
/sbin/modprobe iptable_nat
#Refresh all chains
/sbin/iptables -F -t nat
/sbin/iptables -F INPUT
/sbin/iptables -F OUTPUT
/sbin/iptables -F FORWARD
/sbin/iptables -P INPUT DROP
/sbin/iptables -P FORWARD DROP

# WAN is INTERNET_IFACE, ETH0,2,3 are LAN_IFACE
LAN="eth0"
WAN="eth0"
#Open Web POrts And Squid Http Ports
#/sbin/iptables -A INPUT -i $WAN -s 61.175.192.117 -j DROP
/sbin/iptables -A INPUT -i $WAN -p tcp -m multiport --sport 80,21,20 -j ACCEPT
/sbin/iptables -A INPUT -i $WAN -p tcp -m multiport --dport 80,21,20 -j ACCEPT
#/sbin/iptables -A INPUT -i $WAN -p tcp -m multiport --dport 3128 -j DROP
#/sbin/iptables -A INPUT -i $WAN -p tcp -m multiport --sport 3128 -j DROP
/sbin/iptables -A INPUT -i $WAN -p icmp -j ACCEPT

/sbin/iptables -A INPUT -i $LAN -s 192.168.11.0/24 -p icmp -j ACCEPT

# enable DNS PORT 53
/sbin/iptables -A INPUT -i $WAN -p udp --sport 53 -j ACCEPT

/sbin/iptables -A INPUT -i lo -j ACCEPT

/sbin/iptables -A INPUT -i $WAN -s 192.168.18.157 -p tcp --dport 22 -j ACCEPT
/sbin/iptables -A INPUT -i $WAN -s 192.168.18.199 -p tcp --dport 22 -j ACCEPT

/sbin/iptables -A INPUT -p tcp -m multiport --ports 3128 -j ACCEPT

/sbin/iptables -t nat -A PREROUTING -i $LAN -p tcp -m tcp --dport 80 -j REDIRECT --to-ports 3128

/sbin/iptables -t nat -A POSTROUTING -s 192.168.11.0/24 -o $WAN -j SNAT --to 192.168.18.198

########### #LAN 192.168.11.X
/sbin/iptables -A FORWARD -d 192.168.11.0/24 -p tcp -m multiport --sport 8000,80,1080,443,25,110,8001,3128,8081,8888,22221,22223,22224,22225,6666 -j ACCEPT
/sbin/iptables -A FORWARD -s 192.168.11.0/24 -p tcp -m multiport --dport 8000,80,1080,443,25,110,8001,3128,8081,8888,22221,22223,22224,22225,6666 -j ACCEPT
/sbin/iptables -A FORWARD -s 192.168.11.0/24 -p tcp -m multiport --dport 6668,8002,8601,3389,21,8003,8008,9008,1863,10037,10041,7001,4439,188,8222 -j ACCEPT
/sbin/iptables -A FORWARD -d 192.168.11.0/24 -p tcp -m multiport --sport 6668,8002,8601,3389,21,8003,8008,9008,1863,10037,10041,7001,4439,188,8222 -j ACCEPT
/sbin/iptables -A FORWARD -d 192.168.11.0/24 -p udp -m multiport --sport 8000,53,1701,1702,1703,1704 -j ACCEPT
/sbin/iptables -A FORWARD -s 192.168.11.0/24 -p udp -m multiport --dport 8000,53,1701,1702,1703,1704 -j ACCEPT
/sbin/iptables -A FORWARD -s 192.168.11.0/24 -d 61.175.192.117 -p tcp --sport 1025:65523 -j ACCEPT
/sbin/iptables -A FORWARD -d 192.168.11.0/24 -s 61.175.192.117 -p tcp --dport 1025:65523 -j ACCEPT

/sbin/iptables -A FORWARD -f -m limit --limit 100/s --limit-burst 100 -j ACCEPT
/sbin/iptables -A FORWARD -p icmp -m limit --limit 1/s --limit-burst 10 -j ACCEPT

评论

此博客中的热门博文

Python学习笔记20100117

映射list   Dictionary 是用{}. list 是一那个[]. turple是用() 当你定义过dictionary后,你可以使用d.keys(), d.values(),d.items()将定义后的时候分别显示出来 当然可以将list里的值加减乘除,也可以如一般的定义直接重新复制这个list. 链接与分割字符串的 li=";", join(li) 则显示的就是 分隔符为;的数 如果使用li=li.split(";")则将刚刚;的分隔符删除,而split里也可定义域,如li.split(";",1)   自省 <---这是啥 之前在使用的时候发觉有些书本上的模块不能调用,很多是py脚本定义过的函数。 下载该脚本s,然后上传至指定位置。 >>>import sys >>>sys.path >>>sys.path.append("绝对位置")然后就能调用这些脚本和参数了。 删除 >>>sys.path.pop() 定义一个参数是 def info(test, test1=10.test2=12): info是函数名,test是必备参数,因为没有定义值,test1和test2是可选参数,定义了初始值   以上是外部函数的调用,下面转到内部函数 内部函数有type,str,dir及其他   ---type 返回任意字符的类型,模块也可以。types模块 >>> type(1) <type 'int'> >>> li=[] >>> type(li) <type 'list'> >>> import odbchelper >>> type(odbchelper) <type 'module'> >>> type(sys) <type 'module'> >>> import types ...

Oracle学习笔记20080118

做个rman的backup脚本,发觉对shell研究不是很深,纯建立脚本以后chmod a+x backup.ramn后,还差点,转战shell下,虽然一直想把shell好好用,但是好像没什么进展。 今天开始看shell 当然首先出现的还是ls,最常用的是ls -l,ls -la包含的信息: total 4232:该目录中所有文件所占的空间。 - r w x r- x r- x:这是该文件的权限位。 前面的横杠有: d 目录。 l 符号链接(指向另一个文件)。 s 套接字文件。 b 块设备文件。 c 字符设备文件。 p 命名管道文件。 - 普通文件,或者更准确地说,不属于以上几种类型的文件。 如果除去最前面的横杠,这里一共是9个字符,他们对应9个权限位。通过这些权限位,可以设定用户对文件的访问权限。这9个字符可以分组: r w x:文件属主权限 这是前面三位r- x:同组用户权限 这是中间三位r- x:其他用户权限 这是最后三位 1 该文件硬链接的数目。 root 文件的属主。root 文件的属主r o o t所在的缺省组(也叫做r o o t )。 3578 用字节来表示的文件长度,记住,不是K字节!Oct 14 04:44 文件的更新时间。 dmesg 文件名。 - rw- r-- r-- 文件类型为普通文件 文件属主可以读、写 同组用户可以读 其他用户可以读r-- --- --- 文文件属主可读,但不能写或执行 r-- r-- --- 文文件属主和同组用户(一般来说,是文件属主所在的缺省组)可读 r-- r-- r- - 文任何用户都可读,但不能写或执行 rwx r-- r- - 文文件属主可读、写、执行,同组用户和其他用户只可读 rwx r-x --- 文文件属主可读、写、执行,同组用户可读、执行 rwx r-x r- x 文文件属主可读、写、执行,同组用户和其他用户可读、执行 rw- rw- --- 文文件属主和同组用户可读、写 rw- rw- r- - 文文件属主和同组用户可读、写,其他用户可读 rw- rw- --- 文文件属主和同组用户及其他用户读可以读、写,慎用这种权限设置,因为任何用户都可以写入该文件 chmod [who] operator [permission] filenamewho的含义是: u 文件属主权限。g 同组用户权限。o 其他...