在系统管理和网络方面我是新手,我想我可以从这里的专业人士那里获得一些有价值的见解。
我在大学 IT 部门工作,负责学校网站的日常运营。我们最近决定采取进一步措施,采用 Moodle,我花了几天时间研究和努力工作才将其安装并运行起来。我能够在运行 Ubuntu 14.04 的服务器上安装它,该服务器带有 PostgreSQL 和主数据库服务器。
问题始于我的部门主管希望我们主网站和子域的所有连接都是安全的,因此我们为此购买了白卡证书,例如 *.myschool.edu。但是,请注意,我们的网站和 moodle 平台是分开托管的。也就是说,myschool.edu 由一家网络托管公司托管,而我们决定在内部托管 moodle.myschool.edu。
我通过创建一个名为 moodle.myschool.edu 的文件夹并为其创建虚拟主机来实现此目的。我们为运行 Moodle 的服务器购买了一个公共专用 IP,并在 myschool.edu 的 DNS 主机文件上创建了一条 A 记录,以将 moodle.myschool.edu 指向运行 Moodle 的服务器。一切都运行正常。
然而,当我在 Moodle 服务器上安装证书后,问题就开始出现了。每当我尝试访问https://moodle.myschool.edu从外部网络访问时,我收到“无法访问此站点”错误。当我从学校内部网络访问同一地址时,一切都正常,我可以看到证书已加载。
我不确定我可能做错了什么,我希望有人可能知道并向我展示或推动我朝着正确的方向解决这个问题。
谢谢!
答案1
问题是:主机 myschool.edu 仅仅知道 moodle.myschool.edu 的 IP 地址是不够的。
您必须将此信息提供给想要访问该站点的(公共)客户端。您需要联系负责域 myschool.edu 的 DNS 条目的人员,让他为 moodle.myschool.edu 创建指向您内部服务器的公共地址的 a 记录。
只要在客户端外部 ping moodle.myschool.edu 成功 - 或至少返回正确的 IP 地址 - 那么它就可能成功(如果服务器位于 DMZ 中,那么防火墙规则/端口转发也必须到位)。