自动化防火墙放行目标域名IP
#!/bin/bash
# 设置要获取IP地址的域名
domain="yourdomain.com"# 获取域名的IP地址
new_ip=$(dig +short A $domain)# 移除之前添加放行的IP地址(通过备注找它的编号)
rule_number=$(iptables -L INPUT -n --line-numbers -v | awk -v domain="${domain}" '$0 ~ "Allow from " domain {print $1}')# 如果有就删除
if [ -n "$rule_number" ]; theniptables -D INPUT $rule_number
fi# 添加新的IP地址到iptables规则(带备注)
iptables -A INPUT -s $new_ip -m comment --comment "Allow from $domain" -j ACCEPT#保存规则,如果有docker请省略这一步
service iptables save
正则表达式部分的解释:
- Allow from : 这是一个固定的文本字符串,表示规则中的注释内容开始部分。
- domain: 这是一个变量,其中存储了您要匹配的注释内容。在命令中使用-v选项将该变量传递给awk命令。
- ~操作符: 在awk中,~操作符用于进行模式匹配。
- $0: 这是awk中的一个特殊变量,表示整个输入行。
- ~操作符后面的部分 "Allow from " domain 是我们的模式。它指示awk在输入行中查找以"Allow from
"开头,后面跟着domain变量的内容的部分。
因此,使用模式"Allow from " domain,我们可以匹配包含所需注释的规则行。一旦找到匹配的行,print $1将打印该行的第一个字段,即规则行号。
有docker为啥不保存:
在使用Docker时,iptables规则是由Docker自动管理的。Docker使用自己的网络桥接和转发机制来管理容器之间的通信,它会自动更新iptables规则以适应容器的网络需求。
当你运行service iptables save命令时,它会尝试保存当前系统的iptables规则到配置文件中,但是这个命令不会考虑Docker所管理的规则。
如果你希望保存Docker所管理的iptables规则,你可以使用Docker自带的命令来实现。例如,使用docker save命令将Docker的iptables规则保存到文件中,然后在需要的时候使用docker load命令重新加载规则。
另外,从Docker 1.13版本开始,Docker引入了新的命令docker save和docker load,用于保存和加载容器的状态,包括网络规则。这样你就可以使用docker save命令保存Docker的状态,并在需要的时候使用docker load命令重新加载状态,包括iptables规则。
总之,如果你在使用Docker,并且希望保存iptables规则,建议使用Docker提供的相关命令来管理和保存规则。
相关文章:
自动化防火墙放行目标域名IP
#!/bin/bash # 设置要获取IP地址的域名 domain"yourdomain.com"# 获取域名的IP地址 new_ip$(dig short A $domain)# 移除之前添加放行的IP地址(通过备注找它的编号) rule_number$(iptables -L INPUT -n --line-numbers -v | awk -v domain&quo…...
12.2RAC环境从RAC转为单机模式的问题处理
近期,在某用户的测试环境,需要将RAC转为单机模式,然后进行数据恢复;一开始只是将数据库软件通过make -f ins_rdbms.mk rac_off 和 make -f ins_rdbms.mk ioracle关闭RAC模式;然后在启动数据库(sqlplus / a…...
Docker 中 jdk8容器里无法使用 JDK 的 jmap 等命令的问题
一、问题描述 项目部署在 CentOS 服务器上。项目偶尔会出现无响应的情况,这时理所当然要上去用 JDK 相关命令看看堆栈和GC等信息了。 进入 Java 程序所在容器:docekr-compose exec api bash,进入到 api 容器的 bash 终端。 jps 打印 Java …...
typeScript--[es6class类实现继承]
一.js中实现继承 // js实现继承 // 父类 function Father(name) {this.name namethis.say function () {console.log(this.name "在唱歌")} } var f new Father("逍遥的码农")// 子类 function Son(name) {Father.call(this, name) } Son.prototype …...
解决eclipse的报错:Must declare a named package because this compilation
刚安装完成eclipse, 创建类的时候报错 报错信息如下: 原因:新版本的ECLIPSE要求每一个类都必须定义在包里面 解决方法:创建类的时候指定类的名字,如下图:Package 里面填写ch3,表示包名 创建完成…...
linux sed常用各种操作大全
经常使用,但有些总记不全,有时候经常查找,这次全部捋清楚做备忘,有需要的小伙伴欢迎收藏起来哦! 查、增、改、删一应俱全,非常详细! 目录 一、查看 查看第2行 查看第2行到第3行 查看第1行、…...
通过 Keycloak 结合 OAuth2.0协议进行 Amazon API Gateway 鉴权
1. 简介 本文介绍了如何通过 Keycloak,并结合 Amazon API Gateway 内置的授权功能,完成对 Amazon 资源请求的鉴权过程。API Gateway 帮助开发者安全的的创建、发布、维护并管理 API 的访问。在中国区,由于Cognito 仍未上线,因此使…...
修复中间件log4j漏洞方案(直接更换漏洞jar包)
说明: 后台服务里面的log4j漏洞我们已经全部升级处理了,但是一些中间件镜像包里的log4j漏洞需要单独处理 解决办法以ElasticSearch7.6.2为例: 方法: (1)找到容器里面有哪些旧的log4j依赖包 (…...
怎么压缩pdf文件大小?详细压缩步骤
怎么压缩pdf文件大小?在日常的工作和学习中,我们频繁地处理PDF文件。然而,有时候这些文件的大小可能会非常庞大,这给我们带来了一系列的问题。首先,它们占用了大量的存储空间,使得我们的设备变得拥挤不堪。…...
php 安装rabbitmq:如何使用 PHP 安装 RabbitMQ?
示例示例安装Erlang要在PHP环境中使用,需要先安装Erlang,它是的运行环境。 1、安装Erlang 首先,要在PHP环境中使用RabbitMQ,需要先安装Erlang,它是RabbitMQ的运行环境。 可以使用下面的命令来安装Erlang:…...
算法训练营day44|动态规划 part06:完全背包 (完全背包、 LeetCode518. 零钱兑换 II、377. 组合总和 Ⅳ )
文章目录 完全背包518. 零钱兑换 II (求组合方法数)思路分析代码实现思考总结 377. 组合总和 Ⅳ (求排列方法数)思路分析代码实现思考总结 完全背包 完全背包和01背包问题唯一不同的地方就是,每种物品有无限件。 依然举这个例子: 背包最大重量为4。 物…...
包管理工具--》其他包管理器之cnpm、pnpm、nvm
包管理工具系列文章目录 一、包管理工具--》npm的配置及使用(一) 二、包管理工具--》npm的配置及使用(二) 三、包管理工具--》发布一个自己的npm包 四、包管理工具--》yarn的配置及使用 五、包管理工具--》其他包管理器之cnpm…...
线性代数的学习和整理22:矩阵的点乘(草稿)
4 矩阵乘法 A,B两个同阶同秩N阵,看上去结构一样,但两厢相乘,在做在右,地位差别巨大。 在左,你就是基,是空间的根本,是坐标系,是往哪去、能到哪的定海神针,是如来佛手&a…...
如何在Windows中使用C#填写和提取PDF表单
如何在Windows中使用C#填写和提取PDF表单 PDF表单不仅允许用户填写和提交数据,也允许用户创建各种表单域收集用户的数据,并通过提取表单字段值,将收集和合并提交的数据进一步分析或处理。PDF通过电子方式填写、保存和共享的形式,…...
microsoft.office.interop.word 怎样 读取 某个汉字 字体颜色为红色
SKY[管理]筱傑 SKY[机器]筱淋 microsoft.office.interop.word 怎样 读取 某个汉字 字体颜色为红色呢? 要读取某个汉字的字体颜色是否为红色,您可以使用Microsoft.Office.Interop.Word来进行操作。以下是一个示例代码,可以帮助您实现该功能&am…...
第二十二章 Classes - 调用类方法的快捷方式
文章目录 第二十二章 Classes - 调用类方法的快捷方式调用类方法的快捷方式类参数 第二十二章 Classes - 调用类方法的快捷方式 调用类方法的快捷方式 使用 ObjectScript 调用类方法时,在以下情况下可以省略包(或更高级别的包):…...
标准C++day2——函数重载、默认形参和引用
一、函数重载 1、什么是函数重载? 在同一作用域下,函数名相同,参数列表不同的函数构成重载关系 函数重载与返回值类型、参数名无关 与作用域是否相同,以及参数列表的数量、参数类型、常属性不同等有关 2、C是如何实现函数重载的&a…...
Qt5下遍历QList的方法
lines定义如下 QMap<QString,Line> lines; Line的定义如下 class Line{protected:QString name;QColor color;QList<int> total_stations; // all statuibQList<QString> start_stas,end_stas; //start end stationQList<QList<QString>>sta_li…...
Leetcode 剑指 Offer II 043. 完全二叉树插入器
题目难度: 中等 原题链接 今天继续更新 Leetcode 的剑指 Offer(专项突击版)系列, 大家在公众号 算法精选 里回复 剑指offer2 就能看到该系列当前连载的所有文章了, 记得关注哦~ 题目描述 完全二叉树是每一层(除最后一层外)都是完…...
链路追踪Skywalking应用实战
目录 1 Skywalking应用2 agent下载3 agent应用3.1 应用名配置3.2 IDEA集成使用agent3.3 生产环境使用agent 4 Rocketbot4.1 Rocketbot-仪表盘4.2 Rocketbot-拓扑图4.3 追踪4.4 性能分析4.5 告警4.5.1 警告规则详解4.5.2 Webhook规则4.5.3 自定义Webhook消息接收 1 Skywalking应…...
uniapp 对接腾讯云IM群组成员管理(增删改查)
UniApp 实战:腾讯云IM群组成员管理(增删改查) 一、前言 在社交类App开发中,群组成员管理是核心功能之一。本文将基于UniApp框架,结合腾讯云IM SDK,详细讲解如何实现群组成员的增删改查全流程。 权限校验…...
SkyWalking 10.2.0 SWCK 配置过程
SkyWalking 10.2.0 & SWCK 配置过程 skywalking oap-server & ui 使用Docker安装在K8S集群以外,K8S集群中的微服务使用initContainer按命名空间将skywalking-java-agent注入到业务容器中。 SWCK有整套的解决方案,全安装在K8S群集中。 具体可参…...
TDengine 快速体验(Docker 镜像方式)
简介 TDengine 可以通过安装包、Docker 镜像 及云服务快速体验 TDengine 的功能,本节首先介绍如何通过 Docker 快速体验 TDengine,然后介绍如何在 Docker 环境下体验 TDengine 的写入和查询功能。如果你不熟悉 Docker,请使用 安装包的方式快…...
PPT|230页| 制造集团企业供应链端到端的数字化解决方案:从需求到结算的全链路业务闭环构建
制造业采购供应链管理是企业运营的核心环节,供应链协同管理在供应链上下游企业之间建立紧密的合作关系,通过信息共享、资源整合、业务协同等方式,实现供应链的全面管理和优化,提高供应链的效率和透明度,降低供应链的成…...
五年级数学知识边界总结思考-下册
目录 一、背景二、过程1.观察物体小学五年级下册“观察物体”知识点详解:由来、作用与意义**一、知识点核心内容****二、知识点的由来:从生活实践到数学抽象****三、知识的作用:解决实际问题的工具****四、学习的意义:培养核心素养…...
Cinnamon修改面板小工具图标
Cinnamon开始菜单-CSDN博客 设置模块都是做好的,比GNOME简单得多! 在 applet.js 里增加 const Settings imports.ui.settings;this.settings new Settings.AppletSettings(this, HTYMenusonichy, instance_id); this.settings.bind(menu-icon, menu…...
Java 加密常用的各种算法及其选择
在数字化时代,数据安全至关重要,Java 作为广泛应用的编程语言,提供了丰富的加密算法来保障数据的保密性、完整性和真实性。了解这些常用加密算法及其适用场景,有助于开发者在不同的业务需求中做出正确的选择。 一、对称加密算法…...
【Zephyr 系列 10】实战项目:打造一个蓝牙传感器终端 + 网关系统(完整架构与全栈实现)
🧠关键词:Zephyr、BLE、终端、网关、广播、连接、传感器、数据采集、低功耗、系统集成 📌目标读者:希望基于 Zephyr 构建 BLE 系统架构、实现终端与网关协作、具备产品交付能力的开发者 📊篇幅字数:约 5200 字 ✨ 项目总览 在物联网实际项目中,**“终端 + 网关”**是…...
【OSG学习笔记】Day 16: 骨骼动画与蒙皮(osgAnimation)
骨骼动画基础 骨骼动画是 3D 计算机图形中常用的技术,它通过以下两个主要组件实现角色动画。 骨骼系统 (Skeleton):由层级结构的骨头组成,类似于人体骨骼蒙皮 (Mesh Skinning):将模型网格顶点绑定到骨骼上,使骨骼移动…...
STM32HAL库USART源代码解析及应用
STM32HAL库USART源代码解析 前言STM32CubeIDE配置串口USART和UART的选择使用模式参数设置GPIO配置DMA配置中断配置硬件流控制使能生成代码解析和使用方法串口初始化__UART_HandleTypeDef结构体浅析HAL库代码实际使用方法使用轮询方式发送使用轮询方式接收使用中断方式发送使用中…...
