首页 > 其他分享 >Docker绕过firewalld

Docker绕过firewalld

时间:2023-01-18 16:24:33浏览次数:35  
标签:iptables docker 容器 端口 firewalld pg 绕过 Docker

一、起因

今天给pg做漏洞修复,因为pg只是对本机的其他服务使用,不对外使用,所以准备直接在firewalld中关闭pg的5432端口

然而神奇的一幕出现了,在其他服务器上telnet pg所在服务器的5432端口,居然能通,相当于firewalld对docker不起作用!

在docker中运行第三方服务时,通常需要绑定服务端口到本地主机。但使用 -p 参数进行的端口映射,会自动在iptables中建立规则,绕过firewalld,这对于端口级的黑白名单控制管理是很不利的,所以我们需要对iptables进行手动修改。

二、解决

方案一、修改docker配置文件

vim /etc/docker/daemon.json
"iptables": "false"

sudo systemctl daemon-reload
sudo systemctl restart docker

此方案也有几个弊端,如:

  • 此服务器上所有容器的端口对外都无法访问
  • 容器无法访问互联网
  • 无法按需只关闭某个容器的对外访问

方案二、修改iptables规则,去掉不需要对外提供服务的端口

# 查看规则
iptables -nL --line-numbers

# 删除DOCKER链的第5条规则
iptables -D DOCKER 5

# 此容器只接受来自地址10.10.10.64的连接请求,172.17.0.2为容器ip
iptables -A DOCKER -s 10.10.10.64 -d 172.17.0.2 -p tcp --sport  -j ACCEPT

标签:iptables,docker,容器,端口,firewalld,pg,绕过,Docker
From: https://www.cnblogs.com/williamzheng/p/17060105.html

相关文章

  • Docker容器化急速部署ClickHouse
    文章目录1.ClickHourse入门简介2.Docker部署ClickHouse3.DBeaver连接ClickHouse1.ClickHourse入门简介(1)什么是行存储传统的OLTP关系型数据库都是行存储一行中......
  • VT EPT原理解析和进阶——绕过pg检测,无视目前任何内核检测工具的检测如PCHander检测不
    [原创]驱动级VT技术EPT实现无痕HOOK保护指定进程----VTEPT原理解析和进阶 https://bbs.kanxue.com/thread-269303.htm驱动级VT虚拟化技术EPT实现无痕HOOK保护指定......
  • 五 docker安全 & 底层实现
    docker的安全主要有三个方面,内核的namespace和控制组机制提供的容器内在安全,程序本身的安全,内核的加强机制内核命名空间通过dockerrun启动一个容器时,在后台docker为......
  • minio-docker
    docker安装启动minio用最新版的minio总感觉有问题推荐使用dockerpullminio/minio下面的演示都是用的这个无法连接外网安装启动dockersearchminio/minio#搜不......
  • Gitlab集成jenkins及docker自动化部署教程
    Gitlab集成jenkins及docker自动化部署教程能实现提交代码到gitlab后,我们只需要合并代码到指定分支就可以上Jenkins自动拉取最新代码并重新构建部署1、登录Jenkins点击如......
  • Docker下安装MySQL8与开启root远程访问
    1.dockersearchmysql#查询mysql版本2.dockerpullmysql:8.0.15#拉取mysql3.创建mysql容器dockerstopmysql_8dockerrmmysql_8dockerrun-d-eTZ=“Asia/Shan......
  • Docker下部署Rabbitmq
    1.查询Rabbitmqdockersearchrabbitmq2.拉取Rabbitmqdockerpullrabbitmq:management3.停止、删除、运行dockerstoprabbitmqdockerrmrabbitmqdockerrun-d-p......
  • docker部署Tomcat时指定时区
    dockerstoptomcat#停止服务dockerrmtomcat#删除服务dockerrun-d-p8080:8080--restart=always--nametomcat-yefeng-eTZ=“Asia/Shanghai”-v/var/tomcat/......
  • 通过Docker启动Solace,并在Spring Boot通过JMS整合Solace
    1简介Solace是一个强大的实时性的事件驱动消息队列。本文将介绍如何在Spring中使用,虽然代码使用的是SpringBoot,但并没有使用相关starter,跟Spring的整合一样,可通用。JMS......
  • Docker
    组成:镜像image容器container仓库repository1个镜像可以创建多个容器,相当于一个root文件系统容器是镜像创建的运行实例,每个容器相互独立仓库是用来存档镜像Docker本......