## 前言
WireGuard 係目前最先進既 VPN 協議,速度快、安全性高、點對點加密,安裝設定簡單。以下係喺 Oracle Cloud ARM 機器上既完整架設過程。
—
## 系統環境
– Oracle Cloud ARM64 (4 核心 / 24GB RAM)
– Ubuntu 22.04 LTS
– 公網 IP:你的伺服器 IP
– 內網:10.0.0.213
—
## 步驟一:安裝 WireGuard
“`bash
sudo apt update
sudo apt install -y wireguard
“`
—
## 步驟二:生成密鑰對
“`bash
# 生成伺服器密鑰
wg genkey | sudo tee /etc/wireguard/server_private.key
sudo cat /etc/wireguard/server_private.key | wg pubkey | sudo tee /etc/wireguard/server_public.key
# 設定權限
sudo chmod 600 /etc/wireguard/server_private.key
“`
—
## 步驟三:設定防火牆
“`bash
# 允許 UDP 51820
sudo iptables -A INPUT -p udp –dport 51820 -j ACCEPT
# 開啟 IP forwarding
sudo sysctl -w net.ipv4.ip_forward=1
“`
—
## 步驟四:設定 wg0.conf
“`bash
sudo nano /etc/wireguard/wg0.conf
“`
“`ini
[Interface]
PrivateKey = <你的伺服器私鑰>
Address = 10.10.10.1/24
ListenPort = 51820
PostUp = iptables -A FORWARD -i wg0 -j ACCEPT; iptables -t nat -A POSTROUTING -o <你的網卡> -j MASQUERADE
PostDown = iptables -D FORWARD -i wg0 -j ACCEPT; iptables -t nat -D POSTROUTING -o <你的網卡> -j MASQUERADE
[Peer]
PublicKey = <客戶端公鑰>
AllowedIPs = 10.10.10.2/32
“`
—
## 步驟五:客戶端配置
“`ini
[Interface]
PrivateKey = <客戶端私鑰>
Address = 10.10.10.2/24
[Peer]
PublicKey = <伺服器公鑰>
Endpoint = 你的伺服器IP:51820
AllowedIPs = 0.0.0.0/0
PersistentKeepalive = 25
“`
—
## 步驟六:啟動服務
“`bash
# 啟動 WireGuard
sudo systemctl enable wg-quick@wg0
sudo systemctl start wg-quick@wg0
# 確認狀態
sudo wg show
“`
—
## 連線測試
1. 客戶端連線後,檢查 handshake:
“`bash
sudo wg show
“`
2. 測試 VPN 連線:
“`bash
ping 10.10.10.1
“`
—
## Oracle Cloud 防火牆設定
記得喺 Oracle Console 開通:
– Ingress: UDP 51820
—
## 疑難排解
| 問題 | 解決方案 |
|——|———-|
| 無 handshake | 檢查公私鑰是否匹配 |
| 無法上網 | 確認 IP forwarding 已開啟 |
| 連線被拒 | 檢查 Oracle 防火牆設定 |
—
## 總結
WireGuard 係目前最推薦既 VPN 方案,效能出色、設定簡單。透過以上步驟,你可以喺 15 分鐘內完成架設。