防火墙iptables

Posted zoer

tags:

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

防火墙iptables

四表五链:

iptables:应用层内置控制防火墙的工具
netfilter:防火墙功能的具体实现,是内核空间的功能模块
通过iptables工具设置规则,netfilter根据该规则进行匹配并执行动作
技术图片

四表:

raw
mangle
nat
filter

五链:

PREROUTING		
INPUT	
OUTPUT
	FORWORD
	POSTROUTING

iptables用法

iptbales –t table command CHINA rule-specification [optional] –j TARGET

command:

-A 在尾部插入规则
-I [rulenum]   在指定行插入规则,默认第一行
-D rulenum    删除指定行规则
-R rulenum 	  替换指定行规则
-F [CHINA]	  清除指定链规则,默认filter
-P china target 设置链的默认规则
-L 查看规则
	-n  不做地址解析,以数字形式显示
	-v  显示详细信息
	-vv
	-x 精确显示
	--line-numbers  显示行号

标准匹配

显示匹配:

-p tcp
	--dport
	--sport
-p icmp
	--icmp-type  8 receive  0 request
-i eth0  配合INPUT
-o eth0 配合OUTPUT

隐示匹配:

-m state
	--state  NEW			新请求
			ESTABLISHED		已建立的链接
			INVALID			非法链接
			RELATED			相关联的链接,比如ftp

example:ftp

iptables –A INPUT –p tcp –dport 21 –m state --state NEW,ESTABLISHED
iptables –A INPUT –p tcp –m state --state ESTABLISHED,RELATED  

主动链接通过放行21端口,被动链接通过state模块的related
注意:需要加载ip_nat_ftp ip_conntrack_ftp 两个模块

-m multiport
--source-ports
--destination-ports  用逗号分割,:表示连续,如果不使用该模块,则逗号表示连续,无法表示分割
-m range 用来表示连续的ip段
--src-range     *.*.*.*-*.*.*.*
--dst-range
-m connlimit 满足该条件则执行动作
--connlimit-above n  连接数上限为n
-m limit
--limit rate  连接速率 mintute/seconds 
--limit-burst 流量上限
-m recent 限制单位时间内单ip的请求次数
--set  表示记录   --name  NAME  记录到NAME模块
--seconds  n  单位时间  --hitcount   单位时间次数   --name  读取某模块

链引用

iptables –N 新建链
iptbales –I INPUT –j 链名   	引用链
iptbales –X 删除链

target

SNAT、DNAT

--to-source  	指定转换的源地址
--to-destination   指定转换的目标地址
iptables –t nat –A POSTROUTING  –s  *.*.*.*  -j SNAT –to-source  外网ip
iptables –t nat –A PREROUTING –d 外网ip -–j DNAT –to-destination 目标内网ip +端口




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

CentOS中iptables防火墙 开放80端口方法

iptables防火墙

iptables防火墙

iptables防火墙网路安全实践配置

Linux中iptables防火墙指定端口范围

Iptables 网络安全