我想知道以下答案: -
我目前正在以群集模式运行Docker 17.09-ce。我想知道我是否创建了一个加密的覆盖网络$ docker network create --opt encrypted --driver overlay secure-net
并且在同一个加密的覆盖网络中运行了2个容器,例如容器A(Nginx)和容器B(自定义应用程序)。我是否仍需要使用SSL / TLS保护我的Nginx,以便Custom App
和Nginx
在2之间的安全通道中进行通信,或者具有加密的覆盖网络就安全性而言是足够的< / p>
假设不需要将Nginx暴露给主机外部的外部请求,这意味着在Nginx中不会暴露任何端口,并且所有通信仅通过覆盖网络在内部进行通信。
我已阅读以下文章,但并非100%确定
答案 0 :(得分:1)
在容器内运行的服务(即Nginx代理服务) - 数据平面之间的通信默认不加密。当你这样做时:
$ docker network create --opt encrypted --driver overlay
您严格要求创建一个覆盖网络,该网络始终对不同群集节点上的容器之间的流量进行加密(流量遍历覆盖网络)。它将确保端点之间存在加密通信。
如果您没有向公众公开您的服务,那么您不需要进行Nginx特定的TLS / SSL加密。如果您想向公众公开,那么您必须为负载均衡器和最终用户之间的流量配置TLS / SSL加密。