关于 DreamCat

主题名称:DreamCat | 版本:3.0.240224

主题开发:HanFengA7 | CornWorld

Designed by HanFengA7 Power by Typecho

Copyright © 2015-2024 by LychApe All rights reserved!

menu
refresh

利用Nginx反代安装headscale

作者: ciaoℒy

时间:

headscale原始仓库: juanfont/headscale: An open source, self-hosted implementation of the Tailscale control server (github.com)

其实安装的话只需要按照这个教程走就可以了:

Tailscale 基础教程:Headscale 的部署方法和使用教程 – 云原生实验室(icloudnative.io)

但是我想启用ssl, 可是Headscale实现的challenge需要占用我的80端口, 索性还是用Nginx做反代进行安装吧.

关于headscale的配置

基本上配置就按照官方给出的示例填写即可, 有两个地方注意一下:

  1. 禁用自带的acme工具, 防止其因获取证书失败而无法启动
tls_letsencrypt_hostname: ""
  1. server_url使用HTTPS协议
server_url: https://your_domain_here
# Address to listen to / bind to on the server
listen_addr: 0.0.0.0:8080

关于Nginx的配置

只需要在vhost里面添加wss的代理转发即可:

location / {
    proxy_set_header Host $host;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header Upgrade $http_upgrade;
    proxy_set_header Connection $connection_upgrade;
    proxy_http_version 1.1;
    proxy_pass http://127.0.0.1:8080/;
    # try_files $uri $uri/ =404;
}

参考: Nginx如何配置Http、Https、WS、WSS? - 冰河团队 - 博客园 (cnblogs.com)

当然可能还有其它的注意事项, 我也没怎么细看, 反正这样能用就是了. 至于如何确认能用呢? 可以试试访问: https://your_admin_here:port/apple. 如果能正常显示苹果设备连接帮助的话大概就是可以了.

关于调试

一开始我也不知道使用Nginx做反代还需要转发wss, 在Windows上看了tailscale的log才知道原来还需要转发wss才可以.

在Windows 10上, Tailscale service的日志存储在C:\ProgramData\Tailscale\Logs, 客户端的日志存储在%appdata%\..\Local\Tailscale. 如果遇到表现不正常的话可以查看log排查问题.

关于Windows上遇到的问题

如果在部署headscale之前就已经在电脑上使用过Tailscale的话, 参照官方安装教程安装后是无法启动Tailscale的. 它只会在右下角的托盘处显示:

Please restart the Tailscale Windows Service

纵使你如何重启Tailscale服务都无济于事, 即使是重装Tailscale客户端也不行. 不过在Tailscale仓库的issue中找到了该问题的解决办法. 方法就是, 清空Tailscale的客户端日志就可以啦.

关于Android上遇到的问题

当手机上已经在运行了一个VPN应用(例如clash)时, 使用FZR-forks的修改版安卓APP登录headscale, 即使是在后台认证了node, 它好像也不会自动连接. 初步排查原因就是VPN位置被占用, 所以使用该安卓APP前应该关闭手机上的VPN软件, 才能进行登录操作.


#本文链接:https://blog.chaol.top/archives/66.html
#本文采用 CC BY-NC-SA 4.0 协议进行许可
#如无特别声明,该文章均为 ciaoℒy 原创,转载请遵循 署名-非商业性使用 4.0 国际(CC BY-NC 4.0)协议,即转载请注明文章来源。
#最后编辑时间为: 2022 年 10 月 22 日
none

create 添加新评论


account_circle
email
language
textsms



加我的QQ
加我的微博
加我的支付宝
加我的微信