9、iptables 防火墙
1.iptables 基础规则
1.1.Linux 包过滤防火墙
netfilter
位于 Linux 内核中的包过滤功能体系
称为 Linux 防火墙的 “内核态”
iptables
位于 /sbin/iptables,用来管理防火墙规则的工具
称为 Linux 防火墙的 “用户态”
1.2.包过滤的工作层次
主要是网络层,针对 IP 数据包,体现在对包内IP地址、端口等信息的处理上

1.3.iptables 的表、链结构
规则链
规则的作用:对数据包进行过滤或处理
链的作用:容纳各种防火墙规则
链的分类依据:处理数据包的不同时机
默认包括 5 种规则链
INPUT:处理入站数据包
OUTPUT:处理出站数据包
FORWARD:处理转发数据包
POSTROUTING链:在进行路由选择后处理数据包(在做 NAT 时有用)
PREROUTING链:在进行路由选择前处理数据包(在做 NAT 时有用)
规则表
表的作用:容纳各种规则链
表的划分依据:防火墙规则的作用相似
默认包括 4 个规则表
raw 表:确定是否对该数据包进行状态跟踪(PREROUTING、OUTPUT)
mangle 表:为数据包设置标记(PREROUTING、POSTROUTING、INPUT、OUTPUT、FORWARD)
nat 表:修改数据包种的源、目标 IP 地址或端口(PREROUTING、POSTROUTING、OUTPUT)
filter 表:确定是否放行该数据包(过滤)(INPUT、FORWARD、OUTPUT)
1.4.数据包过滤的匹配流程
规则表之间的顺序:raw -> mangle -> nat -> filter
规则链之间的顺序:
入站:PREROUTING -> INPUT
出站:OUTPUT -> POSTROUTING
转发:PREROUTING -> FORWARD -> POSTROUTING
规则链内的匹配顺序:
按顺序依次检查,匹配即停止(LOG 策略例外)
若找不到相匹配的规则,则按该链的默认策略处理(默认策略是允许,如果修改为拒绝,就成白名单了)
访问的是服务器自身,则经过 input 到 output 走

2.iptables 基本语法
语法:iptables [-t 表名] 选项 [链名] [条件] [-j 控制类型]
eg:iptables -t filter -I INPUT -p icmp -j REJECT #禁 ping
注意:
不指定表名时,默认指 filter 表
不指定链名时,默认指表内的所有链
除非设置链的默认策略,否则必须指定匹配条件
选项、链名、控制类型使用大写字母,其余均为小写
2.1.数据包常见控制类型
ACCEPT:允许通过
DROP:直接丢弃,不给出任何回应
REJECT:拒绝通过,必要时会给出提示
LOG:记录日志信息,然后传给下一条规则继续匹配
2.2.iptables 管理选项
添加新的规则:
-A:在链的末尾追加一条规则
-I:在链的开头(或指定序号后一行)插入一条规则
eg:
iptables -t filter -A INPUT -p tcp -j ACCEPT
iptables -I INPUT -p udp -j ACCEPT
iptables -I INPUT 2 -p icmp -j ACCEPT
查看规则列表:
-L:列出所有的规则条目
-n:以数字形式显示地址、端口等信息
-v:以更详细的方式显示规则信息
--line-numbers:查看规则时,显示规则的序号
eg:iptables -n -L INPUT(iptables -nL INPUT)
删除、清空规则:
-D:删除链内指定序列号(或内容)的一条规则
-F:清空所有的规则(-t:指定清空某个规则表的规则)
eg:
iptables -D INPUT 3
iptables -t nat -F
设置默认策略:
-P:为指定的链设置默认规则
eg:iptables -t filter -P OUTPUT ACCEPT(默认策略要么是 ACCEPT,要么是 DROP)
9、iptables 防火墙的更多相关文章
- CentOS系统配置 iptables防火墙
阿里云CentOS系统配置iptables防火墙 虽说阿里云推出了云盾服务,但是自己再加一层防火墙总归是更安全些,下面是我在阿里云vps上配置防火墙的过程,目前只配置INPUT.OUTPUT和FO ...
- 关闭SELinux和iptables防火墙
1.关闭SELinux: 编辑SELinux配置文件: [root@Redis selinux]# vim /etc/selinux/config 修改SELINUX配置项为disable SELIN ...
- CentOS 7.0,启用iptables防火墙
CentOS 7.0默认使用的是firewall作为防火墙,这里改为iptables防火墙. 1.关闭firewall: systemctl stop firewalld.service #停止fir ...
- 编译内核实现iptables防火墙layer7应用层过滤 (三)
在前面的两篇文章中我们主要讲解了Linux防火墙iptables的原理及配置规则,想博友们也都知道iptables防火墙是工作在网络层,针对TCP/IP数据包实施过滤和限制,属于典型的包过滤防火墙.以 ...
- [CentOs7]iptables防火墙安装与设置
摘要 CentOS 7.0默认使用的是firewall作为防火墙,如果改为iptables防火墙,如何操作? 关闭firewall: systemctl stop firewalld.service ...
- iptables防火墙作为基本需求的配置
企业中使用iptables防火墙:(一般不要在命令中输入规则) # Firewall configuration written by system-config-firewall# Manual c ...
- [moka同学摘录]iptables防火墙规则的添加、删除、修改、保存
文章来源:http://www.splaybow.com/post/iptables-rule-add-delete-modify-save.html 本文介绍iptables这个Linux下最强大的 ...
- linux 的iptables防火墙
.a文件就是*.o文件的集合, 是object文件的归档文件, 所以, 用nm -A ???.a看到的 symbolic符合名称都是 相应的, 包含的 .o文件.... linux 2.4内核中 ...
- 使用iptables防火墙限制web的访问PV
使用iptables防火墙限制web的访问PV #!/bin/bash while true;do awk '{print $1}' /tmp/test/access.log| grep -v &qu ...
- Netfilter/iptables防火墙
http://os.51cto.com/art/201107/273443.htm [51CTO独家特稿]Linux系统管理员们都接触过Netfilter/iptables,这是Linux系统自带的免 ...
随机推荐
- 基于vivado中AXI的模型分析
基于vivado中AXI的模型分析 1.底层代码 `timescale 1 ns / 1 ps module myip_v1_0_S00_AXI # ( // Users to add paramet ...
- 国民经济行业分类与代码(GB/T 4754-2017、GB/T 4754-2011、GB/T 4754-2002)数据下载
2002_2011_2017国民经济行业分类与代码mysql数据四级分类文件.rar 内容:其中包含2002.2011.2017三年国民经济行业分类和代码的MySQL文件,每一个表的格式如下:例如第一 ...
- Final Countdown 题解
Problem Link 简要题意 把一个数不断减一直到变成零,每个数位变化一次需要一秒. 比如 \(300\) 变成 \(299\) 需要 \(3\) 秒. 求把一个数变成零要多少秒. 思路 对于每 ...
- #矩阵乘法,斐波那契#洛谷 2544 [AHOI2004] 数字迷阵
题目 分析 oeis找规律得到第一列和第二列的通项公式,然后矩阵乘法 代码 #include <cstdio> #include <cctype> #include <c ...
- java深入理解浅拷贝和深拷贝
目录 简介 拷贝接口 使用clone导致的浅拷贝 使用clone的深拷贝 不要overridden clone 总结 简介 拷贝对象是java中经常会遇到的问题.java中存在两种类型,基础类型和引用 ...
- 深入了解图片Base64编码
title: 深入了解图片Base64编码 date: 2024/4/8 10:03:22 updated: 2024/4/8 10:03:22 tags: Base64编码 图片转换 HTTP请求 ...
- Docker 13 网络
Linux 网络 查看本地网络信息: [root@sail ~]# ip addr 1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueu ...
- 开源数据库OpenGauss的SQL解析源码分析
开源数据库 OpenGauss 的 SQL 解析源码分析 OpenGauss 数据库体系概述 openGauss 是关系型数据库,采用客户端/服务器,单进程多线程架构:支持单机和一主多备部署方式,同时 ...
- 【我与openGauss的故事】如何管理数据库安全(第一部分)
前言 2021 年 6 月 10 日国家颁布数据安全法对我们国家来说具有重大意义 信息安全法 梳理几点重要意义: (一) 对数据的有效监管实现了有法可依,填补了数据安全保护立法的空白,完善了网络空间安 ...
- os.path.splitext
os.path.splitext是Python标准库中的一个函数,它可以将一个文件路径拆分成两部分:文件名和文件扩展名.例如: 点击查看代码 import os file_path='avercrop ...