我的老板拒绝允许私有 IP 地址进入公共 DNS 定义。因此,我无法将私有 SVN 盒 IP(svn.ourcompany.com)放入 .com DNS 记录中。它仅存在于 svn.ourcompany.local
最终,我并不介意这一点,除非涉及 SSL。
是否有一个流行的(所有操作系统中都预装了根 CA 证书)CA 可以签署 .local 证书请求?它不需要任何花哨的功能,也不需要任何万能牌,甚至可以收取象征性的费用。
我真的不想到处去安装一个自卷根 CA 到每个用户的电脑上,然后当有变化时就得重新安装。这很烦人。
答案1
为什么不使用不响应外部请求的本地 DNS 服务器,而使用 SVN 服务器的条目?或者这是否违反了“公共 DNS 定义”策略(如果主机不是公开可解析的,则这很荒谬)?
答案2
你的老板比你想象的要聪明。在公共 DNS 服务器上映射本地地址没有多大意义。
您最好配置一个内部 DNS 服务器(Bind 在最小的 Linux 安装上可以很好地工作,或者如果您使用的是 Windows,则可以使用 AD 域控制器的 DNS 功能)并为域内托管的地址定义一个委派区域。
说到 SSL/TLS 证书,您可以使用 openssl 命令轻松创建和管理自己的证书。如果您更喜欢使用 GUI 并且您在 Linux 下工作,则可以安装一个名为 TinyCA2 的工具。
从加密安全性的角度来看,自生成的证书与付费证书一样好,第一次连接时您可能会从 svn 客户端(或 Web 浏览器)收到一些无害的警报,因为发出机构(您自己)未被识别为已认证。
米
答案3
首先:这个问题的答案必须是“否”,因为 .local TLD 不是公共 TLD,因此客户端无法将其追溯到根证书。
但是,正如其他人指出的那样,您可以运行本地 DNS 服务器。实际上,在我们的案例中,我们在同一个域上运行内部 DNS 和外部 DNS,但根据查询的来源提供不同的结果。只要您在 .com TLD 上运行内部网络,您就可以使用任何根 CA 颁发的证书。
答案4
Comodo 的 InstantSSL 似乎可以做内联网 SSL 证书:
http://www.instantssl.com/ssl-certificate-products/ssl/ssl-certificate-intranetssl.html
根据他们自己的描述,它们“颁发给完整服务器名称或私有 IP 地址。”我仍然建议您考虑建立自己的私有证书颁发机构,但您可以实现您想要的目标。