公共域到私有Intranet服务器,使用https

时间:2017-11-19 15:04:46

标签: javascript html5 dns domain-name

我在一个巨大的本地Intranet /网络上设置了服务器,在那里他们托管本地网站,但我希望在服务器托管的网站上使用HTTPS。我需要HTTPS,因为网站使用HTML 5并使用手机摄像头拍照等等。我不能自签一份证书,因为我不希望用户看到错误并感到不安全。

但是服务器必须是私有的,在路由器防火墙内部。我拥有一个公共领域,我们称之为www.example.se。去www.example.se非常好,它指向我的私人IP,在浏览器中使用域名和https。由于它是一个公共域,https应该很容易修复?

服务器有两个本地dns ip地址和一个本地DNS名称,如果你不在同一个互联网中,这些名称都无法访问。机器的公共IP几乎所有端口都被外部阻止。进入网络的唯一方式是直接连接到它。

我很难理解如何修复它,或者它是否可行。想了解如何解决此问题的一些提示,或者如何使用其他解决方案进行此工作的建议。我只需要https来访问用户媒体( navigator.mediaDevices.getUserMedia(约束)),并且很高兴有https来给用户一种安全感。

编辑2017-11-20 :添加更多信息。

从同一个路由器和防火墙内的一台客户端计算机上获取此信息时,我会获得此信息。

  • IP4.ADDRESS [1]:XXX.XX.133.231 / 22
  • IP4.GATEWAY:XXX.XX.132.1
  • IP4.DNS [1]:XXX.XX.132.3
  • IP4.DNS [2]:XXX.XX.172.2
  • IP4.DOMAIN [1]:'EXAMPLE'.local
  • IP6.ADDRESS [1]:fe80 :: xxx:xxx:xxx:xxxx / 64
  • IP6.GATEWAY: -

1 个答案:

答案 0 :(得分:0)

如果您的Intranet中有DHCP服务器,则可以指定每个人都必须使用的DNS服务器。该DNS服务器可以指向本地IP地址。然后,对于您网络中的访问者来说,它看起来就像一个普通的网站。

如果您想通过HTTPS进行连接,则必须使用类似Let's Encrypt的内容来获取证书,或者您可以自行签署证书,但现代浏览器如果您进行自签,则会出现错误。

修改

对于https,让CA签署证书不应该太大。如果您不想与外界建立任何联系(气隙或其他东西),那么您需要找一个CA来为您签署证书(费用为$$$)。 Https不应该对你太大,因为只有你网络中的人才能进行攻击,看起来你已经把它锁定得很好。 最好的选择是自签名并让网络中的所有浏览器都信任您的证书。无需连接到外部世界,这将是免费且容易的。

对于DNS,添加指向内部服务器的DNS条目不会影响其他计算机。它所要做的就是告诉网络上的其他计算机" www.example.se"存在于192.168.1.1(或者服务器的内部ip)。

您的网络上是否有DNS服务器,或者您是否使用IP地址进行通信?