资料:
网络运维相关 - iptables 【Main】
https://www.zsythink.net/archives/tag/iptables/
netfilter 在 Linux 内核 TCP/IP协议栈中的位置 【框架】【Aulaxiry】
https://zhuanlan.zhihu.com/p/93630586

1 概念详解

● 防火墙概念
○ 主机防火墙 + 网络防火墙
○ 硬件防火墙 + 软件防火墙
○ iptables 客户端代理 + netfilter 安全框架(真正的防火墙,位于内核空间)
○ 作用:封包过滤、数据内容修改、网络地址转换(NAT)
● iptables基础
○ 按规则执行指定动作
■ 源地址、目的地址、传输协议、服务类型;
■ 放行、拒绝、丢弃
● 链的概念
○ prerouting + input + output + forward + postrouting
● 表的概念
○ filter表:负责过滤功能,防火墙;内核模块:iptables_filter
○ nat表:network address translation,网络地址转换功能;内核模块:iptable_nat
○ mangle表:拆解报文,做出修改,并重新封装 的功能;iptable_mangle
○ raw表:关闭nat表上启用的连接追踪机制;iptable_raw
● 表链关系
○ 不同链上表的类型不同 , 表是功能,链是钩子
■ raw : PREROUTING,OUTPUT
■ mangle :PREROUTING,INPUT,FORWARD,OUTPUT,POSTROUTING
■ nat :PREROUTING,OUTPUT,POSTROUTING(centos7中还有INPUT,centos6中没有)
■ filter:INPUT,FORWARD,OUTPUT
○ 每个链上规则的匹配次序:raw –> mangle –> nat –> filter
○ 自定义链: 针对特定的应用程序,可以当做动作链入到默认的链
● 数据包经过防火墙的流程:

● 规则的概念
○ 匹配条件 + 处理动作组成
○ 匹配条件: 基本匹配条件 (src ip , dst ip 等)+ 扩展匹配条件 ( src port ,dst port 等)
○ 处理动作: ACCEPT DROP REJECT SNAT MASQUERADE DNAT REDIRECT LOG

2 iptables操作-规则查询

● 表查询操作
○ iptables -t raw -L
○ iptables -t mangle -L
○ iptables -t nat -L
○ iptables -t filter -L 查看 filter表中的内容:

■ 不同应用场景操作filter中的链不一样,禁止IP的访问需要在Iput链中设置。
■ 不指定 -t 默认 filter , iptables -L INPUT ; 
■ iptables -vL INPUT 可以查看更多信息 -v■ iptables -vnL  不对名称反解 -n

○ iptables常用命令:
■ iptables -t 表名 -L
■ iptables -t 表名 -L 链名
■ iptables -t 表名 -v -L
■ iptables -t 表名 -n -L
■ -x 选项表示显示计数器的精确 ; –line 显示规则的序号

3 iptables操作-规则管理

对iptables进行”增、删、改”操作
演示:
● 清空某个链的规则:iptables -F INPUT , 默认全部放行

● 增加规则
○ iptables -t fileter -I INPUT -s 192.168.1.146 -j DROP ( -I 首部插入 -j匹配 )
○ iptables -t fileter -A INPUT -s 192.168.1.146 -j ACEEPT ( -A 末尾追加 )
○ 规则增加有顺序之分:
■ iptables -t fileter -I INPUT 2 -s 192.168.1.146 -j ACEEPT (-I INPUT 2:编号2)
● 删除规则
○ 根据规则的编号去删除规则
■ iptables -t filter -D INPUT 3
○ 根据具体的匹配条件与动作删除规则
■ iptables -D INPUT -s 192.168.1.146 -j ACEEPT
○ 清空链上所有规则/清空
■ iptables -t tablename -F / chainName
● 修改规则
○ 可以先删除某条规则,再进行增加这么操作,直接修改可能会有操作上的风险,不建议。
○ 主要使用-R即可
■ iptables -t filter -R INPUT 1 -s 192.168.1.146 -j REJECT (-s 必须带,无论指定1)
● 保存规则
○ centos6中 :
■ service iptables save 保存在 /etc/sysconfig/iptables
■ iptables-save > /etc/sysconfig/iptables
■ iptables-restore < /etc/sysconfig/iptables (载入规则)
○ ubuntu中:
■ sudo netfilter-persistent save /save6 (需要安装iptables-persistant)
■ /etc/iptables/rules.v4 # IPv4规则 / v6

4 iptables匹配条件

基本匹配条件:
● 源IP
○ -s ip ; -s ip,ip; -s ip/16 设置单IP 多个IP 网段
○ ! -s ip ; 相当于取反

● 目标IP
● 协议类型
● 网卡接口
○ -i选项用于匹配报文从哪个网卡流入
○ -o选项用于匹配报文将从哪个网卡流出

扩展匹配条件:
● tcp扩展模块
iptables -t filter -I OUTPUT -d 192.168.1.146 -p tcp -m tcp --sport 22 -j REJECT
iptables -t filter -I INPUT -s 192.168.1.146 -p tcp -m tcp --dport 22:25 -j REJECT
iptables -t filter -I INPUT -s 192.168.1.146 -p tcp -m tcp --dport :22 -j REJECT
iptables -t filter -I INPUT -s 192.168.1.146 -p tcp -m tcp --dport 80: -j REJECT
iptables -t filter -I OUTPUT -d 192.168.1.146 -p tcp -m tcp ! --sport 22 -j ACCEPT
● multiport扩展模块
iptables -t filter -I OUTPUT -d 192.168.1.146 -p udp -m multiport --sports 137,138 -j REJECT
iptables -t filter -I INPUT -s 192.168.1.146 -p tcp -m multiport --dports 22,80 -j REJECT
iptables -t filter -I INPUT -s 192.168.1.146 -p tcp -m multiport ! --dports 22,80 -j REJECT
iptables -t filter -I INPUT -s 192.168.1.146 -p tcp -m multiport --dports 80:88 -j REJECT
iptables -t filter -I INPUT -s 192.168.1.146 -p tcp -m multiport --dports 22,80:88 -j REJECT

5 iptables黑白名单

当链的默认策略为ACCEPT时,链中的规则对应的动作应该为DROP或者REJECT,表示只有匹配到规则的报文才会被拒绝,没有被规则匹配到的报文都会被默认接受,这就是”黑名单”机制。

当链的默认策略为DROP时,链中的规则对应的动作应该为ACCEPT,表示只有匹配到规则的报文才会被放行,没有被规则匹配到的报文都会被默认拒绝,这就是”白名单”机制。

白名单机制似乎更加安全一些,黑名单机制似乎更加灵活一些。

6 iptables防火墙

iptables往往作为主机防火墙,此处讲解为 如何作为网络防火墙

7 iptables动作总结2

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.pswp.cn/news/917367.shtml
繁体地址,请注明出处:http://hk.pswp.cn/news/917367.shtml
英文地址,请注明出处:http://en.pswp.cn/news/917367.shtml

如若内容造成侵权/违法违规/事实不符,请联系英文站点网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

飞书推送工具-自动化测试发送测试报告一种方式

飞书推送工具 要获取飞书开发所需的 APP_ID、APP_SECRET 以及用户的 USER_ID&#xff0c;需通过飞书开放平台和飞书客户端的相关设置操作。以下是详细步骤&#xff1a; 一、获取 APP_ID 和 APP_SECRET&#xff08;飞书应用凭证&#xff09; APP_ID 和 APP_SECRET 是飞书开放…

从零开始的云计算生活——第三十七天,跬步千里,ansible之playbook

目录 一.故事剧情 二.Playbook简介 三.Playbook核心元素(重要) 四.Playbook语法 五.Playbook的运行方式 六.Playbooks中tasks语法使用 1、file 2、lineinfile 3、replace 4、shell 5、debug 6、template/copy 7、fetch 8、unarchive 9、wait_for 10、yum 11、…

AI驱动下的数据新基建:腾讯游戏数据资产治理与湖仓架构革新

在大模型技术迅猛发展的今天&#xff0c;AI 正深度重塑数据基础设施&#xff0c;推动其向智能化快速演进。如何将 AI 深度融入数据管理&#xff0c;释放数据的潜在价值、提升运营效率&#xff0c;成为企业在构建 AI 驱动的数据资产管理体系的核心问题。在近期举办的“DataFun A…

ubuntu 系统风扇控制软件 CoolerControl

背景 A6000显卡的温度一直都是86度左右&#xff0c;GPU的风扇转速不够大。 我首先把 nvidia的驱动更新了&#xff0c;但是发现风扇依然依然保持在较低的转速。 后面无意间搜到了CoolerControl 这个linux平台的风扇控制软件。设置之后&#xff0c;增加了风扇的转速&#xff0c;…

Oracle 11gR2 Clusterware应知应会

Oracle 11gR2 Clusterware应知应会 关键特性 启动顺序 日志路径 资源状态 资源管理 关键特性 📖 Oracle 11gR2 Clusterware的一些关键特性如下: 在安装运行11gR2的Real Application Clusters数据库之前需要先安装11gR2 Clusterware。 GRID home包括Oracle Clusterware和AS…

微信小程序苹果手机和安卓,怎么做适配

1. 基于 rpx 单位进行布局适配微信小程序采用 rpx 作为尺寸单位&#xff0c;以实现不同设备的布局适配。小程序的屏幕宽度固定为 750rpx&#xff0c;在不同设备上通过动态计算 1rpx 对应的像素值进行适配。例如&#xff0c;在 iPhone 6 中&#xff0c;屏幕宽度为 375px&#xf…

XGBoost三部曲:XGBoost参数详解

之前已经介绍了XGBoost三部曲:XGBoost原理。本文详细介绍XGBoost参数,让大家在使用XGBoost的过程中能得心应手。后续会更新XGBoost实战,敬请期待。 文章目录 一、核心概念回顾 二、XGBoost算法参数整体介绍 1 原生接口和Scikit-learn接口的区别 2 参数分类详解 三、核心Boos…

【python】转移本地安装的python包

我们现在需要将某个环境已经安装的 python 包离线传递到另外一个环境&#xff0c;且确保这种安装行为最终不需要对 PYPI 中央仓库的有效连接&#xff0c;也能完成。下面给出两种办法&#xff1a; docker container 如果你的 python 环境位于某个容器内&#xff0c;那最好的办法…

TGD第十篇:当神经网络遇到TGD特征

目录一、实验背景二、实验设置三、实验结果和分析四、结语TGD 是我们定义的一种新的“变化率表征”&#xff0c;对连续函数而言是一种新的“广义导数”&#xff0c;对离散序列而言是一种新的差分。TGD 是一个名字&#xff0c;一个代号。在基于 TGD 的图像边缘检测以及视频边缘检…

FreeRTOS源码分析二:task启动(RISCV架构)

系列文章目录 FreeRTOS源码分析一&#xff1a;task创建&#xff08;RISCV架构&#xff09; 文章目录系列文章目录前言vTaskStartScheduler 调度器启动函数xPortStartScheduler架构特定调度器启动函数vPortSetupTimerInterrupt启动 RISCV 定时器中断xPortStartFirstTask启动第一…

Python编程基础与实践:Python基础运算符与表达式入门

Python运算符与表达式实战 学习目标 通过本课程的学习&#xff0c;学员可以掌握Python中算术运算符、比较运算符、逻辑运算符及赋值运算符的使用方法&#xff0c;并能够构建简单的表达式来解决实际问题。 相关知识点 Python运算符与表达式 学习内容 1 Python运算符与表达式 1.1…

Git下载全攻略(未更新完)

一、在 Windows 上安装 Git​ ​​​ 1.1 下载安装包​ 官方版本可在 Git 官方网站下载,打开Redirecting…,下载会自动开始。此安装包来自名为 Git for Windows 的项目(也称作 msysGit),它与 Git 本身是相互独立的项目,更多相关信息可访问Redirecting Git for Windows…

rocky\centos安装docker镜像的命令

1.安装依赖&#xff1a; sudo yum install -y yum-utils device-mapper-persistent-data lvm22. 选择仓库源&#xff1a; sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo阿里源&#xff1a; sudo yum-config-manager --add-r…

扣子,正式拥抱开源!

资料来源&#xff1a;火山引擎-开发者社区 扣子 是新一代 AI Agent 平台&#xff0c;旗下有四款子产品&#xff1a;「扣子空间」、「扣子开发平台」、「扣子罗盘」 及 Eino 。 我们始终坚信&#xff0c;AI Agent 的未来属于每一位开发者和创造者。为了让前沿的 AI 技术能够更快…

Git 各场景使用方法总结

以下是对 Git 各场景使用方法的全面总结,涵盖 20+ 核心场景和 100+ 命令,包含详细参数、使用示例及原理说明: 一、基础操作场景 1. 仓库初始化 # 本地初始化 git init git init --bare # 创建裸仓库(无工作区) git init -b main # 指…

国际标准组织共聚,智源推动全球AI开源与国际标准双轮驱动人工智能普惠化发展

7 月 26 日&#xff0c;人工智能标准化国际合作论坛在上海召开。该论坛由联合国工业发展组织全球工业人工智能联盟卓越中心主办&#xff0c;中国电子技术标准化研究院、上海人工智能研究院承办&#xff0c;工业和信息化部副部长单忠德、国家市场监督管理总局标准创新管理司司长…

《安富莱嵌入式周报》第356期:H7-TOOL的250M示波器模组批量生产中,自主开发QDD执行器,开源14bit任意波形发生器(2025-07-28)

周报汇总地址&#xff1a;嵌入式周报 - uCOS & uCGUI & emWin & embOS & TouchGFX & ThreadX - 硬汉嵌入式论坛 - Powered by Discuz! 视频版 《安富莱嵌入式周报》第356期&#xff1a;H7-TOOL的250M示波器模组批量生产中&#xff0c;自主开发QDD执行器&a…

大模型学习专栏-导航页

概要 本专栏是小编系统性调研大模型过程中沉淀的知识结晶&#xff0c;涵盖技术原理、实践应用、前沿动态等多维度内容。为助力读者高效学习&#xff0c;特整理此导航页&#xff0c;以清晰脉络串联核心知识点&#xff0c;搭建起系统的大模型学习框架&#xff0c;助您循序渐进掌握…

leetcode热题——组合

组合题目描述给定两个整数 n 和 k&#xff0c;返回范围 [1, n] 中所有可能的 k 个数的组合。你可以按 任何顺序 返回答案。示例 1&#xff1a; 输入&#xff1a;n 4, k 2 输出&#xff1a; [ [2,4], [3,4], [2,3], [1,2], [1,3], [1,4] ]示例 2&#xff1a; 输入&#xff1a;…

暑期算法训练.13

目录 57 力扣14最长公共前缀 57.1 题目解析&#xff1a; 57.2 算法思路 57.3 代码演示&#xff1a; ​编辑 57.4 总结反思&#xff1a; 58 力扣 5最长回文字符串 58.1 题目解析&#xff1a; ​编辑 58.2 算法思路&#xff1a; 58.3 代码演示&#xff1a; ​编辑 …