博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
iptables
阅读量:3702 次
发布时间:2019-05-21

本文共 1365 字,大约阅读时间需要 4 分钟。

马哥运维学习笔记。

iptables和netfilter,是一组工具,

前者用于定义过滤规则,后者才是真正过滤的,

对于TCP连接的状态,这次可以故事形式的讲下了,

这里假设A为链接发起者,B为。。。。非发起者,

故事肯定要从最开始讲起,

那就是A和B都是CLOSED,

B监听,所以变为LISTEN,

A要主动发起连接,所以就变为了SYN_SENT,(注意这里以及后面的SYN,)

B接收到了A的发起并回应后,当即转换为SYN_RECV,

A接收到了B的回应,A就变为ESTABLISTED,

B收到A的回应后,也变为ESTABLISTED,

A主动发送FIN信号,A等待B分手,此时A状态为TIME_WAIT1,

B呢,说,分手就分手,关闭就关闭,我也不怕你,于是回应ACK,此时B状态CLOSE_WAIT,

A收到B的ACK后,变为TIME_WAIT2,因为还要等B端也关闭,

说B,B就来了,B发送FIN信号,此时是B的最后一次关闭确认,状态变为LAST_ACK,

A端收到后,需要发送最后一个确认,同时让B有一个缓的时候,所以A暂时变为TIME_WAIT,

之后B就回到最初的CLOSED状态了,

防火墙工作在,主机or网络的边缘,

大多数成功的网络攻击,都是内贼,

默认规则,是开放还是关闭呢?

对于服务器,一般是拒绝未知报文,放行已知的报文,

网络的实现是在内核中的,

我们没法操作,

但是开放了TCP/IP的3个位置,内核出入,主机经过,

通过app命令,我们可以加载规则进去,

数据的方向有两个,一进一出,

其次,数据可能是路过本机,也可能是要进入本机内核中,

多个规则,自上而下,逐个检查,

为了高效,规则要少,

hook function,钩子函数,是5个,

input,

output,

forward,这3个是filter表,

preroutinng,

postouting,这2个是NAT表,

mangle表,

raw表,

iptalbes包含,4表5链,

这里记得把那张流程图,贴进来,

iptables命令的格式,以及用法,

iptables [-t TABLE] COMMAND CHAIN [num] 匹配标准 -j 处理办法

匹配标准:
通用匹配
-s, --src: 指定源地址
-d, --dst:指定目标地址
-p {tcp|udp|icmp}:指定协议
-i INTERFACE: 指定数据报文流入的接口
可用于定义标准的链:PREROUTING,INPUT,FORWARD
-o INTERFACE: 指定数据报文流出的接口
可用于标准定义的链:OUTPUT,POSTROUTING,FORWARD
扩展匹配
隐含扩展:不用特别指明由哪个模块进行的扩展,因为此时使用-p {tcp|udp|icmp}
显式扩展:必须指明由哪个模块进行的扩展,在iptables中使用-m选项可完成此功能
-j TARGET
ACCEPT
DROP
REJECT
iptables -t filter -A INPUT -s 172.16.0.0/16 -d 172.16.100.7 -j DROP

添加,一条规则到,过滤表,的INPUT链中,对于源地址是xxxx,目标地址是xxx的数据报,丢弃,

你可能感兴趣的文章
登录界面验证码的实现
查看>>
EL表达式
查看>>
Javaweb MVC设计模式、Modle发展史、项目分层和三层架构
查看>>
HTML表格和HTML表单
查看>>
JSP访问数据库,Session对象和九大内置对象
查看>>
Springboot分层图解
查看>>
并查集(Disjiont Set)
查看>>
Java操作HBase
查看>>
Linux编程考前测试题
查看>>
Openstack面试题和知识点总结
查看>>
C++ 实例化一个对象
查看>>
基于Spring boot+Vue的在线考试系统
查看>>
大数据学习路线
查看>>
前端学习路线
查看>>
推荐几个单机游戏下载网、高质量图片下载网
查看>>
数据库查询
查看>>
单臂路由配置
查看>>
静态路由及动态路由 RIP配置
查看>>
现代密码学:AES
查看>>
现代密码学:密码协议
查看>>