之前的困扰: https://v2ex.com/t/1016923
现在又碰到个问题:
tunnel 访问内网的服务只能走 http ,但是 authelia 之类的服务访问只支持 https 。虽然浏览器访问是走的 https ,但是内网的 nginx 收到的请求其实还是 http 的,所以 authelia 会拒绝访问。
怎么才能让 authelia 这类服务知道,我其实是走的 https 访问呢?
类似的困扰: https://github.com/authelia/authelia/discussions/7420
尝试注入 X-Forwarded-Scheme 之后发现并没有作用,也可能是没注入成功= =
1
cnhongwei 73 天前
你是不是类型没有选对,有 https 类型的。
|
3
dddedd 73 天前
tunnel 选 https 啊,映射到对应的 https 端口,tunnel 的 TLS 选择 No TLS Verify
公网仍然会是 CF 签的 https 证书 |
4
paperseller 73 天前 via iPhone
tunnel 控制台中单个 hostname 下有个额外设置,打开禁用 tls 验证试试
|
5
urzz OP @dddedd @paperseller
tunnel 配置中,单个二级域名的 public hostname 配置,通过配置 origin server name + http host header, 是可以的。参考: https://www.reddit.com/r/unRAID/comments/18oiv0p/cloudflare_tunnel_to_npm_setup_through_gui_to_fix/ 但是这样的话有新增的域名访问都需要到 cloudflare tunnel 配置中新增子域名的配置。之前为了避免每次新增域名都需要在本地的 nginx 和 cf_tunnel 中配置,就在 cf_tunnel 的配置中使用了通配符域名。如果是通配符 public hostname ,就不能配置 origin server name + http host header 了吧?这种情况下,有什么方式可以正常访问吗? |
6
ronyin 73 天前
我看 cf 都是内网 http 强制转 https 的。。你是不是有个选项没选择
|
7
urzz OP |
8
1423 73 天前
通配整个域名感觉有点不安全, 只通配一部分又不行
|