当前位置: 首页 > news >正文

centos7防火墙白名单总结

需求:

某台服务器的es的8300,8200端口需要指定白名单访问,需要在不影响服务器上其他服务的前提下(因为是历史项目),完善防火墙配置。

首先梳理发现,这两个端口是docker映射出来的端口,开启防火墙。发现防火墙无法限制端口。

先解决:

centos中docker开放的端口 无法受防火墙 控制:

在 CentOS 中,Docker 容器开放的端口默认不受 firewalld 防火墙控制,因为 Docker 使用了自己的网络命名空间和 iptables 规则来管理容器的网络。这可能会导致在 firewalld 中设置的规则对 Docker 容器不生效。为了使 firewalld 能够控制 Docker 容器的端口,可以采取以下步骤:

1. **修改 Docker 配置**:编辑 `/etc/docker/daemon.json` 文件,添加或修改 `"iptables": false` 配置,这样 Docker 就不会自动设置 iptables 规则。例如:
   {
     "iptables": false
   }
   修改后需要重启 Docker 服务。


systemctl restart docker

注意:重启docker时候,最好先备份docker ps 的结果

centos中指定端口访问地址

方法1:

随后配置public.xml

<?xml version="1.0" encoding="utf-8"?>
<zone<rule family="ipv4"><source address="xx.21.0.16"/><source address="xx.21.0.99"/><port protocol="tcp" port="8200"/><port protocol="tcp" port="8300"/><accept/></rule><port protocol="tcp" port="80-8199"/><port protocol="tcp" port="8201-8299"/><port protocol="tcp" port="8301-30000"/>
</zone>

 重启防火墙

systemctl restart firewalld

方法2:

也可以 public.xml配置

<?xml version="1.0" encoding="utf-8"?>
<zone<port protocol="tcp" port="80-8199"/><port protocol="tcp" port="8201-8299"/><port protocol="tcp" port="8301-30000"/>
</zone>

newszone.xml配置

<?xml version="1.0" encoding="utf-8"?>
<zone<source address="xx.21.0.16"/><source address="xx.21.0.99"/><port protocol="tcp" port="8200"/><port protocol="tcp" port="8300"/>
</zone>

注意,有的版本不支持这种合在一起的写法

那就老老实实用命令行,一行一个规则:

sudo firewall-cmd --permanent --zone=public --add-rich-rule="rule family='ipv4' source address='182.12.14.3' port protocol='tcp' port='2181' accept"
sudo firewall-cmd --permanent --zone=public --add-rich-rule="rule family='ipv4' source address='145.2.4.5' port protocol='tcp' port='2181' accept"

sudo firewall-cmd --reload

这样生成的配置是:

<rule family="ipv4"><source address="182.12.14.3"/><port protocol="tcp" port="2181"/><accept/>
</rule><rule family="ipv4"><source address="145.2.4.5"/><port protocol="tcp" port="2181"/><accept/>
</rule>


http://www.mrgr.cn/news/35067.html

相关文章:

  • blenderFds代码解读
  • 如何快速定位并解决 Linux 系统性能瓶颈:终极全攻略
  • 艾体宝方案丨制造业BI解决方案:推动智能生产和数字化转型
  • MySQL中字段类型和Java对象中的数据类型对应关系
  • LeetCode100之相交链表(160)--Java
  • HTTP 客户端怎么向 Spring Cloud Sleuth 传输跟踪 ID
  • 23中设计模式,以及三种常见的设计模式demo
  • 一、机器学习算法与实践_04信息论与决策树算法笔记
  • 功能强大的项目管理平台通常融合多种方法论,系统化解决项目管理难点
  • 注意!2024下半年软考考试批次安排已公布
  • 理解Web3:去中心化互联网的基础概念
  • 如何开启MySQL的慢日志查询
  • 带你一文了解CISP-PTE的用处
  • 合并两个有序链表
  • 安全测试|如何使用burpsuite+xray实现联动测试
  • 2024程序员兼职赚外快方式
  • isolar-AB软件安装后打开出错,求解决办法
  • Splunk、Snort在入侵检测中的应用
  • 【UE5】将2D切片图渲染为体积纹理,最终实现使用RT实时绘制体积纹理【第三篇-着色器光照】
  • 共享wifi公司哪家正规合法?具体流程全公开!
  • 什么是绩效改进计划?
  • drools规则引擎
  • Linux入门学习:深刻理解计算机硬件与OS体系
  • golang strings api接口
  • Python项目的质量保证
  • 内容生态短缺,Rokid AR眼镜面临市场淘汰赛