标签:系统 防火墙配置 公网 user 用户访问 centos 51cto ext ipo
一、防火墙netfilter:Linux内核模块,提供防火墙功能,但用户不可直接干预;内核态
- raw:状态跟踪;
raw PREROUTING
raw OUTPUT
- mangle:标记;
mangle INPUT
mangle PREROUTING
mangle POSTROUTING
mangle FORWARD
mangle OUTPUT
- nat:地址转换;修改包IP、端口等实现上网等需求
nat PREROUTING
nat POSTROUTING
nat OUTPUT
- filter:地址过滤;
filter INPUT
filter OUTPUT
filter FORWARD
详解:
PREROUTING(路由前):DNAT(路由器转发之后,IP地址未更改情况)
前提:192.168.1.10/24(80) --> 200.0.0.1/24(80)
Client 200.0.0.10/24 --> 200.0.0.1/24
路由前
Gateway 200.0.0.10/24 --> 192.168.1.10/24
路由后(错误)
192.168.1.1/24 --> 192.168.1.10/24
详解:
POSTROUTING(路由后):SNAT(路由转发之后,IP地址已更改情况)
前提:192.168.1.10/24 --> 200.0.0.1/24
Client 192.168.1.10/24 --> 200.0.0.10/24
路由后
Gateway 200.0.0.1/24 --> 200.0.0.10/24
路由前(错误)
Gateway 192.168.1.10/24 --> 200.0.0.10/24
(1)表:raw --> mangle --> nat --> filter
(2)链:
iptables [ -t 表名 ] 选项 [ 链名 ] [ 匹配条件 ] [ -j 控制类型 ]
-A:链中最后增加一条
-I:链中最开始增加一条
-D:删除指定链
-L:列表显示所有规则
-n:以数字显示端口、IP等
-v:详细信息显示
-P:指定默认规则
--line-numbers:显示规则的序号
ACCEPT:允许
REJECT:拒绝
DROP:丢弃
LOG:日志
1.通用匹配
-p:协议(tcp、udp、icmp)
-s:源地址
-d:目标地址
-i:入口网卡
-o:出口网卡2.隐含匹配(需配合-p选项)
--dport:目标端口
--sport:源端口
--icmp-type:icmp协议类型;0(回显)、3(网络不可达)、8(请求)
--tcp-flages:TCP标记3.显式匹配
-m multiport --sports:源端口列表
-m multiport --dports:目标端口列表
-m iprange --src-range:IP地址范围
-m mac --mac-source:MAC地址
-m state --state:连接状态;NEW(DROP)、ESTABLISHED(ACCEPT)、RELATED(ACCEPT)
/etc/init.d/iptables stop //清空默认规则
vim clean_iptables.sh
#!/bin/bash
iptables -F
iptables -X
iptables -t nat -F
iptables -t nat -X
iptables -t mangle -F
iptables -t mangle -X
iptables -t raw -F
iptables -t raw -X
iptables -t security -F
iptables -t security -X
iptables -P INPUT ACCEPT
iptables -P FORWARD ACCEPT
iptables -P OUTPUT ACCEPT
iptables -t filter -I INPUT -s 192.168.12.0/24 -p icmp -j ACCEPT //允许192.168.12.0网段使用icmp协议访问
iptables -t filter -P INPUT DROP //设置默认INPUT链为拒绝
/etc/init.d/iptables stop
iptables -t filter -I INPUT -p tcp --dport 22 -s 192.168.12.0/24-j ACCEPT //允许192.168.12.0网段访问本机的22端口
iptalbes -t filter -P INPUT DROP
/etc/init.d/iptables stop
iptables -t filter -I INPUT -p icmp --icmp-type 0 -j ACCEPT
iptables -t filter -I INPUT -p icmp --icmp-type 3 -j ACCEPT
iptables -t filter -I INPUT -p icmp --icmp-type 8 -j DROP
iptalbes -t filter -P INPUT DROP
//服务器可以ping外部,但外部不可ping服务器
/etc/init.d/iptables stop
iptables -t filter -I INPUT -i lo -j ACCEPT
iptables -t filter -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -t filter -P INPUT DROP
iptables -t filter -P FORWARD DROP
/etc/init.d/iptables save //保存当前防火墙配置;/etc/sysconfig/iptables
chkconfig --level 35 iptables on
/etc/init.d/iptables stop
iptables -t filter -I INPUT -i lo -j ACCEPT
iptables -t filter -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -t filter -A INPUT -p tcp -m multiport --dports 22,80,443 -j ACCEPT
iptables -t filter -A INPUT -p udp -m multiport --dports 53 -j ACCEPT
iptables -t filter -P INPUT DROP
iptables -t filter -P FORWARD DROP
/etc/init.d/iptables save //保存当前防火墙配置;/etc/sysconfig/iptables
chkconfig --level 35 iptables on
标签:系统 防火墙配置 公网 user 用户访问 centos 51cto ext ipo
原文地址:http://blog.51cto.com/13770206/2160746