> ## Documentation Index
> Fetch the complete documentation index at: https://felimet-hub.jmcores.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Synology NAS OpenVPN 伺服器設定指南

> 在 DSM 7 的 Synology NAS 上以 VPN Server 套件架設 OpenVPN 伺服器，涵蓋帳號權限、伺服器設定、DDNS、路由器連接埠轉發、防火牆、設定檔匯出與各平台用戶端連線。

`OpenVPN` `Synology DSM 7` `VPN Server`

在 Synology NAS 上架設 OpenVPN 伺服器，讓外部裝置能安全回到內網存取資源。這份筆記以 DSM 7 的 VPN Server 套件（OpenVPN 模式）為主，從 NAS 端建置走到用戶端連線。

<Warning>
  本文所有伺服器位址、連接埠、帳號、憑證內容都是佔位範例，請替換成自己的環境值。VPN 的 `tls-auth` 靜態金鑰與私鑰屬機密，絕不可公開或提交進版控，外洩等同連線可被偽冒。
</Warning>

## 概述

OpenVPN 是以 TLS 為基礎的開源 VPN，跨平台、設定彈性高。Synology 的 VPN Server 套件把伺服器端封裝成圖形介面，匯出的 `.ovpn` 已整合好憑證，用戶端匯入即可連線。整體分兩個角色：

* IT 管理員：在 NAS 端建置伺服器、開帳號、設路由與對外位址、匯出設定檔。
* 一般用戶：拿到 `.ovpn` 與帳號密碼，用 OpenVPN Connect 匯入連線。

## NAS 端建置流程（IT 管理員）

<Steps>
  <Step title="安裝並啟用 VPN Server 套件">
    DSM「套件中心」搜尋 **VPN Server** 安裝後啟動，開啟左側選單的 **OpenVPN**，勾選「啟用 OpenVPN 伺服器」。
  </Step>

  <Step title="建立 VPN 專用帳號">
    DSM「控制台 → 使用者與群組」建立專用帳號（例如 `vpnuser`）：

    * 設定強密碼（長度 ≥ 12，含大小寫、數字、符號）
    * 在「應用程式權限」只開必要服務（如 File Station / SMB）

    <Warning>不要給 VPN 帳號 admin 權限，遵循最小權限原則。</Warning>
  </Step>

  <Step title="調整 OpenVPN 伺服器設定">
    在 OpenVPN 設定頁依需求調整：

    | 設定項目     | 建議值                            | 說明                   |
    | -------- | ------------------------------ | -------------------- |
    | 伺服器連接埠   | 自訂（預設 `1194`）                  | 改成不易被掃描的非標準埠可降低風險    |
    | 通訊協定     | UDP                            | 即時性較佳；需穿透嚴格防火牆時改 TCP |
    | 動態 IP 位址 | `10.8.0.0`（遮罩 `255.255.255.0`） | VPN 用戶端的虛擬子網         |
    | 最大連線數    | 5–20                           | 視需求調整                |
    | 加密       | AES-256-CBC / SHA256           | 預設值，可視需求調整           |

    必勾：「允許用戶端存取伺服器的 LAN」「將伺服器的 LAN 路由推送給用戶端」。只需回內網存取資源時，**不要**勾「將所有用戶端流量導向 VPN」。
  </Step>

  <Step title="設定 VPN 使用權限">
    VPN Server 左側「權限」頁，把目標帳號的 OpenVPN 欄設為「允許」。建議在「一般設定」取消「授予 VPN 權限給新增加的本地使用者」，改由 IT 手動賦予，避免新帳號自動取得權限。
  </Step>

  <Step title="設定 DDNS（建議）">
    DSM「控制台 → 外部存取 → DDNS」新增 Synology DDNS（主機名如 `your-nas.example.synology.me`），NAS 會定期更新對應的外部 IP。用 DDNS 可免去 IP 變動造成設定失效。未用 Synology DDNS 時，也可改用 Cloudflare DNS A 記錄指向外部 IP 並配自動更新。
  </Step>

  <Step title="路由器連接埠轉發">
    在主路由器的「Port Forwarding / 虛擬伺服器」新增規則：

    | 設定項目          | 值                             |
    | ------------- | ----------------------------- |
    | 外部埠（WAN Port） | 自訂（與下方一致）                     |
    | 內部 IP         | NAS 的 LAN IP（例 `192.168.x.x`） |
    | 內部埠           | 與 VPN Server 設定一致             |
    | 協定            | UDP                           |

    <Note>雙 NAT 環境（電信終端設備 + 自己的 Router）須先在外層轉到內層 Router，再由內層轉到 NAS，否則外網連不進來。</Note>
  </Step>

  <Step title="DSM 防火牆放行（若有啟用）">
    DSM「控制台 → 安全性 → 防火牆」新增允許規則：來源可限公司 IP 段、連接埠填你設定的 OpenVPN 埠、動作「允許」，並把此規則排在拒絕規則之前。
  </Step>

  <Step title="匯出並編輯 .ovpn 設定檔">
    OpenVPN 頁點「匯出設定」取得 `.ovpn`（可能附憑證）。用文字編輯器打開，把 `remote YOUR_SERVER_IP 1194` 改成你的 DDNS 或外部固定 IP 與實際使用的埠：

    ```text theme={null}
    remote your-nas.example.synology.me <your-port>
    ```

    確認 `ca` / `cert` / `key` 憑證設定（Synology 匯出通常已整合）。存檔後連同帳號密碼提供給用戶。
  </Step>
</Steps>

## 用戶端連線

各平台都裝 [OpenVPN Connect](https://openvpn.net/client/)，匯入 `.ovpn` 後輸入帳號密碼即可。

<Tabs>
  <Tab title="Windows">
    1. 安裝 OpenVPN Connect。
    2. `Import Profile → Upload File` 選入 `.ovpn`。
    3. 輸入帳號密碼，按 Connect。
    4. 若提示缺憑證，確認 `.ovpn` 已內嵌 `ca`／`tls-auth` 或一併匯入附帶憑證檔。
  </Tab>

  <Tab title="macOS / Linux">
    安裝 OpenVPN Connect（或 Linux 用 `openvpn3` / `openvpn --config profile.ovpn`），匯入設定檔後輸入帳號密碼連線。
  </Tab>

  <Tab title="iOS">
    App Store 安裝 OpenVPN Connect，用「檔案」或 AirDrop 把 `.ovpn` 帶入 App，匯入後輸入帳號密碼連線。
  </Tab>

  <Tab title="Android">
    Play 商店安裝 OpenVPN Connect，匯入 `.ovpn`，輸入帳號密碼連線。
  </Tab>
</Tabs>

<Tip>
  **TCP 還是 UDP？** 即時性優先選 UDP（無重傳、容忍少量遺失，延遲低）；要穿透嚴格防火牆或要求穩定一致選 TCP（保證不遺失、按序到達，但延遲略高）。VPN 一般預設 UDP。
</Tip>

## 疑難排解

| 症狀        | 可能原因                     | 排查方向                        |
| --------- | ------------------------ | --------------------------- |
| 外網連不進來    | 路由器轉發錯、雙 NAT 未逐層轉、ISP 封埠 | 核對轉發規則、逐層 NAT、改用非標準埠或聯絡 ISP |
| 用戶端提示缺憑證  | `.ovpn` 未內嵌或漏帶附帶憑證       | 重新匯出含憑證的設定檔                 |
| 連上但無法存取內網 | 未推送 LAN 路由               | 伺服器端勾「推送 LAN 路由」「允許存取 LAN」  |
| DDNS 沒更新  | DDNS 服務未啟用或外部 IP 變動      | 檢查 DSM DDNS 狀態、必要時手動更新      |

## 維運建議

* VPN 帳號由 IT 手動賦權，離職或專案結束即停權。
* 定期檢視 VPN Server 連線記錄，留意異常來源與時間。
* 伺服器埠避開預設值，搭配 DSM 防火牆限制來源網段。
* 機密（私鑰、`tls-auth` 金鑰、帳號密碼）只透過安全管道交付，絕不進版控或公開頻道。

## 相關連結

<Note>
  本頁是私人組織 repo [issp-mes-lab/labvpn](https://github.com/issp-mes-lab/labvpn) 的公開精簡版，已移除實驗室內部位址、連接埠、帳號與憑證等敏感資訊。原始 repo 為私有，需組織權限方可存取。
</Note>

* 原始 repo（私有）：[issp-mes-lab/labvpn](https://github.com/issp-mes-lab/labvpn)
* Synology 官方：[如何將 Synology NAS 設定為 VPN 伺服器](https://kb.synology.com/zh-tw/DSM/tutorial/How_do_I_set_up_my_Synology_NAS_as_a_VPN_server)
* 用戶端下載：[OpenVPN Connect](https://openvpn.net/client/)
