CentOS 6.x 配置iptables

iptables -P INPUT DROP—设置INPUT链默认规则也废除所有流量
iptbales有四表明五链子,raw,mangle,nat,filter(默认)表;五链:INPUT,OUTPUT,FORWARD,PREROUTING,POSTROUTING

vim iptables.sh
拷贝一下情节,具体按实际生产要求修改,此脚本默认丢弃INPUT流量,放行OUTPUT链流量,丢弃FORWARD流量;

#!/bin/bash

#清空iptables 规则
iptables -F
iptables -X
iptables -t nat -F
iptables -t nat -X

#兴本机访问本机
iptables -A INPUT -i lo -j ACCEPT

#补给加黑录方法

#iptables -I INPUT -s 192.168.0.1 -j DROP #挡单个IP的命

#iptables -I INPUT -s 192.168.1.0/24 -j DROP
#封IP段即从192.168.1.0到192.168.1.254的命令

#同意172.16.20.0 192.168.2.0/24 ssh访问进来
iptables -A INPUT -s 172.16.20.0/24 -p tcp –dport 22 -j ACCEPT
iptables -A INPUT -s 192.168.2.0/24 -p tcp –dport 22 -j ACCEPT

#允许https通行
iptables -A INPUT -p tcp –dport 443 -j ACCEPT

#容http访问服务器,已经存在的链接不断开
iptables -A INPUT -p tcp –dport 80 -m state –state NEW,ESTABLISHED -j
ACCEPT

#许就立的链接继续畅通
iptables -A INPUT -m state –state ESTABLISHED,RELATED -j ACCEPT

#允许ping

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

#装INPUT链默认废弃
iptables -P INPUT DROP

#设置OUTPUT链默认允许
iptables -P OUTPUT ACCEPT

#安装默认废弃弃FORWARD链
iptables -P FORWARD DROP

#防范各种攻击
iptables -A FORWARD -p icmp -icmp-type echo-request -m limit -limit 1/s -j ACCEPT
iptables -A FORWARD -p tcp –tcp-flags SYN,ACK,FIN,RST RST -m limit –limit 1/s -j ACCEPT

iptables -A INPUT -p tcp -m state –state ESTABLISHED,RELATED -j ACCEPT
iptables -A INPUT -p tcp –syn -m limit –limit 12/s –limit-burst 24 -j ACCEPT

iptables -A INPUT -p tcp –dport 80 -m recent –name BAD_HTTP_ACCESS –update –seconds 60 –hitcount 20 -j REJECT 
iptables -A INPUT -p tcp –dport 80 -m recent –name BAD_HTTP_ACCESS –set -j ACCEPT

#许本机访问192.168.7.2底ftp服务器

iptables -A INPUT -s 192.168.7.2 -p tcp -m multiport –dports 20,21 -m
state –state NEW -j ACCEPT
iptables -A INPUT -s 192.168.7.2 -p tcp -m state –state NEW -m tcp
–dport 21 -j ACCEPT
iptables -A INPUT -s 192.168.7.2 -p tcp -m tcp –dport 30001:31000 -j
ACCEPT

#保存iptables
service iptables save 或者用iptables-save > /etc/sysconfig/iptables
chkconfig iptables on ——添加开机启动
service iptables restart——重开iptables服务,其实不需再行开立即生效
在意:如果以生养及ssh端口不是默认的22,会招执行了此脚论后无法连接服务器,为了以防万一此类工作闹,可以定期执行一个本子取消iptables运行
crontab -e
/10 * /etc/init.d/iptables stop——每十分钟实施停止iptables服务
翻开iptables记录信息
图片 1
日记信息查阅
more /proc/net/nf_conntrack

相关文章