iptables防火墙以及网络协议基本原理
一、 Linux 网络安全模型
1. 防火墙: 工作在主机或者网络边缘,对进出报文使用实现定义的规则进行检测,并且由匹配的规则进行处理的一组硬件或者软件。也可能两者结合。
1) 通常使用的防火墙设备
硬件防火墙:专门的一台防火墙硬件设备,工作在整个网络入口处。
软件防火墙:工作在主机中TCP/IP协议站上面的软件(工作在内核中)。
2) 防火墙工作位置
网络层:工作在网络层,类似路由器,主要拆除物理层和链路层协议,检测IP/TCP/UDP/ICMP网络层协和传输层协议首部,来进行规则定制
应用层:工作在应用层,拆除网络层和传输层首部,查看应用层内容。
2. IDS(Intrusion-detection system) 入侵检测系统
HIDS(主机入侵检测系统):OSSEC
NISC(网络入侵检测系统):snort(可以作为网络嗅探器)
Filesystem: 文件系统级别检测入侵检测
3. IPS(入侵防御系统): IDS + Firewall两者联动
4. honeypot:蜜罐系统,用于诱捕黑客,获取证据。
5. 系统安全漏洞漏洞扫描工具,进行系统安全评估:Nessus, nmap 等
6. rootkit:直接在系统层植入后门,将无法防护,只能重新安装系统 。
二、 iptables工作机制
1. iptables/netfilter:网络层防火墙,可以链接追踪状态(状态检测), 是一个规则编写工具。规则通过内核中netfilter框架产生作用。
2. 设置iptables防护的五个位置(hook_function
位置)以及允许规则(五链四表):
1) PREROUTING: 主机外报文进入位置,允许的表mangle, nat(目标地址转换,把本机地址转换为真正的目标机地址,通常指响应报文)
2) INPUT:报文进入本机用户空间位置,允许的表filter, mangle
3) OUTPUT:报文从本机用户空间出去的位置,允许filter, mangle, nat
4) FOWARD:报文经过路由并且发觉不是本机决定转发但还不知道从哪个网卡出去,允许filter,
mangle
5) POSTROUTING:报文经过路由被转发出去,允许mangle,nat(源地址转换,把原始地址转换为转发主机出口网卡地址)
四表: filter, nat , mangle, raw
五链:PREROUNTING, INPUT, FORWARD, OUTPUT, POSTROUTING
3. 表与链的对应关系
1) filter: INPUT, FORWARD, OUTPUT
2) nat: PREROUTING, OUTPUT, POSTROUTING
3) mangle: PREROUTING, INPUT, FORWARD, OUTPUT, POSTROUTING
4) raw:
4. 规则:匹配到后的处理机制
1) 通: 默认为堵, 只对规则匹配到的进行开放
2) 堵: 默认为同, 只对规则匹配到的堵
5. 网络层和传输层协议检查内容
1) IP:
SIP: 源IP
DIP: 目标IP
2) TCP:
SPORT: 源端口
DPORT:目标端口
Flags:标识位
3) ICMP: ICMP-TYPE (ping 命令)
6. 关于TCP协议标识位以及有限状态机图解
TCP协议通信时,伴随着标识位的相互传输,以及在各个状态之间的转换。这些标识位将成为规则检测的内容。
7. 扩展检测机制:
1)time(根据时间),
2)应用层协议(如qq)
3)string 敏感字符
4)state(connection-tracking) 连接追踪
8. 匹配到的报文处理机制:
1) DROP: 默默的丢弃
2) REJECT:拒绝,不建议使用,容易拉仇恨
3) ACCEPT:接受
4) SNAT: 源地址转换
5) DNAT:目标地址转换
6) REDIRECT: 端口映射
7) LOG:日志
8) RETURN: 返回
iptables防火墙以及网络协议基本原理的更多相关文章
- iptables (一) 主机防火墙和网络防火墙
Firewall : 防火墙,隔离工具:工作于主机或网络的边缘,对于进出本主机或网络的报文根据事先定义好的检测规则作匹配,对于能够被规则所匹配到的报文做出相应处理的组件:有主机防火墙和网络防火墙 Ip ...
- Netfilter/iptables防火墙
http://os.51cto.com/art/201107/273443.htm [51CTO独家特稿]Linux系统管理员们都接触过Netfilter/iptables,这是Linux系统自带的免 ...
- Linux iptables 防火墙
内容摘要 防火墙 防火墙定义 防火墙分类 netfilter/iptables netfilter 设计架构 iptables 简述 iptables 命令详解 命令语法 table 参数 comma ...
- 编译内核实现iptables防火墙layer7应用层过滤 (三)
在前面的两篇文章中我们主要讲解了Linux防火墙iptables的原理及配置规则,想博友们也都知道iptables防火墙是工作在网络层,针对TCP/IP数据包实施过滤和限制,属于典型的包过滤防火墙.以 ...
- 20条IPTables防火墙规则用法!
导读 管理网络流量是系统管理员必需处理的最棘手工作之一,我们必需规定连接系统的用户满足防火墙的传入和传出要求,以最大限度保证系统免受攻击.很多用户把 Linux 中的 IPTables 当成一个防火墙 ...
- Iptables防火墙规则使用梳理
iptables是组成Linux平台下的包过滤防火墙,与大多数的Linux软件一样,这个包过滤防火墙是免费的,它可以代替昂贵的商业防火墙解决方案,完成封包过滤.封包重定向和网络地址转换(NAT)等功能 ...
- Iptables防火墙规则使用
iptables是组成Linux平台下的包过滤防火墙,与大多数的Linux软件一样,这个包过滤防火墙是免费的,它可以代替昂贵的商业防火墙解决方案,完成封包过滤.封包重定向和网络地址转换(NAT)等功能 ...
- centos6.5下系统编译定制iptables防火墙扩展layer7应用层访问控制功能及应用限制QQ2016上网
iptables防火墙扩展之layer7应用层访问控制 概述: iptables防火墙是工作在网络层,针对TCP/IP数据包实施过滤和限制,属于典型的包过滤防火墙.以基于网络层的数据包过滤机制为主,同 ...
- CentOS 7中firewall防火墙详解和配置以及切换为iptables防火墙
官方文档介绍地址: https://access.redhat.com/documentation/en-US/Red_Hat_Enterprise_Linux/7/html/Security_Gui ...
随机推荐
- uva1352 Colored Cubes LA3401
白书第一章例题8 好麻烦! 正方体每面编号为0-5,那么根据顶点和正面,就能确定形态.一共6*4=24种形态. P[i]表示编号i所在位置.比如P[1]=3,表示第二面转到了第四面. 就可以表示出所有 ...
- 看云&gitbook 写帮助文档 | 专注于文档在线创作、协作和托管
看云 写帮助文档 | 专注于文档在线创作.协作和托管 https://www.kancloud.cn/manual/thinkphp/1678 https://www.gitbook.com/
- Linux常用的操作指令
1.pwd-显示当前所在位置 2.cd-进入当前目录 3.cd..-返回上一级目录 4..ls命令参数选项有很多,ls也是经常使用到的命令.如果不清楚命令的使用方式可以直接 ls --help来查看 ...
- 树状数组 || POJ 3321 Apple Tree
一道dfs序+树状数组的题 因为并没有get到dfs序以及对树状数组也不熟练卡了很久orz dfs序: in和out是时间戳 dfs序可以将树转化成为一个序列,满足区间 -> 子树 然后就可以用 ...
- 解决aspnet上传文件大小限制
<system.web> <httpRuntime executionTimeout="600" maxRequestLength="20480& ...
- Java笔记:编写第一个Java程序
2017.6.17 1.编写第一个Java程序 创建text文本,命名第一个Java程序.txt 在里面编写Java代码 public class Demo1{ public static void ...
- PHP 配置文件php.ini文件优化
PHP 5.3.3 safe_mode = On #控制php中的函数执行比如system() 这个函数可以调用系统目录 比如 rm ,打开这个配置之后,同时把很多文件操作的函数进行了权限控制 saf ...
- python中unicode, hex, bin之间的转换
python中unicode, hex, bin之间的转换 背景 在smb中有个feature change notify, 需要改动文件权限dacl,然后确认是否有收到notify.一直得不到这个d ...
- 03 数据解析-Xpath
Xpath解析 XPath在Python的爬虫学习中,起着举足轻重的地位,对比正则表达式 re两者可以完成同样的工作,实现的功能也差不多,但XPath明显比re具有优势,在网页分析上使re退居二线. ...
- LeetCode(14)Longest Common Prefix
题目 Write a function to find the longest common prefix string amongst an array of strings. 分析 该题目是求一个 ...