2017-04-13 276 views
3

我看到端口2375和4243的各种实例在搜索互联网时用于看似相同的东西。另外,我的本地机器需要我用2375来连接,而当我把它推到我们的CI服务器,它需要它被设置为4243.Docker如何使用端口2375和4243?

是什么泊坞窗使用这些端口以及它们如何不同?

+0

https://docs.docker.com/engine/reference/commandline/dockerd/#daemon-socket-option –

回答

4

的搬运工插座可以与dockerd -H选项的任何端口上进行配置。常见泊坞窗口,我看到包括:

  • 2375:未加密的搬运工插座,远程根密码访问该主机
  • 2376:TLS加密套接字,很可能这是你的CI服务器4243端口的修改HTTPS端口443
  • 2377:群模式插座,为群管理者,而不是搬运工客户
  • 5000:搬运工注册表服务
  • 4789和7946:覆盖网络

只有前两个都设置有dockerd -H,群模式可被配置为docker swarm init --listen-addrdocker swarm join --listen-addr一部分。

我强烈建议禁用2375端口,并保护您的码头工人插座。远程利用此端口无需远程密码即可获得完全root访问权限,这是微不足道的。这样做的命令很简单,只要:

docker -H $your_ip:2375 run -it --rm \ 
    --privileged -v /:/rootfs --net host --pid host busybox 

可以在任何机器上有一个码头工人的客户端运行,以给别人你的主机与下/根文件系统提供完整的文件系统上的一个root shell,在你的网络中是可见ip a,以及在ps -ef下可见的每个过程。

要设置TLS泊坞窗插座上的安全,请参阅这些说明。 https://docs.docker.com/engine/security/https/