前言
在之前的文章 Tailscale 建立私有的中繼伺服器 – DERP 中,我們提到如何自架自己的 relay server,但在該篇文章中,我們是讓 DERP 生成自己的 SSL 憑證。不過某些人群可能會希望這個 SSL 憑證由自己提供,而不是由他自己去簽一張。因此這篇文章就來說說該怎麼做。
操作方式
操作有分成兩個區塊,產生憑證及配置 DERP 伺服器。
產生憑證
首先,你應該要自己產生有效的 SSL 憑證,你可以參考過往文章。
配置 DERP 伺服器
完成憑證之後,找一個地方把 fullchain.pem 跟 privkey.pem 存起來。以下的範例,我會把他放在 /var/ssl 底下。
接著重新命名這兩個檔案,假設你的 DERP 伺服器網域是 derp.example.com:
-
將
fullchain.pem重新命名成derp.example.com.crt。 -
將
privkey.pem重新命名成derp.example.com.key。
接下來啟動 DERP 的時候,使用以下參數:
derper --hostname derp.example.com --certmode manual --certdir /var/ssl/
如果你像上一篇文章一樣將他包成服務,則可以回去編輯 /etc/systemd/system/derpsvc.service 檔案。
sudo vim /etc/systemd/system/derpsvc.service
修改配置檔(請做適當的修改):
[Unit]
Description=Tailscale DERP Server
After=multi-user.target
[Service]
User=root
Type=simple
ExecStart=/root/go/bin/derper --hostname derp.example.com --certmode manual --certdir /var/ssl/
Restart=on-failure
RestartSec=5s
[Install]
WantedBy=multi-user.target
接著讓系統重新載入設定檔。
sudo systemctl daemon-reload
重啟 DERP 服務。
sudo systemctl restart derpsvc
現在,你的 DERP 伺服器,應該會開始使用你提供的 SSL 憑證了!