微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何禁止与HTTP服务器npm的不安全连接?

如何解决如何禁止与HTTP服务器npm的不安全连接?

我正在使用以下命令创建安全的http服务器,

http-server -a :: -p 8081 --cors -c-1 -S -C cert.pem -K key.pem -r

但是使用下面的命令,我可以访问内容

curl -k https://localhost:8081/

如何限制用户不允许与HTTP服务器的不安全连接? 我只想允许已验证证书的连接,不允许其他连接。

PS:在这里,我已经使用npm install http-server安装了http-server。

解决方法

这取决于您所说的“不安全”。

curl -k https://localhost:8081/将打开一个安全 HTTPS连接,流量已加密。 -k唯一要做的是默认情况下允许连接到您不信任的证书(通常这意味着该证书未由系统/浏览器认可的CA签名)。

自签名证书没有错。

您对CA的信任是额外的一层,这一层可以帮助您意识到出了问题,但仅此而已。

因为这是正确的HTTPS连接,所以您不能限制任何内容(我什至不确定要限制什么?哪个元素会拒绝该连接?curl默认情况下已经进行了连接并且服务器满意及其证书)


编辑以下评论

如果要确保连接的客户端是正确的客户端,则需要采取另一种方法,并向客户端请求证书。

在此设置中,您将(通常)具有相互身份验证:客户端检查服务器的证书(在您的情况下,该证书将失败,因为无法识别CA,但这无关紧要),并且服务器要求客户端提供服务器信任的证书。

尝试搜索“ SSL客户端证书”(尽管TLS替代了SSL,很多文章仍使用SSL措词),其中一个示例为https://medium.com/@sevcsik/authentication-using-https-client-certificates-3c9d270e8326

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。