#!/bin/sh
#腳本名稱:firewall.sh
#作者:張拓
#日期:2011-3-7
#用途:防火牆設置,只開發web和ssh端口
/sbin/modprobe ip_tables
/sbin/modprobe iptable_filter
/sbin/modprobe iptable_nat
/sbin/modprobe ip_conntrack
/sbin/modprobe ip_conntrack_ftp
#以上命令爲載入模塊
iptables -P INPUT DROP
iptables -F INPUT
iptables -P OUTPUT ACCEPT
iptables -F OUTPUT
iptables -P FORWARD DROP
iptables -F FORWARD
iptables -t nat -F
#以上命令爲設置默認規則----禁止所有,注意會清空原有規則,請注意原有規則的保存備份。
################################add tointernet##########################
#iptables -A INPUT -p udp --sport 53 -j ACCEPT
#iptables -A INPUT -p udp --sport 123 -j ACCEPT
#iptables -A INPUT -p tcp --sport 20 -j ACCEPT
#iptables -A INPUT -p tcp --sport 21 -j ACCEPT
#iptables -A INPUT -p tcp --sport 80 -j ACCEPT
#iptables -A INPUT -p udp -m udp --dport 5060 -j ACCEPT
#iptables -A INPUT -p udp -m udp --dport 4569 -j ACCEPT
#iptables -A INPUT -p udp -m udp --dport 10000:20000 -j ACCEPT
################################add tointernet##########################
#以上規則的意思是,開放你服務器對外訪問的回程允許,如果你的服務器不需要對外訪問,請刪除
#
#
################################add manager#############################
iptables -A INPUT -s 127.0.0.1 -j ACCEPT
iptables -A INPUT -s 192.168.1.0/24 -j ACCEPT
#iptables -A INPUT -s {你的源IP} -p 0 -j ACCEPT
################################add manager#############################
#以上的規則的意思是,開放你的管理客戶端的所有通訊(當然包括22端口啦),但除了這個源IP外,其它任何IP都訪問該服務器的22端口了
#
#
################################add 80##################################
iptables -A INPUT -p tcp --dport 80 -j ACCEPT
iptables -A INPUT -p tcp --dport 22 -j ACCEPT
################################add 80##################################
#開放外網所有訪問你的web 和ssh
#如果你的MYSQL或其它服務需要對外開放,請按上面的格式添加
#
#
#################################close icmp#################################
iptables -A INPUT -p icmp -j DROP
#################################close icmp#################################
#以上規則的意思是關閉icmp
#
/etc/rc.d/init.d/iptables save
/etc/rc.d/init.d/iptables restart