动态 DNS 和 SSL 问题

动态 DNS 和 SSL 问题

我的客户网站由 go-daddy 托管。他们创建了一个子域名 hrm.clientname.com,并使用 IIS 从自己的服务器托管 HRM 系统。问题是东道国的 ISP 不支持静态 IP,因此我们自然而然地选择了 Dyndns.org 的动态 IP。http 站点从 hrm.clientname.com 路由到 example.dyndns.org,然后我们的 IP 工作正常,直到我们实施 SSL 证书。

在我们的案例中,当我尝试访问 hrm.clientname.com 时,名称服务器 -hostmonster 会给我 404 页面,而当我从 example.dyndns.org 访问我的 hrm 系统时,它虽然通过了,但给我的提示不安全,因为证书是针对 hrm.clientname.com 颁发的。

关于如何将流量从 hrm.clientname.com 路由到位于我们位置的服务器以及标有“安全”的标签,有任何建议吗?

谢谢

答案1

http 站点路由从 hrm.clientname.com 到 example.dyndns.org,然后我们的 IP 工作正常,直到我们实施 SSL 证书。

这不是重定向用户的正确方法,您应该将 CNAME 设置为动态记录。

使用适当的 DNS 记录删除 Web 重定向。

hrm.clientname.com in cname example.dyndns.org

答案2

我不使用 DynDNS,但我知道如何使用免费的 DDNS 提供商来做你想做的事情https://freemyip.com (您不需要在那里创建任何帐户 - 只需 10 秒钟即可在那里创建您的域名)

一旦你在那里创建了你的域名(例如,例如.freemyip.com),您需要在您的客户名称.com域,指向您的动态 DNS 域例如.freemyip.com

因此,在您的 clientname.com 的区域文件中,您需要如下一行:

hrm.clientname.com.        CNAME  example.freemyip.com.

注意每个域名末尾的点 - 它们很重要!

确保您的动态域 IP 地址已正确更新,具体说明如下:https://freemyip.com/help (找到适用于您环境的部分)。此时,如果您在浏览器中访问hrm.clientname.com你应该可以看到你的机器上与以下 IP 地址关联的任何服务例如.freemyip.com

接下来是 SSL 证书。我建议使用免费服务letsencrypt.org 在大多数 Linux 发行版中,你可以通过发出以下命令来安装它:

sudo apt-get install letsencrypt

接下来,假设您有一台安装了 nginix 的 Ubuntu 服务器,地址为hrm.clientname.com,你需要先停止你的 nginx 服务器:

service nginx stop

接下来,以 root 身份启动此命令:

letsencrypt certonly --manual --email [email protected] -d hrm.clientname.com

您需要确认一些问题,然后您将看到类似这样的内容:

Make sure your web server displays the following content at
If you don't have HTTP server configured, you can run the following
command on the target server (as root):

现在,将您在那里看到的所有内容复制到剪贴板中。那里会有几行命令。打开另一个 ubuntu 服务器会话,并粘贴所有这些命令。这将启动一个独立的 Web 浏览器,它将提供身份验证页面。返回第一个 ubuntu 会话,然后按 Enter。这将需要几秒钟,如果一切顺利,您将获得证书。如果出现错误,它将解释问题是什么。如果发生这种情况并且您无法解决,请返回此处并复制并粘贴您的错误。

相关内容