nginx - .onion 连接不安全
问题描述
我正在尝试设置一个 .onion 地址以指向我的 https 站点。每次我尝试从 .onion 地址访问它时,都会在 Tor 浏览器中收到警告:
您的连接不安全。myonionaddress.onion 的所有者不正确地配置了他们的网站。为保护您的信息不被窃取,Tor 浏览器未连接本网站。
.
其他 .onion 网站(facebook、duckduckgo 等)加载良好,没有警告……只是我的。我究竟做错了什么?
我的配置:
HiddenServiceDir /home/user/onion_folder
HiddenServiceVersion 3
HiddenServicePort 443 187.485.887.28:443
运行版本 0.3.4.9
编辑:
我的网站具有以下将 http 重定向到 https:
if ($scheme != "https") {
return 301 https://$host$request_uri;
}
如何在允许来自 .onion 地址的 http 的同时将普通用户重定向到 https 版本?
编辑2:
我也试过:
if ($scheme != "https") {
if ($host !~* "\.onion$") {
return 301 https://$host$request_uri;
}
}
编辑#3:
server {
listen 80; server_name example.com www.example.com yourhiddenserviceaddress.onion;
...
}
解决方案
您将希望允许从您的隐藏服务到您的站点的“不安全”(http) 连接。
配置应如下所示:
HiddenServiceDir /home/user/onion_folder
HiddenServiceVersion 3
HiddenServicePort 80 187.485.887.28:80
您还需要确保网站不会尝试将访问者重定向到https
您的主域(而不是 .onion 地址)。
一些证书颁发机构(哪些?)可能会向主机颁发 SSL 证书,.onion
但没有必要启用安全连接。Tor 隐藏服务连接是端到端加密的,因此您不需要 SSL 证书来保护连接,只需要建立信任,即隐藏服务实际上是由您的公司/站点运营的,并且不是假的。
引导说明:
向 .onion 域颁发证书的至少一个 CA 是DigiCert。
推荐阅读
- swift - 如何解决由于强制展开导致的致命意外 nil 错误
- jinja2 - 如果它们以 0 结尾,我如何返回 2 位小数
- typescript - 如何使用 Vue.js 插槽组件?以及如何从主组件控制子组件?
- python - 将 CSV 条目转换为元组列表而不更改数据类型
- python - 算法覆盖 Numpy 数组元素,但不覆盖 Python 列表元素
- node.js - socket.io 使用相同的套接字 id 连接
- python - 从我自己的 IDE 重新实现 fipy mesh20x20 示例的问题
- events - 聚合之间的 DDD 事件示例
- javascript - Javascript:函数 - 返回无效参数错误消息的最佳实践
- objective-c - 斯威夫特:@objc(...) 属性