最近我在docker gitlab CI容器中收到错误:
无法连接到Docker守护程序。 docker守护程序是否在此主机上运行?
我在one post suggests找到了这个帖子:
sudo service docker stop && sudo nohup docker daemon -H tcp://0.0.0.0:2375 -H unix:///var/run/docker.sock &
最终我在我的服务器主机上收到了滥用警告,我的盒子是端口扫描到端口2375
我找到了https://hub.docker.com/r/kannix/monero-miner/的实例 杀死它十次并最终重新启动,并且从那以后它没有返回。
This site表示有:
思科Docker Engine配置中的漏洞 CloudCenter Orchestrator(CCO;以前的CliQr)可以允许 未经身份验证的远程攻击者用于安装Docker容器 受影响系统的高权限。受影响的产品:这个 漏洞影响Cisco CloudCenter Orchestrator的所有版本 Docker Engine TCP端口2375在其上打开的(CCO)部署 系统并绑定到本地地址0.0.0.0(任何接口)。
所以我的问题是:以上方式(绑定到tcp://0.0.0.0:2375)启动docker守护程序本身是否容易受到攻击(如果是,为什么?)或者它是docker中的错误?
答案 0 :(得分:2)
“任何接口”意味着您希望docker守护程序侦听所有网络接口上的传入连接,而不仅仅是localhost。这意味着任何可以访问服务器的人都可以连接到端口2375并到达Docker守护程序并利用它。 “高权限”是“root”,因此您的系统受到了损害,应该从头开始重新安装。
解决这个问题的简单方法是,您应该只能从可信主机连接到docker守护程序,这反过来意味着选择要绑定的网络接口。典型的选择是“localhost”,因为它只允许来自机器本身的连接。