Browse Source

Update 'README.md'

天问 2 years ago
parent
commit
874dfc27fa
1 changed files with 124 additions and 1 deletions
  1. 124 1
      README.md

+ 124 - 1
README.md

@@ -1,3 +1,126 @@
 # headscale
 
-内网穿透
+内网穿透
+
+Tailscale 客户端开源,服务端社区有第三方开源版本Headscale
+
+* 服务端:
+```
+# 下载
+wget https://github.com/juanfont/headscale/releases/download/v0.16.4/headscale_0.16.4_linux_amd64 -O /usr/local/bin/headscale
+
+# 增加可执行权限
+chmod +x /usr/local/bin/headscale
+
+# 配置目录
+mkdir -p /etc/headscale
+
+# 创建用户
+useradd \
+ --create-home \
+ --home-dir /var/lib/headscale/ \
+ --system \
+ --user-group \
+ --shell /usr/sbin/nologin \
+ headscale
+ 
+```
+
+```
+ # 创建 SystemD 配置文件
+ # /lib/systemd/system/headscale.service
+[Unit]
+Description=headscale controller
+After=syslog.target
+After=network.target
+
+[Service]
+Type=simple
+User=headscale
+Group=headscale
+ExecStart=/usr/local/bin/headscale serve
+Restart=always
+RestartSec=5
+
+# Optional security enhancements
+NoNewPrivileges=yes
+PrivateTmp=yes
+ProtectSystem=strict
+ProtectHome=yes
+ReadWritePaths=/var/lib/headscale /var/run/headscale
+AmbientCapabilities=CAP_NET_BIND_SERVICE
+RuntimeDirectory=headscale
+
+[Install]
+WantedBy=multi-user.target
+```
+
+配置 /etc/headscale/config.yaml 
+```
+---
+# Headscale 服务器的访问地址
+#
+# 这个地址是告诉客户端需要访问的地址, 即使你需要在跑在
+# 负载均衡器之后这个地址也必须写成负载均衡器的访问地址
+server_url: https://your.domain.com
+
+# Headscale 实际监听的地址
+listen_addr: 0.0.0.0:8080
+
+# 监控地址
+metrics_listen_addr: 127.0.0.1:9090
+
+# grpc 监听地址
+grpc_listen_addr: 0.0.0.0:50443
+
+# 是否允许不安全的 grpc 连接(非 TLS)
+grpc_allow_insecure: false
+
+# 客户端分配的内网网段
+ip_prefixes:
+  - fd7a:115c:a1e0::/48
+  - 100.64.0.0/10
+
+# 中继服务器相关配置
+derp:
+  server:
+    # 关闭内嵌的 derper 中继服务(可能不安全, 还没去看代码)
+    enabled: false
+
+  # 下发给客户端的中继服务器列表(默认走官方的中继节点)
+  urls:
+    - https://controlplane.tailscale.com/derpmap/default
+
+  # 可以在本地通过 yaml 配置定义自己的中继接待你
+  paths: []
+
+# SQLite config
+db_type: sqlite3
+db_path: /var/lib/headscale/db.sqlite
+
+# 使用自动签发证书是的域名
+tls_letsencrypt_hostname: ""
+
+# 使用自定义证书时的证书路径
+tls_cert_path: ""
+tls_key_path: ""
+
+# 是否让客户端使用随机端口, 默认使用 41641/UDP
+randomize_client_port: false
+```
+
+```
+# 开机自启动 并 立即启动
+systemctl enable headscale --now
+
+```
+
+* 客户端
+
+```
+curl -fsSL https://tailscale.com/install.sh | sh
+```
+
+
+
+