注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

欢迎光临shaying110的博客

RSed-ISPing

 
 
 

日志

 
 

Iptables脚本   

2007-12-20 11:23:00|  分类: Linux |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |
#!/bin/bash

PATH=/sbin:/usr/sbin:/bin:/usr/bin
RC_SQUID=/etc/rc.d/init.d/squid

# 對外連線
EXTIF="eth1"

# 對內連線
INTIF="eth0"
INNET="192.168.100.1/24"

# 針對 NAT & DHCP
NATNET="eth2"
NTNET="192.168.21.1/24"

#掛入相關 module
/sbin/modprobe ip_tables
/sbin/modprobe ip_nat_ftp
/sbin/modprobe ip_conntrack
/sbin/modprobe ip_conntrack_ftp


# 先清除所有的防火牆規則
/sbin/iptables -F
/sbin/iptables -X
/sbin/iptables -Z
/sbin/iptables -F -t nat
/sbin/iptables -X -t nat
/sbin/iptables -Z -t nat
/sbin/iptables -P INPUT DROP
/sbin/iptables -P OUTPUT ACCEPT
/sbin/iptables -P FORWARD ACCEPT
/sbin/iptables -t nat -P PREROUTING ACCEPT
/sbin/iptables -t nat -P POSTROUTING ACCEPT
/sbin/iptables -t nat -P OUTPUT ACCEPT


# 開放特定Port
/sbin/iptables -A INPUT -p TCP -i $EXTIF --dport 22 -j DROP # SSH
/sbin/iptables -A INPUT -p TCP -i $EXTIF --dport 25 -j ACCEPT # SMTP
/sbin/iptables -A INPUT -p UDP -i $EXTIF --dport 53 -j ACCEPT # DNS
/sbin/iptables -A INPUT -p TCP -i $EXTIF --dport 53 -j ACCEPT # DNS
/sbin/iptables -A INPUT -p TCP -i $EXTIF --dport 80 -j ACCEPT # WWW
/sbin/iptables -A INPUT -p TCP -i $EXTIF --dport 110 -j ACCEPT # POP3
/sbin/iptables -A INPUT -p TCP -i $EXTIF --dport 113 -j ACCEPT # AUTH
/sbin/iptables -A INPUT -p TCP -i $INTIF --dport 137 -j ACCEPT # SMB
/sbin/iptables -A INPUT -p TCP -i $INTIF --dport 138 -j ACCEPT # SMB
/sbin/iptables -A INPUT -p TCP -i $INTIF --dport 139 -j ACCEPT # SMB
/sbin/iptables -A INPUT -p TCP -i $EXTIF --dport 7021 -j ACCEPT # VFTP
/sbin/iptables -A INPUT -p TCP -i $EXTIF --dport 6080 -j ACCEPT # WWW


/sbin/iptables -P OUTPUT ACCEPT
/sbin/iptables -P FORWARD DROP
/sbin/iptables -t filter -A FORWARD -i eth1 -o eth2 -m state --state ESTABLISHED,RELATE -j ACCEPT
/sbin/iptables -t filter -A FORWARD -i eth2 -o eth1 -p tcp -s 192.168.100.0/24 --dport 6080 -j ACCEPT

# 啟動所有介面的來源 IP 查核
if [ -e /proc/sys/net/ipv4/conf/all/rp_filter ]
then
for f in /proc/sys/net/ipv4/conf/*/rp_filter
do
echo 1 〉 $f
done
fi

# 防止 sync flood 攻擊
/sbin/iptables -N synfoold
/sbin/iptables -A synfoold -p tcp --syn -m limit --limit 1/s -j RETURN
/sbin/iptables -A synfoold -p tcp -j REJECT --reject-with tcp-reset
/sbin/iptables -A INPUT -p tcp -m state --state NEW -j synfoold

# 防止 Ping of Death
/sbin/iptables -N ping
/sbin/iptables -A ping -p icmp --icmp-type echo-request -m limit --limit 1/second -j RETURN
/sbin/iptables -A ping -p icmp -j REJECT
/sbin/iptables -I INPUT -p icmp --icmp-type echo-request -m state --state NEW -j ping

# 防止惡意掃描
/sbin/iptables -A INPUT -i $EXTIF -p tcp --tcp-flags ALL FIN,URG,PSH -j DROP
/sbin/iptables -A INPUT -i $EXTIF -p tcp --tcp-flags ALL ALL -j DROP
/sbin/iptables -A INPUT -i $EXTIF -p tcp --tcp-flags ALL SYN,RST,ACK,FIN,URG -j DROP
/sbin/iptables -A INPUT -i $EXTIF -p tcp --tcp-flags ALL NONE -j DROP
/sbin/iptables -A INPUT -i $EXTIF -p tcp --tcp-flags SYN,RST SYN,RST -j DROP
/sbin/iptables -A INPUT -i $EXTIF -p tcp --tcp-flags SYN,FIN SYN,FIN -j DROP

# 來自內部的連線一律放行
/sbin/iptables -A INPUT -i $INTIF -j ACCEPT
/sbin/iptables -A INPUT -i $NATNET -j ACCEPT

# 重導 www 請求至 Squid (透通代理)
# 如果您有架設 Proxy Server 可以將註解拿掉
# 這樣可以強迫使用者使用 Proxy 而不必修改 Client 端設定
/sbin/iptables -t nat -A PREROUTING -i $NATNET -p tcp --dport 80 -j REDIRECT --to -port 6080

# 啟動 IP 偽裝
/sbin/iptables -t nat -A POSTROUTING -s $NATNET -o $EXTIF -j MASQUERADE

# 阻擋指定的網卡號碼
# 這是 Kernel 2.4 系列新功能,主要防止 Client 非法搶 IP
# /sbin/iptables -A INPUT -m mac --mac-source xx:xx:xx:xx:xx:xx -j DROP

# 最後擋掉其他外部連線要求
/sbin/iptables -A INPUT -i $NATNET -m state --state NEW,INVALID -j DROP
/sbin/iptables -A FORWARD -i $NATNET -m state --state NEW,INVALID -j DROP

# 防止超量攻擊
echo 1 〉 /proc/sys/net/ipv4/tcp_syncookies


# 啟動 IP 轉送
echo 1 〉 /proc/sys/net/ipv4/ip_forward
 
#以上脚本请根据自己的实际情况进行修改
  评论这张
 
阅读(136)| 评论(0)
推荐 转载

历史上的今天

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2018