【问题标题】:Docker: How to verify if an overlay network is encryptedDocker:如何验证覆盖网络是否已加密
【发布时间】:2020-02-03 16:54:37
【问题描述】:

有什么方法可以检查覆盖网络是否真的被加密了?

我知道您可以使用

创建加密覆盖网络
docker network create --opt encrypted --driver overlay my-encrypted-network

但由于您几乎可以将 anything 指定为驱动程序选项 (--opt),因此您很容易误输入“已加密”,而 docker 不会抱怨。

假设我打字(注意错字!)

docker network create -d overlay --opt encryptedsd my-encrypted-network

现在使用docker network inspect my-encrypted-network我只能得到我输入的信息,但是我看不到网络是否真的被加密了。

[
    {
        "Name": "my-encrypted-network",
        "Id": "j4jd8dlde9u7rs1crlzbqco4p",
        "Created": "2020-02-01T13:17:39.65392102Z",
        "Scope": "swarm",
        "Driver": "overlay",
        "EnableIPv6": false,
        "IPAM": {
            "Driver": "default",
            "Options": null,
            "Config": [
                {
                    "Subnet": "10.0.4.0/24",
                    "Gateway": "10.0.4.1"
                }
            ]
        },
        "Internal": false,
        "Attachable": false,
        "Ingress": false,
        "ConfigFrom": {
            "Network": ""
        },
        "ConfigOnly": false,
        "Containers": null,
        "Options": {
            "com.docker.network.driver.overlay.vxlanid_list": "4100",
            "encryptedsd": ""
        },
        "Labels": null
    }
]

除了拼写错误之外,这并不让人放心,因为我真的很想知道是否真的启用了加密,而不仅仅是知道我输入了什么。

有谁知道是否有更好的方法来获得可靠的答案?

【问题讨论】:

    标签: docker docker-swarm


    【解决方案1】:

    根据文档:

    当您启用覆盖加密时,Docker 在所有节点之间创建 IPSEC 隧道,在这些节点中为附加到覆盖网络的服务安排任务。这些隧道还在 GCM 模式下使用 AES 算法,并且管理器节点每 12 小时自动轮换一次密钥。

    与您提到的方法(IMO 有效)不同的方法是检查(例如使用netstat)是否创建了这些 IPSEC 隧道。

    【讨论】:

      猜你喜欢
      • 2016-07-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-02-06
      • 1970-01-01
      • 2019-08-02
      • 2018-01-28
      相关资源
      最近更新 更多