【手把手教學】Ubuntu 24.04 五分鐘架設 OpenVPN Server (免設定檔懶人版)

想要擁有一個完全屬於自己的 VPN 嗎?不管是為了開發測試需要固定 IP、在公共 Wi-Fi 下保護隱私,還是單純不想把數據交給商業 VPN 廠商,自架 VPN 都是一個很棒的選擇。

雖然 WireGuard 是現在的新寵兒,但 OpenVPN 依然是相容性之王(幾乎所有路由器、作業系統都支援)。

不過,傳統的 OpenVPN 安裝過程簡直是惡夢:你要自己搞定 PKI、簽發 CA 憑證、設定 Server Config、還要處理 iptables 防火牆轉發… 只要錯一個步驟就連不上。

今天這篇文章要教你使用 GitHub 上最知名的自動化腳本,在 Ubuntu 24.04 上,只需要 3 分鐘、輸入 4 個選項,就能架設好企業級的 OpenVPN 服務!


準備工作

在開始之前,你需要:

  1. 一台 VPS: 系統建議安裝乾淨的 Ubuntu 24.04 LTS (Debian 也可以)。
    • 推薦廠商:Hetzner, DigitalOcean, Vultr, Linode 等。
  2. SSH 連線工具: Windows 的 PowerShell, PuTTY 或 Mac 的 Terminal。
  3. Root 權限: 確保你能使用 sudo 或直接以 root 身分登入。

第一步:更新系統與下載腳本

首先,SSH 連線進入你的 VPS。為了避免環境衝突,建議先更新一下系統軟體包。

Bash

sudo apt update && sudo apt upgrade -y

接著,我們要使用大神 Nyr 維護多年的 OpenVPN Install Script。這個腳本會自動偵測你的環境、安裝軟體、產生憑證並設定防火牆。

請執行以下指令下載並執行腳本:

Bash

wget https://git.io/vpn -O openvpn-install.sh && sudo bash openvpn-install.sh

第二步:互動式安裝 (4個問題)

執行腳本後,畫面會出現文字選單,請依照你的需求回答(或直接按 Enter 使用預設值):

1. 選擇協議 (Protocol)

Plaintext

Which protocol do you want for OpenVPN connections?
   1) UDP (recommended)
   2) TCP
  • 建議選 1 (UDP)
  • UDP 速度較快,延遲較低,適合絕大多數場景。除非你的網路環境對 UDP 有嚴格封鎖(如某些校園網),才考慮 TCP。

2. 設定 Port (連接埠)

Plaintext

What port do you want OpenVPN listening to?
   Port: 1194
  • 直接按 Enter (預設 1194)。
  • 這是 OpenVPN 的標準 Port。

3. 選擇 DNS 伺服器

Plaintext

Which DNS do you want to use with the VPN?
   1) Current system resolvers
   2) Google
   3) 1.1.1.1
   ...
  • 建議選 2 (Google) 或 3 (Cloudflare 1.1.1.1)
  • 這能確保你連上 VPN 後,DNS 查詢也是加密且快速的,避免被 ISP 劫持或監控。

4. 設定使用者名稱 (Client Name)

Plaintext

Finally, tell me your name for the client certificate.
   Client name: my_iphone
  • 輸入你想要的裝置名稱,例如 iphonelaptopipad
  • 腳本會根據這個名字產生對應的 .ovpn 設定檔。

開始安裝

回答完後,按任意鍵繼續。腳本會開始跑一串安裝流程,大約等待 1~2 分鐘。當你看到以下畫面:

Plaintext

Finished!
The client configuration is available at: /root/my_iphone.ovpn

恭喜!你的 OpenVPN Server 已經架設完成了!


第三步:匯出設定檔 (.ovpn)

伺服器架好了,但設定檔 (.ovpn) 還在遠端的 VPS 上。你需要把它弄回你的電腦或手機。

這裡教大家一個最簡單、不需額外安裝工具的「Cat 大法」:

  1. 在 SSH視窗中,使用 cat 指令印出檔案內容:Bashcat /root/my_iphone.ovpn (註:把 my_iphone 換成你剛剛取的名字)
  2. 你會看到螢幕噴出一大串文字,從開頭的 client 一直到結尾的 </tls-crypt>
  3. 把這整段內容複製起來
  4. 在你的電腦上開一個記事本 (Notepad/TextEdit),貼上內容,並另存新檔為 my_vpn.ovpn

第四步:連線測試

現在你手上有 .ovpn 檔案了,接下來就是安裝客戶端軟體:

  • iOS / Android 手機:
    • 去 App Store / Google Play 下載官方的 OpenVPN Connect
    • .ovpn 檔案傳到手機(透過 Line/Email/AirDrop)。
    • 選擇用 OpenVPN Connect 開啟,點擊 ADD 即可。
  • Windows / Mac 電腦:
    • 下載 OpenVPN Connect 電腦版。
    • 安裝後開啟軟體,將 .ovpn 檔案拖曳進去視窗,切換開關即可連線。

連線成功後,你可以去 IP查詢網站 看看,你的 IP 應該已經變成 VPS 的 IP 了!


進階:如何新增或刪除使用者?

這個腳本最方便的地方在於後續維護。如果你買了新 iPad 想要加入 VPN,或者是想要撤銷舊手機的權限,不需要改設定檔。

只要再次執行同一個腳本:

Bash

sudo bash openvpn-install.sh

這時候選單會自動變成管理模式:

Plaintext

OpenVPN is already installed.

Select an option:
   1) Add a new client       (新增裝置)
   2) Revoke an existing client (刪除裝置/吊銷憑證)
   3) Remove OpenVPN         (移除整個 VPN)
   4) Exit

選擇 1,輸入新名字,它就會立刻產生一個新的 .ovpn 檔案給你用。


常見問題 (Troubleshooting)

Q: 我都設定好了,但手機一直轉圈圈連不上? A: 99% 是防火牆問題。

  • 如果你是用 AWS / GCP / Oracle Cloud / Azure 這類大雲端廠商,除了 VPS 內部的防火牆,你還必須去他們的網頁控制台 (Console),找到 Security Group (安全組)Firewall 設定,手動新增一條規則:
    • Protocol: UDP
    • Port: 1194
    • Source: 0.0.0.0/0 (允許所有來源)

Q: 這跟 WireGuard 比起來如何? A: WireGuard 速度更快、更省電。但 OpenVPN 的優勢在於隱匿性較好(支援 TCP 443 偽裝),且在一些嚴格的公司網管或旅館網路上,OpenVPN 的 TCP 模式往往比較容易穿透。

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *