iptables防火墙基础

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了iptables防火墙基础相关的知识,希望对你有一定的参考价值。

一、iptables基础:

1、了解iptables防火墙。

(1)iptables的表:按照功能的不同表分为raw(状态跟踪)、mangle(标记)、nat(地址修改)、filter(过滤)。

(2)iptables规则链:按照不同时机链分为INPUT(入站)、OUTPUT(出站)、FORWARD(转发)、PREROUTING(路由前)、POSTROUTING(路由后);

 在链中存放规则:

  filter: INPUT/FORWARD/OUTPUT

  nat: PREROUTING/POSTROUTING/OUTPUT

  mangle: PREROUTING/INPUT/FORWARD/OUTPUT/POSTROUTING

  raw: PREROUTING/OUTPUT

2、iptables匹配流程:根据数据流的方向确定匹配顺序;

 入站数据流向:PREROUTING --> INPUT

 出战数据流向:OUTPUT --> POSTROUTING

 转发数据流向:PREROUTING --> FORWARD --> POSTROUTING;

(1)表的匹配顺序:

  raw --> mangle --> nat --> filter

(2)链的匹配顺序:根据数据流的方向确定匹配顺序。

(3)链内规则匹配顺序:从上到下,匹配即停止未匹配使用默认规则。

 

二、编写iptables规则:

 语法:iptables -t 表名 选项 链名 条件 -j 动作

1、编写iptables语法注意:

(1)省略表名,表示filter表,省略链名,表示表内所有链

(2)除非设置默认规则,否则必须设置匹配的规则

(3)选项,链名,动作必须大写,其他小写

2、动作:对匹配条件进行处理,常见有:

ACCEPT:允许; DROP:丢弃; REJECT:拒绝; LOG:日志;

3、选项:

 对链进行的规则的增、删、改、查操作。

(1)增加:-A链的末尾添加、-I链的制定位置添加。

(2)删除:-D删除一条规则、-F清空链内所有规则

(3)查看:-L -n 查看规则、-L -n -V 显示更详细的信息、-L -n --line-number显示规则序号。

(4)设置默认规则:-P 链名 DROP或者ACCEPT

4、匹配条件:

(1)通用的匹配条件:

 -P 协议  ##常用ICMP/UDP/TCP

 -s 源地址,-d 目的地址  ##能确认的地址

 -i 入站接口, -o 出战接口  ##注意数据流向,如INPUT只能用-i

(2)隐含匹配条件:

 端口:-p 协议  --dport 目的端口 或 --sport 源端口

 ICMP类型:-p icmp --icmp-type 8请求 或 0返回 或 3网络不可达

 TCP标识:-p tcp --tcp-flags 范围 标记 (syn,ack,fin,rst)

(3)显示匹配条件:

 多端口:-m multiport -p tcp或udp --dports 端口1,端口2,端口:端口

 ip地址范围:-m --iprange --src-range ip1-ip2

 mac地址:-m mac --source-mac MAC地址

 状态:-m state --state NEW,ESTABLISHED,RELATED (NEW新建,ESTABLISHED已经建立连接,RELATED和已经建立的任务已经相关)


三、企业服务器防火墙设置实战:

 /etc/init.d/iptables stop  ##清空规则,包括默认

 iptables -A INPUT -i lo -j ACCEPT  ##允许本地所有访问

 iptables -A INPUT -p tcp -m -multiport --dports 80,443,20,21,45000:50000 -j ACCEPT  ##开放本地所有端口

 iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT  ##本机可以访问其他主机

 iptables -p INPUT DROP  ##设置INPUT的默认规则

 iptables -p FORWARD DROP  ##禁止转发

 /etc/init.d/iptables save  ##保存规则

 chkconfig iptables on  ##开机启动

以上是关于iptables防火墙基础的主要内容,如果未能解决你的问题,请参考以下文章

iptables防火墙基础

iptables防火墙基础

Linux防火墙------iptables(基础概述)

Linux防火墙iptables基础

防火墙iptables基础配置

深入研究iptables防火墙基础