web服務器iptables安全配置

centos6.5的iptables防火牆規則

#!/bin/bash

#

###########clear all chains#########

iptables  --delete-chain

iptables  --flush

###########defaulet policy#########

iptables  -P INPUT DROP

iptables  -P FORWARD DROP

iptables  -P OUTPUT ACCEPT

###########lo policy###########

iptables -A INPUT -i lo -j ACCEPT

iptables -A OUTPUT -o lo -j ACCEPT


###########input chains############################################

iptables -A INPUT -p tcp -m state --state RELATED,ESTABLISHED -j ACCEPT

iptables -A INPUT -p tcp -s 1.1.1.1 -d 1.1.1.2 --dport 22 -m state --state NEW -j ACCEPT

iptables -A INPUT -p tcp -s 213.1.1.1 -d 1.1.1.2 --dport 22 -m state --state NEW -j ACCEPT

iptables -A INPUT -p tcp -s 1.1.2.3 -d 1.1.1.2 --dport 22 -m state --state NEW -j ACCEPT

iptables -A INPUT -p tcp -s 192.168.1.3 -d 192.168.1.2 --dport 22 -m state --state NEW -j ACCEPT

iptables -A INPUT -p tcp -m iprange --src-range 1.1.1.1-1.1.1.93 -d 106.3.136.2 --dport 22 -m state --state NEW

-j ACCEPT

iptables -A INPUT -p tcp --dport 80 -m state --state NEW -j ACCEPT

iptables -A INPUT -p tcp -s 1.1.1.58 -d 1.1.1.2 --dport 3173 -m state --state NEW -j ACCEPT

iptables -A INPUT -p tcp -s 1.1.1.4 -d 1.1.1.2 --dport 3173 -m state --state NEW -j ACCEPT

iptables -A INPUT -p tcp -s 1.1.1.3 -d 1.1.1.2 --dport 3173 -m state --state NEW -j ACCEPT

iptables -A INPUT -p tcp -s 192.168.1.3 --dport 3173 -j ACCEPT

####ftp#######

iptables -A INPUT -p tcp -m iprange --src-range 1.1.1.2-1.1.1.23 --dport 21 -j ACCEPT

iptables -A INPUT -p tcp -s 1.1.1.3 -d 106.3.136.2 --dport 21 -j ACCEPT

iptables -A INPUT -p tcp -s 1.1.1.4 -d 106.3.136.2 --dport 21 -j ACCEPT


iptables -A INPUT -i eth0 -m multiport -p tcp --dports 25,53,113,111,135,137,139,445,1433,4899 -j DROP

iptables -A INPUT -i eth0 -p udp --dport 1026 -j DROP

iptables -A INPUT -d 106.3.136.2 -p icmp --icmp-type 8 -m limit --limit 6/minute --limit-burst 10 -j ACCEPT ##DDOS

iptables -A INPUT -i eth0 -p icmp --icmp-type echo-request -j DROP ##DDOS

##iptables -I INPUT -p tcp --dport 22 -m connlimit --connlimit-above 5 -j DROP

##iptables -A INPUT -p icmp -m icmp --icmp-type 8 -j ACCEPT

iptables -A INPUT -p tcp ! --syn -m state --state NEW -j DROP  ##sync-flood

iptables -A INPUT -p tcp --tcp-flags ALL FIN,URG,PSH -j DROP ##to prevent Xmas scanning

iptables -A INPUT -p tcp --tcp-flags ALL ALL -j DROP   ##

iptables -A INPUT -p tcp --tcp-flags ALL NONE -j DROP  ##to prevent TCP scanning.

iptables -A INPUT -p tcp --tcp-flags SYN,RST SYN,RST -j DROP ##to prevent scanning

iptables -A INPUT -p tcp --tcp-flags SYN,FIN SYN,FIN -j DROP ##to prevent connected and Disconnected packets

iptables -A INPUT -p tcp --tcp-flags SYN,ACK SYN,ACK -m state --state NEW -j DROP ##To prevent an ACK cheat

iptables -I INPUT -p tcp --dport 22 -m connlimit --connlimit-above 7 -j REJECT

iptables -A INPUT -p tcp -m tcp --tcp-flags SYN,RST,ACK SYN -m limit --limit 20/sec --limit-burst 200 -j ACCEPT

###########output chains###########################################

iptables -A OUTPUT -m state --state RELATED,ESTABLISHED -j ACCEPT

iptables -A OUTPUT -p udp -m udp --dport 53 -j ACCEPT

iptables -A OUTPUT -p tcp -m tcp --dport 80 -j ACCEPT

iptables -A OUTPUT -p tcp -m tcp --dport 53 -j ACCEPT

############forward chains#########################################

##iptables -A FORWARD -p icmp --icmp-type 11 -j DROP

iptables-save >/etc/sysconfig/iptables

因爲開放了ftp服務,那麼內核需要加載nf_conntrack_ipv4模塊, 

cat /proc/sys/net/netfilter/nf_conntrack_max跟蹤連接值要設置的大點。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章