只是最基本的配置,防御flood的懒得写了,真有人跟我有仇要DDOS我的话那就挂了算了...
#配置,禁止进,允许出,允许回环网卡
iptables -P INPUT DROP iptables -P OUTPUT ACCEPT iptables -A INPUT -i lo -j ACCEPT
#允许ping,不允许删了就行
iptables -A INPUT -p icmp -j ACCEPT
#允许ssh
iptables -A INPUT -p tcp -m tcp --dport 22 -j ACCEPT
#允许ftp
iptables -A INPUT -p tcp -m tcp --dport 20 -j ACCEPT iptables -A INPUT -p tcp -m tcp --dport 21 -j ACCEPT
#允许ftp被动接口范围,在ftp配置文件里可以设置
iptables -A INPUT -p tcp --dport 20000:30000 -j ACCEPT
#学习felix,把smtp设成本地
iptables -A INPUT -p tcp -m tcp --dport 25 -j ACCEPT -s 127.0.0.1 iptables -A INPUT -p tcp -m tcp --dport 25 -j REJECT
#允许DNS
iptables -A INPUT -p tcp -m tcp --dport 53 -j ACCEPT iptables -A INPUT -p udp -m udp --dport 53 -j ACCEPT
#允许http和https
iptables -A INPUT -p tcp -m tcp --dport 80 -j ACCEPT iptables -A INPUT -p tcp -m tcp --dport 443 -j ACCEPT
#允许状态检测,懒得解释
iptables -A INPUT -p all -m state --state ESTABLISHED,RELATED -j ACCEPT iptables -A INPUT -p all -m state --state INVALID,NEW -j DROP
#保存配置
iptables-save > /etc/iptables
保存之后就行了,Debian不需要单独把iptbles做成服务,具体如何让iptables开机自动加载,请看文章《Debian下iptables防火墙开机自动加载实现》
我是把上面那段和下面这段都写到sh里了,start{}和stop{}。需要修改规则的时候直接清空了重建比较好,因为规则有顺序问题。
#清空配置
iptables -F iptables -X iptables -Z iptables -P INPUT ACCEPT iptables -P OUTPUT ACCEPT