OpenVPN server 簡易安裝使用 (Ubuntu)
文章目錄
需求
建立一個 OpenVPN, 讓遠端機器可以連到內網的機器, 而且只能連到某一台特定機器.
方法 (Server 端)
-
從這裡下載 OpenVPN server, 並依照他的指示執行 apt-get 等指令. (以下為參考, 請看 server 上的說明)
1apt update && apt -y install ca-certificates wget net-tools gnupg 2wget -qO - https://as-repository.openvpn.net/as-repo-public.gpg | apt-key add - 3echo "deb http://as-repository.openvpn.net/as/debian focal main">/etc/apt/sources.list.d/openvpn-as-repo.list 4apt update && apt -y install openvpn-as
-
最後一個指令的最後面請注意, 他會產生一個 admin 的密碼
1To reconfigure manually, use the /usr/local/openvpn_as/bin/ovpn-init tool. 2 3+++++++++++++++++++++++++++++++++++++++++++++++ 4Access Server 2.10.3 has been successfully installed in /usr/local/openvpn_as 5Configuration log file has been written to /usr/local/openvpn_as/init.log 6 7 8Access Server Web UIs are available here: 9Admin UI: https://192.168.1.2:943/admin 10Client UI: https://192.168.1.2:943/ 11Login as "openvpn" with "fRxnu6bf3fC1" to continue 12(password can be changed on Admin UI) 13+++++++++++++++++++++++++++++++++++++++++++++++
-
裝好後, 就可以直接連到 https://localhost:943/admin 用上面的帳號密碼進去
-
因為這台 OpenVPN 是裝在內網, 必須在 Network setting 設定他 NAT 的外部 IP, 否則產生出來的 .opvn 檔案會連到 192.168.1.2 (當然這樣會永遠連不到)
-
預設他會開放讓 client 連到整個 private network, 因為我們要卡只能連到某一台, 因此要關掉這個
-
再來就是建立一個新帳號, 如下, 然後要在 access control 的地方卡住他只能連到哪個網段或IP
-
以上就完成 OpenVPN server 的安裝了
OpenVPN client for Windows
- 先連到 http://example.com/ (注意, 這裡 url 沒有 admin), 然後選 Yourself (user-locked profile), 他會下載一個 profile***.ovpn
- 安裝 OpenVPN client for Windows, 目前有兩個版本, 兩個用起來差不多.
- OpenVPN Connect for Windows, 可在 這裡 下載
- OpenVPN GUI, 可在[這裡] (https://openvpn.net/community-downloads/) 下載
- 執行下載的檔案, 將 OpenVPN client 安裝起來
- Double click 步驟一產生的 .ovpn, 把這個檔案匯入
- 就可以試著連線了
- 如果需要自動連線, 可以在設定裡面修改
如何管理 OpenVPN server
- 可從Status overview看到整個server狀況, 目前連線人數還有log等等
- 有人有提供 Prometheus exporter, 但這是非官方的, 而且最後一次更新是 2019/9/7, 不過只少在 2022 年用起來還是可以. (可參考後面相關文章)
注意
- 有一點要注意的是, OpenVPN 雖然 Open Source, 但他的 免費版本只能有兩個連線 (參考這裡)
相關文章
- 用果有興趣使用 Prometheus 來監控 OpenVPN server, 可參考 用 Prometheus 來監控 OpenVPN server
- 如果你使用的是 Asuswrt-Merlin, 他有內建 OpenVPN server, 可參考 在 Asuswrt-Merlin 使用 OpenVPN server
- 這是一篇 Open Source VPN 方案的簡單比較和測速: Open Source VPN 之不嚴謹比較