IT Knowledge Base

~ Freedom is the right of all sentient beings ~

發佈日期:

如何在Amazon EC2中‧安裝及設定OpenVPN

01. 近來有時間玩一下Amazon EC2的服務,順便試一下如何設定VPN服務。02. 在『OpenVPN網站』下載Community版本。

03. 在伺服器電腦安裝檔案。

04. 過程中需加入『EasyRSA 2 Certificate Management Scripts』,這是用來產生伺服器及客戶端的證書。

05. 程式會問你是否安『TAP-Windows Provider V9 Network adapters』,這就是VPN的網絡卡,當然也要一併安裝。

06. 安裝完成後,以系統管理員身份執行『cmd』程式。

07. 輸入以下命令,轉到『easyrsa資料夾』位置。

cd "\\Program Files\\OpenVPN\\easy-rsa"

08. 在資料夾會看到以下檔案。

09. 執行『init-config.bat』命令,它會產生一個『vars.bat』檔案。

10. 打開『vars.bat』檔案,修改以下內容並儲存。其實不修改也沒有問題,只是之後產生證書時,便需要一行行自行再輸入。當然,測試時也可以毛使用預設的內容。

11. 執行『vars.bat』檔案及『clean-all.bat』檔案。

12. 執行以下命令,建立『Certificate Authority (CA) certificate』的ca.crt文件。

build-ca.bat

13. 執行以下命令,建立伺服器證書,分別為vpnserver.crt、vpnserver.key及vpnserver.csr三個文件。最後的『vpnserver』名字,將會是伺服器證書的檔案名稱。

build-key-server.bat vpnserver


14. 這裡也可以順便建立客戶端證書,,分別為client1.crt、client1.key及client1.csr三個文件,一部電腦需要獨立一張證書。最後的『client1』名字,將會是客戶端證書的檔案名稱。

build-key.bat client1


15. 執行以下命令,建立『Diffie Hellman parameters』的dh2048.pem文件。

build-dh.bat

16. 執行以下命令,建立tls-auth的ta.key文件

openvpn --genkey --secret keys/ta.key

17. 完成以上動作,在『C:\\Program Files\\OpenVPN\\easy-rsa\\keys』,會看到以下檔案。

18. 現在,可以將『C:\\Program Files\\OpenVPN\\sample-config\\server.ovpn』檔案,及『C:\\Program Files\\OpenVPN\\easy-rsa\\keys』資料夾下的vpnserver.crt、vpnserver.key、ca.crt、dh2048.pem及ta.key,複製到『C:\\Program Files\\OpenVPN\\config』位置。

19. 打開『server.ovpn』檔案,修改以下內容。其中cert及key位置,應該根據你自己設定的檔案而更改。完成後儲存檔案。

20. 執行『OpenVPN GUI』程式。

21. 如果使用Windows 10時,會出現『連線至管理介面』錯誤。

22. 打開『C:\\Users\\<用戶名稱>\\OpenVPN\\log\\client.txt』檔案,便會看到錯誤內容。

23. 改以管理員身份執行『OpenVPN GUI』程式便能解決問題。

24. 或直接將修改『OpenVPN GUI』程式設定,預設以管理員身份執行。

25. 再次連線測試。

26. 如成功便會看到派發VPN的IP地址。到此完成伺服器設定。

27. 再來是設定客戶端電腦。將『C:\\Program Files\\OpenVPN\\sample-config\\client.ovpn』檔案及之前建立的『C:\\Program Files\\OpenVPN\\easy-rsa\\keys』資料夾下的client1.crt、client1.key、ca.crt、dh2048.pem及ta.key,複製到『C:\\Program Files\\OpenVPN\\config』位置。

28. 打開『client.ovpn』檔案,修改以下內容。其中cert及key位置,應該根據你自己設定的檔案而更改。完成後儲存檔案。

29. 另外,在remote一項,將內容改為伺服器的IP地址。

30. 儲存『client.ovpn』檔案更改後,可連線測試。或者你會遇上等待連線問題。

31. 如今次測試,伺服器是使用Amazon EC2的Windows Server 2019,那第一部就需要設定『Security Group』,開放『Inbound Rule』容許埠位(port)『1194』通過。

32. 再來就是需要開放Windows Server 2019的防火牆,容許『C:\\Program Files\\OpenVPN\\bin\\openvpn.exe』存取。

33. 再連線如果看到以下內容,表示客戶端電腦已通過VPN連至到伺服器。

發佈留言

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