什麼是 OpenVPN?
如之前在我們的 OpenVPN 文章中所述,這是一個開源 Windows 軟件包,用於創建安全的站點到站點隧道 VPN 連接,提供兩個位置之間的遠程訪問。在本教程中,我們將在 Windows 服務器上設置 OpenVPN 服務器。
OpenVPN由三部分組成。
- OpenVPN-AS-服務器
- 管理 Web 界面/管理 GUI
- 連接客戶端
OpenVPN 服務器
OpenVPN 服務器是 OpenVPN-AS 服務器的主要元素,管理主要的後端功能。管理界面中處理的功能包括隧道、路由、加密、用戶管理和身份驗證。 OpenVPN 服務器還包括一個 WebGUI,可幫助控制軟件的一些基本組件。
主WebGUI管理界面
主要的基於 Web 的 GUI 可以輕鬆處理 OpenVPN 服務器元素。 WebGUI 允許管理員查看路由選項、權限、網絡配置、用戶身份驗證和其他參數。默認情況下,管理員可以瀏覽到 https://serverip:943/ 以連接到 GUIWeb Gateway 管理員。
OpenVPN 連接客戶端
OpenVPN客戶端也是OpenVPN軟件的重要組成部分。此應用程序允許用戶以三種方式之一直接鏈接到 VPN 服務器。 VPN 客戶端還提供下載用戶配置文件的功能,這些配置文件可以復製到其他 OpenVPN 客戶端。 這三個選項是:
- 瀏覽器連接客戶端 – 這是一個基於瀏覽器的 openvpn 連接工具。用戶的 URL 是 https://serverip:943。
- OpenVPN 連接客戶端 (蘋果電腦) – 一個簡單的單連接客戶端
- OpenVPN 連接客戶端 (Linux/視窗) – 這是一個 OpenVPN 客戶端(與主要的 openvpn-as 程序不同)。軟件需要配置文件才能正常工作。
第 1 部分。安裝 OpenVPN
下載並安裝 OpenVPN
在windows服務器上,首先下載 窗口安裝程序 然後在您的 Windows 服務器上運行它。完成後,開始設置的配置部分。
配置、證書和密鑰
第 1 步:更改目錄
- [スタート]打開菜單並[Windows システム]>>[コマンド プロンプト]右鍵單擊並[その他]點擊[管理者として実行]選擇。
- 然後右鍵單擊菜單項“命令提示符”。
- [ユーザー アカウント制御]在彈出窗口中,[はい]單擊以接受程序並對服務器進行更改。
- 在管理命令提示符下使用 cd 命令並瀏覽到以下文件夾位置:
cd C:Program FilesOpenVPNeasy-rsa
第 2 步:配置 OpenVPN 服務器
注意:init-config 應該在安裝過程中只運行一次。
- 現在您可以啟動 OpenVPN 配置。輸入以下命令:
init-config
- 然後在記事本文本編輯器中打開“vars.bat”文件。
notepad vars.bat
- 然後編輯後續行以在“美國”和“加拿大”設置之間切換以匹配您的營業地點。
set KEY_COUNTRY=US
set KEY_PROVINCE=CA
set KEY_CITY=SanFrancisco
set KEY_ORG=OpenVPN
set [email protected] - 現在保存文件並退出記事本。
- 然後運行以下命令:
vars
clean-all
注意:每個構建請求的 KEY_CN 和 KEY_NAME 字段都是唯一的。 KEY_CN 和 KEY_NAME 設置是指通用名稱字段和證書名稱。 KEY_OU設置指的是“組織單位”,不需要時可以任意設置。 PKCS11_ 值是指硬件安全模塊和智能卡(如果使用)中的設置。
步驟 3. 創建證書和密鑰
- 要創建證書頒發機構 (CA) 證書和密鑰,您需要運行以下命令:
build-ca
- 這將提示您輸入您的國家、州和城市。這些選項也有括號中顯示的默認值。 對於“通用名稱”,最有利的選擇是選擇一個唯一的名稱來區分您的業務。
Certificate Authority "OpenVPN-CA":
Country Name (2 letter code) [US]:
State or Province Name (full name) [CA]:
Locality Name (eg, city) [SanFrancisco]:
Organization Name (eg, company) [OpenVPN]:
Organizational Unit Name (eg, section) []:
Common Name (eg, your name or your server's hostname) []:OpenVPN-CA
Email Address [[email protected]]: - 然後使用以下命令啟動服務器證書和密鑰:
build-key-server server
– 出現提示時輸入通用名稱作為服務器
– 提示簽署證書時輸入 y
– 提示發送時輸入 y
步驟 4. 創建客戶端/服務器證書和密鑰
- 首先,我們需要使用以下命令創建一個密鑰:
C:Program FilesOpenVPNeasy-rsa>build-key-server.bat
- 對於連接到服務器的每個客戶端,您必須選擇一個唯一的名稱來標識該用戶的計算機(例如以下示例中的“david-laptop”)。
build-key david-laptop
- 然後,當出現提示時,輸入公用名作為您選擇的客戶端證書/密鑰的名稱。 對連接到 VPN 的每台客戶端計算機重複此步驟。
C:Program FilesOpenVPNeasy-rsa>build-key david-laptop
- 現在我們需要使用 build-dh 命令生成“Diffie Hellman”參數。此步驟是設置加密模型所必需的。
C:Program FilesOpenVPNeasy-rsa>build-dh.bat
- 接下來,生成一個共享密鑰(如果使用 tls-auth,則需要)。
"C:Program FilesOpenVPNbinopenvpn.exe" --genkey --secret "C:Program FilesOpenVPNeasy-rsakeysta.key"
第 2 部分。配置 OpenVPN
OpenVPN 提供了可以使用“開始”菜單輕鬆找到的示例配置數據。 開始菜單 -> 所有程序 -> OpenVPN -> OpenVPN 示例配置文件
配置服務器
步驟 1. 複製/編輯文件
- 讓我們首先將示例“服務器配置”文件複製到 easy-rsa 文件夾。這是命令及其輸出:
copy "C:Program FilesOpenVPNsample-configserver.ovpn" "C:Program FilesOpenVPNeasy-rsakeysserver.ovpn"
copy "C:Program FilesOpenVPNeasy-rsa" "C:Program filesOpenVPNbinopenvpn.exe" --genkey --secret
copy "C:Program FilesOpenVPNeasy-rsakeysta.key" "C:Program FilesOpenVPNeasy-rsa"
copy "C:Program FilesOpenVPNsample-configserver.ovpn" "C:Program FilesOpenVPNeasy-rsakeysserver.ovpn" 1 file(s) copied.
- 接下來,您需要編輯 server.ovpn 文件。
notepad "C:Program FilesOpenVPNeasy-rsakeysserver.ovpn
- 現在在文件中找到以下行:
ca - ca.crt
cert - server.crt
key - server.key
dh - dh2048.pem編輯如下:
ca "C:Program FilesOpenVPNconfigca.crt"
cert "C:Program FilesOpenVPNconfigserver.crt"
key "C:Program FilesOpenVPNconfigserver.key"
dh "C:Program FilesOpenVPNconfigdh2048.pem" - 最後,保存並關閉文件。
步驟 2. 客戶資料
- 讓我們首先將示例“服務器配置”文件複製到 easy-rsa 文件夾。這是命令及其輸出:
copy "C:Program FilesOpenVPNsample-configserver.ovpn" "C:Program FilesOpenVPNeasy-rsakeysserver.ovpn"
C:Program FilesOpenVPNeasy-rsa "C:Program filesOpenVPNbinopenvpn.exe" --genkey --secret "C:Program FilesOpenVPNeasy-rsakeysta.key"
C:Program FilesOpenVPNeasy-rsa copy "C:Program FilesOpenVPNsample-configserver.ovpn" "C:Program FilesOpenVPNeasy-rsakeysserver.ovpn"
1 file(s) copied.
C:Program FilesOpenVPNeasy-rsa - 接下來,您需要編輯 server.ovpn 文件。
notepad "C:Program FilesOpenVPNeasy-rsakeysserver.ovpn"
- 現在在文件中找到以下行:
ca ca.crt
cert server.crt
key server.key
dh dh2048.pem編輯如下:
ca "C:Program FilesOpenVPNconfigca.crt"
cert "C:Program FilesOpenVPNconfigserver.crt"
key "C:Program FilesOpenVPNconfigserver.key"
dh "C:Program FilesOpenVPNconfigdh2048.pem" - 最後,保存並關閉文件。
配置客戶端
步驟 1. 複製文件
- 現在您可以使用 robocopy 命令將客戶端上的以下文件從 C:Program FilesOpenVPNeasy-rsakeys 複製到服務器上的 C:Program FilesOpenVPNconfig。
-ca.crt
-ta.key
-dh2048.pem
-server.crt
-server.key
-server.ovpnrobocopy "C:Program FilesOpenVPNeasy-rsakeys " "C:Program FilesOpenVPNconfig"
ca.crt
ta.key
dh2048.pem
server.crt
server.key
server.ovpn
-----------------------------------------------------
ROBOCOPY :: Robust File Copy for Windows
-----------------------------------------------------
Started : Friday, December 27, 2019 12:16:02 PM
Source : C:Program FilesOpenVPNeasy-rsakeys
Dest : C:Program FilesOpenVPNconfig
Files :
ca.crt
dh2048.pem
server.crt
server.ovpn
Options : /DCOPY:DA /COPY:DAT /R:1000000 /W:30
--------------------------------------------------------------------
C:Program FilesOpenVPNeasy-rsakeys
100% New File 2482 ca.crt
100% 432 dh2048.pem
100% New File 10901 server.ovpn
100% New File 657 ta.key
--------------------------------------------------------------------
Total Copied Skipped Mismatch FAILED Extras
Dirs: 1 0 1 0 0 0
Files : 0 0 0 0
Bytes : 14.1 k 14.1 k 0 0 0 0
Times : 0:00:00 0:00:00 0:00:00 0:00:00
Speed : 452250 Bytes/sec.
Speed : 25.877 MegaBytes/min.
Ended : Friday, December 27, 2019 12:16:02 PM
C:Program FilesOpenVPNeasy-rsa - 現在,您可以為每台使用 VPN 的筆記本電腦將服務器上的以下文件從 C:Program FilesOpenVPNeasy-rsakeys 複製到 C:Program FilesOpenVPNconfig – 在這種情況下)
-ca.crt
-ta.key
-david-laptop.crt
-david-laptop.key
-david-laptop.ovpnrobocopy "C:Program FilesOpenVPNeasy-rsakeys " "C:Program FilesOpenVPNconfig " ca.crt ta.key dh2048.pem server.crt server.key server.ovpn
-----------------------------------------------------------------------
ROBOCOPY :: Robust File Copy for Windows
-----------------------------------------------------------------------
Started : Friday, December 27, 2019 12:16:02 PM
Source : C:Program FilesOpenVPNeasy-rsakeys
Dest : C:Program FilesOpenVPNconfig
Files : ca.crt
ta.key
dh2048.pem
server.crt
server.key
server.ovpn
Options : /DCOPY:DA /COPY:DAT /R:1000000 /W:30
-----------------------------------------------------------------------
C:Program FilesOpenVPNeasy-rsakeys
100% New File 2482 ca.crt
100% New File 432 dh2048.pem
100% New File 10901 server.ovpn
100% New File 657 ta.key
-----------------------------------------------------------------------
Total Copied Skipped Mismatch FAILED Extras
Dirs : 1 0 1 0 0 0
Files : 4 4 0 0 0 0
Bytes :14.1 k 14.1 k 0 0 0
Times : 0:00:00 0:00:00 0:00:00 0:00:00
Speed :452250 Bytes/sec.
Speed :25.877 MegaBytes/min.
Ended : Friday, December 27, 2019 12:16:02 PM
C:Program FilesOpenVPNeasy-rsa
注意:每個字符串路徑末尾的空格很重要。
啟動 OpenVPN
然後在服務器和客戶端上,您需要從以下位置運行 OpenVPN:
開始菜單 -> 所有程序 -> OpenVPN -> OpenVPN GUI
最後,雙擊系統托盤中出現的圖標以啟動連接。後續對話框在有效開始時關閉。
最後的想法
防火牆設置
如果您遇到連接問題,請在服務器的防火牆中設置規則以允許端口 1194 上的傳入 UDP 流量。 (Win+R “wf.msc”)
將 OpenVPN 作為服務運行
您還可以將 OpenVPN 作為服務運行。這將允許您:
- 從非管理員帳戶運行的 OpenVPN。
- OpenVPN 在系統啟動時自動啟動。這是與持續連接到服務器的服務器和客戶端一起使用的首選方法。
- 要運行 Windows 服務管理工具:
(按 Windows 鍵 + R)
鍵入“services.msc”並按 Enter 啟動 services.msc 工具。然後找到 OpenVPN 服務並將其啟動類型重置為自動。或者,如果您願意,您可以立即啟動該服務。
安全警告
您還可以將 OpenVPN 作為服務運行。這將允許您:
- 從非管理員帳戶運行的 OpenVPN。
- OpenVPN 在系統啟動時自動啟動。這是與持續連接到服務器的服務器和客戶端一起使用的首選方法。
我期待著您的回音。
我們以成為 Hosting™ 最樂於助人的人而自豪!
我們的支持團隊由經驗豐富的 Linux 工程師和稱職的系統管理員組成,他們特別熟悉本文中提到的許多網絡託管技術。
如果您對此信息有任何疑問,我們可以每天 24 小時、每週 7 天、每年 365 天為您解答有關本文的任何問題。
如果您是完全託管的 VPS 服務器、雲專用服務器、VMWare 私有云、私有父服務器、託管雲服務器或專用服務器的所有者,並且不習慣按照記錄的步驟操作,請致電 @800.580。致電 4985。聯繫地址 和…聊天 或支持票以協助此過程。