我以这种方式提问,以确保我没有问一个 xy 问题,而且我理解的太少而无法提出一个复杂的问题。
我租用了一个根服务器,用于托管一些我想通过互联网访问的应用程序。例如,我的 postgreSQL DB 公开在端口 1234 上,服务器提供商提供的域名是rootserver5678.provider.com
。我可以导航到rootserver5678.provider.com:1234
并访问公开的 Web 应用程序。此外,我注册了一个域名mydomain.de
,我可以注册子域名,例如database.mydomain.de
。我希望子域名指向我的 Web 应用程序,并且连接是安全的,这样对 的调用database.mydomain.de
就被强制为 https。正确的做法是什么?
可以将域名从 转发database.mydomain.de
到 吗rootserver5678.provider.com:1234
?还是我需要更改子域名的 DNS 条目以使用来自服务器提供商的 DNS?我是否需要为新子域名安装 SSL 证书?
答案1
postgreSQL DB 在端口 1234 上公开,服务器提供商提供的域名是
rootserver5678.provider.com
。我可以导航到rootserver5678.provider.com:1234
并访问公开的 Web 应用程序。
PostgresSQL 不能与 http 服务器列在同一个端口上。我假设您在端口 80 和 443 上运行 Web 服务器,该服务器连接到本地主机上的 Postgres。
域名转发从
database.mydomain.de
到rootserver5678.provider.com:1234
首先,DNS 不是这样工作的,它只解析名称,而不是端口。其次,您提到 PostgreSQL 端口就好像它是通过互联网公开访问一样。暴露 PostgreSQL 协议的安全性很差。即使使用 TLS 保护连接,它也会将数据库暴露给拒绝服务攻击。
您可以做的是将 的 DNS 编辑database.mydomain.de
为 CNAME rootserver5678.provider.com
,或使用其静态 IP 地址创建 AAAA 和 A 记录。 为 颁发证书database.mydomain.de
并根据其文档为 https 配置 Web 服务器。