iptables介绍
iptables 是通过分析数据包的包头信息,根据包头中的信息是否匹配到一定的规则,在对这些数据进行放行、拒绝或者丢弃等动作
包头信息:
源地址
目标地址
源端口
目标端口
源mac
目标mac
TCP 的状态
防火墙可以阻断那些攻击
可以防止某些机器访问本机
可以拒绝某些机器访问本机的某个端口
可以子运行某些机器访问本地的某个(某几个)端口
进行端口转发
进行NAT网络地址转换
防火墙不能做什么事情
不能防止内部机器的攻击(不是绝对的)
不能从正常的数据包中检测到是否有木马病毒等
防火墙仅仅处理的是OSI七层模型的 2、3、4
mac
IP
port
解决办法:
入侵检测系统
四表五链是哪几个表,那几个链
有多个表,每个表有自己的规则,每个表格用途都不同
Filter 过滤器 与本机有关的(input、output、forward)
nat 地址转换 与内部网络有关(prerouting,postrouting,output)
mangle 破坏者 与标记有关的(prerouting、output)
raw 优先级最高,设置raw是一般是为了不再让iptables做数据包的链接跟踪处理,提高性能 流量大,访问80不过其他的表
四表
Filter 过滤器 与本机有关的
nat 地址转换 与内部网络有关
mangle 破坏者 与标记有关的
raw 优先级最高,设置raw是一般是为了不再让iptables做数据包的链接
五链
input、output、forward、prerouting、postrouting
iptables 如何查看规则
iptables -nL
-t :后面接 table ,例如 nat 或 filter ,若省略此项目,则使用预设的 filter
-L :列出目前的 table 的规则
-n :不进行 IP 与 HOSTNAME 的反查,显示结果的速度会快很多!
-v :列出更多的信息,包括通过该规则的数据包总位元数、相关的网路接口等
iptables 如何清除目前的规则
iptables [-t tables] [-FXZ]
选项与参数:
-F :清除所有的已设置的规则;
-X :杀掉所有用户 “自定义” 的 chain;
-Z :将所有的 chain 的计数与流量统计都归零