docker中的自托管注册表和自有证书存在哪些风险?
设置: 我有一个自我托管的注册表,并使用我自己的证书。除非我将注册表设置为不安全状态,否则我无法登录 现在一切都正常了,但ofc说这是不安全的docker中的自托管注册表和自有证书存在哪些风险?,docker,docker-for-windows,Docker,Docker For Windows,设置: 我有一个自我托管的注册表,并使用我自己的证书。除非我将注册表设置为不安全状态,否则我无法登录 现在一切都正常了,但ofc说这是不安全的 这样的设置有什么风险 您必须指示每个docker守护进程信任您的证书,但是安全消息还是会显示出来 基本上,这只是关于使用自签名证书和CA签名证书的争论。在安全方面,它们的工作方式相同。因此,出于测试目的,这是完全足够的 使用自签名证书的缺点: 其他应用程序/操作系统不信任这些证书。这可能会导致身份验证错误等 自签名证书的使用寿命通常为1年。这些证书每年
这样的设置有什么风险 您必须指示每个docker守护进程信任您的证书,但是安全消息还是会显示出来 基本上,这只是关于使用自签名证书和CA签名证书的争论。在安全方面,它们的工作方式相同。因此,出于测试目的,这是完全足够的 使用自签名证书的缺点:
- 其他应用程序/操作系统不信任这些证书。这可能会导致身份验证错误等
- 自签名证书的使用寿命通常为1年。这些证书每年都需要更新/更换,这对我们来说是一个很大的麻烦 维持
- 自签名证书可以使用低哈希和密码技术。因此,通过自签名实现的安全级别 证书可能不符合当前的安全策略等
- 不支持高级PKI(公钥基础设施)功能(如在线检查撤销列表等)
- 插入PKI(公钥基础设施)所需的服务器端应用程序的大多数高级特性。由此,, 无法使用自签名证书
您必须指示每个docker守护进程信任您的证书,但是安全消息仍然会显示出来 基本上,这只是关于使用自签名证书和CA签名证书的争论。在安全方面,它们的工作方式相同。因此,出于测试目的,这是完全足够的 使用自签名证书的缺点:
- 其他应用程序/操作系统不信任这些证书。这可能会导致身份验证错误等
- 自签名证书的使用寿命通常为1年。这些证书每年都需要更新/更换,这对我们来说是一个很大的麻烦 维持
- 自签名证书可以使用低哈希和密码技术。因此,通过自签名实现的安全级别 证书可能不符合当前的安全策略等
- 不支持高级PKI(公钥基础设施)功能(如在线检查撤销列表等)
- 插入PKI(公钥基础设施)所需的服务器端应用程序的大多数高级特性。由此,, 无法使用自签名证书
一个不安全的注册表可以被中间人替换,被DNS损坏劫持,窥探收集密码,以及由属性配置的TLS/SSL连接保护的任何其他攻击。恶意注册表服务器可能导致代码以root用户身份在主机上运行。所以总的来说,这是建议反对的。唯一默认的不安全注册表是localhost,因为如果该注册表被劫持,则该主机已经受损
不要切换到不安全的注册表,请尝试让docker本身或在最坏的情况下,整个主机信任您的自签名CA。大多数文档都描述了如何使用/etc/docker/certs.d/host:port/ca.crt
执行此操作。由于路径不同,并且目录名中不允许使用冒号,因此Windows存在一个老问题来描述此问题。结论似乎是C:\ProgramData\docker\certs.d\myregistrydomain.com5000\ca.crt
或者可能是C:\Users\\\.docker\certs.d\myregistrydomain.com5000\ca.crt
,这也可能因Windows上的不同安装方法而异。您可以在此处查看此问题和链接的文档:
不安全的注册表可以被中间人替换,被DNS损坏劫持,窥探收集密码,以及由属性配置的TLS/SSL连接保护的任何其他攻击。恶意注册表服务器可能导致代码以root用户身份在主机上运行。所以总的来说,这是建议反对的。唯一默认的不安全注册表是localhost,因为如果该注册表被劫持,则该主机已经受损 不要切换到不安全的注册表,请尝试让docker本身或在最坏的情况下,整个主机信任您的自签名CA。大多数文档都描述了如何使用
/etc/docker/certs.d/host:port/ca.crt
执行此操作。由于路径不同,并且目录名中不允许使用冒号,因此Windows存在一个老问题来描述此问题。结论似乎是C:\ProgramData\docker\certs.d\myregistrydomain.com5000\ca.crt
或者可能是C:\Users\\\.docker\certs.d\myregistrydomain.com5000\ca.crt
,这也可能因Windows上的不同安装方法而异。您可以在此处查看此问题和链接的文档: