我正在使用以下
对我的node.js服务器执行$ http.post$http.post('http://68.xx.xxx.xxx:3000/login', {foo:'foo'});
我认为让我的服务器的IP地址不受保护是不是最佳做法?任何拥有浏览器的人都可以轻松查看IP地址。
这有什么安全影响?
什么是使这更安全的最佳方法?
我想因为他们正在与服务器进行交互,所以他们可以通过其他方法获得IP地址。所以我可能会过度思考这一点。
这比我害怕的那么危险吗?
答案 0 :(得分:4)
使用IP地址而不是域名没有直接的安全隐患,因为任何人都可以从域名解析IP地址。
但是,当您必须将服务器移动到另一个主机(因为IP地址将被修改并且您的应用程序可能停止工作)或者您的主机提供商不保证您的服务器时,您可能会遇到问题。 ll总是有相同的IP地址。
答案 1 :(得分:0)
主要风险是您无法使用经过身份验证的TLS / SSL保护传输中的数据 - 这是因为您无法轻松购买IP地址的可信证书以启用HTTPS(即没有您) being listed as the RIPE registered owner of that IP address)。
如果您使用普通的HTTP,窃听者或中间人可能会拦截或更改飞行中的凭据。
您最好使用TLS / SSL获取域名并对其进行保护:
$http.post('https://example.com:3000/login', {foo:'foo'});
至于你的其他观点,从域名获取IP地址是微不足道的。
>nslookup example.com
Server: UnKnown
Address: 172.16.188.2
Name: example.com.localdomain
Addresses: 93.184.216.34
93.184.216.34
或
$ dig example.com +short
93.184.216.34
分别适用于Windows和Mac。