Linux防火墙简介及iptables的基本使用
一、防火墙基础知识
iptables/netfilter:网络防火墙,连接追踪(状态检测)
netfilter:工作内核中,让规则能够生效的网络框架(framework)
iptables:防火墙规则编写工具,工作与用户空间,编写规则并且发送到netfilter
所有的规则都在hook_function的函数中
PREROUTING:mangle、nat
INPUT:filter、mangle
OUTPUT:filter、nat、mangle
FORWARD:filter、mangle
POSTROUTING:mangle、nat
过滤:筛选
NAT:Network Address Translation(地址转换)
DNAT(目标地址转换)
SNAT(原地址转换)
mangle
raw
四表:filter、nat、mangle、raw
五链:PREROUTING、INPUT、FORWARD、OUTPUT、POSTROUTING
表和链的对应关系:
filter:INPUT、FORWARD、OUTPUT
nat:PREROUTING、OUTPUT、POSTROUTING
mangle:PREROUTING、INPUT、FORWARD、OUTPUT、POSTROUTING
规则:检查条件,处理机制
防火墙的策略:通(默认为堵,只对能识别的进行放行)
堵(默认为通,只对能识别的进行阻截)
检查条件:
IP:SIP,DIP
TCP:SPORT,DPORT,Flags(ACK,SYN,FIN,RST,PSH,URG)
UDP:SPORT,DPORT
ICMP:ICMP-TYPE
扩展机制:
time,string,state(connection-tracking)连接追踪
处理机制
DROP,REJECT,ACCEPT,SNAT,DNAT,RETURN,FORWARD,REDIRECT(端口转发),LOG
二、iptables工具使用说明
iptables [-t table] -N chain
创建一条自定义的规则链
iptables [-t table] -X [chain]
删除一条自定义的空规则链,如果不为空可以先用-F清空再删除
iptables [-t table] -E old-chain-name new-chain-name
修改自定义规则链的名称
iptables [-t table] -P chain target
为链指定默认策略,指定默认规则
iptables [-t table] {-F|-L|-Z} [chain [rulenum]] [options...]
-F:清空链中的规则
规则有编号,在链中自上而下,从1开始;
-L:list,列出表中的所有规则;
-n:数字格式显示IP和Port
-v:显示详细信息
pkts bytes target prot opt in out source destination
pkts:packets,被本规则所匹配到的报文的个数
bytes:被本规则所匹配到的所有报文的大小之和,单位字节
target:目标,即处理机制
prot:协议,一般为{TCP|UDP|ICMP}
opt:可选项
in:数据包的流入接口
out:数据包的流出接口
source:源地址
destination:目标地址
-vv:显示更详细信息
-vvv:显示更更详细信息
-x:exactly:精确值,不执行单位换算
--line-numbers:显示个规则的行号
-Z:zero,清零
iptables [-t table] {-A|-D} chain rule-specification
-A:append,附加一条规则
rule-specification
匹配条件 -j 处理机制
匹配条件:
通用匹配:
-s|--src|--source: 匹配原地址,可以IP,也可以网络地址;可以使用!取反, ! 192.168.1.0/24
-d|--dst|--destination:匹配目标地址,可以IP,也可以网络地址;可以使用!取反, ! 192.168.1.0/24
-p:匹配协议,通常只是用{TCP|UDP|ICMP}三者之一
-i:数据报文流入的接口,通常只用于INPUT,FORWARD和 PREROUTING
-o:数据报文流出的接口,通常只用于OUTPUT,FORWARD和POSTROUTING
删除规则:
iptables [-t table] -D chain rulenum
插入规则:
iptables [-t table] -I chain [rulenum] rule-specification
替换指定规则:
iptables [-t table] -R chain rulenum rule-specification
只显示指定链上的规则添加命令:
iptables [-t table] -S [chain [rulenum]]
保存规则:
service iptables save
规则会被保存至/etc/sysconfig/iptables文件中
start时也会读取此文件中的内容以设置规则
保存规则
# iptables-save > /path/to/some_rulefile
重新生效规则
# iptables-restore < /path/to/some_rulefile
Linux防火墙简介及iptables的基本使用的更多相关文章
- Linux防火墙简介 – iptables配置策略
Linux防火墙简介 – iptables配置策略 Netfilter/iptables简介 要想真正掌握Linux防火墙体系,首先要搞清楚Netfilter和iptables的关系,Netfilte ...
- LINUX防火墙firewall、iptables
(1) 重启后永久性生效: 开启: systemctl enable iptables.service'.ln -s '/usr/lib/systemd/system/iptables.service ...
- Linux防火墙firewall和iptables的使用
防火墙是整个数据包进入主机前的第一道关卡. Linux中有两种防火墙软件,ConterOS 7.0以上使用的是 firewall,ConterOS 7.0以下使用的是 iptables,本文将分别介绍 ...
- Linux 防火墙:Netfilter iptables
一.Netfilter 简介 (1) Netfilter 是 Linux 内置的一种防火墙机制,我们一般也称之为数据包过滤机制,而 iptables 只是操作 netfilter 的一个命令行工具(2 ...
- 7、linux防火墙的使用(iptables)
7.1.说明: CentOS 7 系统默认的防火墙是 Filewalld.不过,现在应该还有很多用户习惯使用 iptables.本文以 CentOS 7 为例, 说明在 CentOS 7 中如何安装并 ...
- Linux 防火墙 开放 端口 iptables
查看状态:iptables -L -n 方法1.使用iptables开放如下端口/sbin/iptables -I INPUT -p tcp --dport 8000 -j ACCEPT保存/etc/ ...
- linux iptables 防火墙简介
iptables防火墙简介 Netfilter/Iptables(以下简称Iptables)是unix/linux自带的一款优秀且开放源代码的安全自由的基于包过滤的防火墙工具,它的功能十分强大,使用非 ...
- linux 防火墙 iptables 目录
linux iptables 防火墙简介 Linux 防火墙:Netfilter iptables 自动化部署iptables防火墙脚本
- linux 防火墙基本使用
写在最前面 由于工作后,使用的Linux就是centos7 所以,本文记录是是centos7的防火墙使用. 从 centos7 开始,系统使用 firewall 进行防火墙的默认管理工具. 基本使用 ...
随机推荐
- 事件(event),正则
1.事件(event):事件是可以被 JavaScript 侦测到的行为.网页中的每个元素都可以产生某些可以触发 JavaScript 函数的事件.2.事件源: 触发事件的元素 事件: 被 JavaS ...
- Graphics2D字符串根据文本框缩小字体自动换行
/** * *描述: 长字符串缩小字体自动换行 *@param g *@param text 字符串 *@param lineWidth 单元格宽度 *@param cellHeight 单元格高度 ...
- c4,configure the debug environment
Yesterday I found a tiny C compiler (less than 600 line of C code, containing commits) called " ...
- Android 中dp和px
dp是虚拟像素,在不同的像素密度的设备上会自动适配,比如: 在320x480分辨率,像素密度为160,1dp=1px 在480x800分辨率,像素密度为240,1dp=1.5px 计算公式: 1dp* ...
- ios开发之网络php
接着前面的学习,几天上午学习了数据库网络值php用户的注册与登录,感觉代码与ios上的oc太相似了,因此学习下来没什么障碍了,下面是代码: 首先是javascript.html文件中: <!DO ...
- MFC之TreeCtrl控件使用经验总结
树形控件可以用于树形的结构,其中有一个根接点(Root)然后下面有许多子结点,而每个子结点上有允许有一个或多个或没有子结点.MFC中使用CTreeCtrl类来封装树形控件的各种操作.通过调用BOOL ...
- 古典问题rabbit
/**古典问题: * 有一对兔子,从出生后第三个月起每个月都生一对兔子, * 小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死, * 问每个月的兔子总数为多少? * 程序分析:兔子的规律为数列: ...
- flex(兼容写法)
CSS样式 flex:定义布局为盒模型 flex-v:盒模型垂直布局 flex-1:子元素占据剩余的空间 flex-align-center:子元素垂直居中 flex-pack-center:子元素水 ...
- BaseDao代码,用于连接数据库实行增删改查等操作
在学习JavaWeb时会用到此代码,用于实行增删改查操作 1 package com.bdqn.dao; import java.sql.Connection; import java.sql.Dri ...
- linux命令:df
1.命令介绍: df用来检测磁盘空间占用情况. 2.命令格式: df [选项] 文件 3.命令参数: 必要参数: -a 全部文件系统列表 -h 方便阅读方式显示 -H 等于“-h”,但是计算式,1K= ...