Linux中國

如何在免費 WiFi 中保護隱私(四)

0penVPN 在兩點之間創建了一個加密通道,以阻止第三方訪問你的網路流量數據。通過設置你的 「虛擬專用網路」 服務,你可以成為你自己的 「虛擬專用網路」 服務商。許多流行的 「虛擬專用網路」 服務都使用 0penVPN,所以當你可以掌控自己的網路時,為什麼還要將你的網路連接綁定到特定的提供商呢?

本系列的 第一篇文章 安裝了一個「虛擬專用網路」 的伺服器,第二篇文章 介紹了如何安裝和配置一個 0penVPN 服務軟體,第三篇文章 解釋了如何配置防火牆並啟動你的 0penVPN 服務。第四篇也是最後一篇文章將演示如何從客戶端計算機使用你的 0penVPN 伺服器。這就是你做了前三篇文章中所有工作的原因!

創建客戶端證書

請記住,0penVPN 的身份驗證方法要求伺服器和客戶端都擁有某些東西(證書)並知道某些東西(口令)。是時候設置它了。

首先,為你的客戶端計算機創建一個客戶端證書和一個私鑰。在你的 0penVPN 伺服器上,生成證書請求。它會要求你輸入密碼;確保你記住它:

$ cd /etc/openvpn/ca
$ sudo /etc/openvpn/easy-rsa/easyrsa 
  gen-req greglaptop

本例中,greglaptop 是創建證書的客戶端計算機主機名。

無需將請求導入證書頒發機構(CA),因為它已經存在。審查它以確保請求存在:

$ cd /etc/openvpn/ca
$ /etc/openvpn/easy-rsa/easyrsa 
  show-req greglaptop

你也可以以客戶端身份簽署請求:

$ /etc/openvpn/easy-rsa/easyrsa 
  sign-req client greglaptop

安裝 0penVPN 客戶端軟體

在 Linux 系統上,網路管理器可能已經包含了一個 0penVPN 客戶端。如果沒有,你可以安裝插件:

$ sudo dnf install NetworkManager-openvpn

在 Windows 系統上,你必須從 0penVPN 下載網頁下載和安裝 0penVPN 客戶端。啟動安裝程序並按照提示操作。

複製證書和私鑰到客戶端

現在你的客戶端需要你為其生成的身份驗證憑據。你在伺服器上生成了這些,因此你必須將它們傳輸到你的客戶端。我推薦使用 SSH 來完成傳輸。在 Linux 系統上,通過 scp 命令實現。在 Windows 系統上,你可以以管理員身份運行 WinSCP 來推送證書和密鑰。

假設客戶端名稱為 greglaptop,那麼證書和私鑰的文件名以及服務的位置如下:

/etc/openvpn/ca/pki/issued/greglaptop.crt
/etc/openvpn/ca/pki/private/greglaptop.key
/etc/openvpn/ca/pki/issued/ca.crt

在 Linux 系統上,複製這些文件到 /etc/pki/tls/certs 目錄。在 Windows 系統上,複製它們到 C:Program FilesOpenVPNconfig 目錄。

複製和自定義客戶端配置文件

在 Linux 系統上,你可以複製伺服器上的 /etc/openvpn/client/OVPNclient2020.ovpn 文件到 /etc/NetworkManager/system-connections/ 目錄,或者你也可以導航到系統設置中的網路管理器添加一個「虛擬專用網路」 連接。

連接類型選擇「 證書(TLS) Certificates(TLS) 」。告知網路管理器你從伺服器上複製的證書和密鑰。

![VPN displayed in Network Manager](/data/attachment/album/202108/24/101225t8mprpy33rpc4pry.jpg "VPN displayed in Network Manager")

在 Windows 系統上,以管理員身份運行 WinSCP,將伺服器上的客戶端配置模板 /etc/openvpn/client/OVPNclient2020.ovpn 文件複製到客戶端上的 C:Program FilesOpenVPNconfig 目錄。然後:

  • 重命名它以匹配上面的證書。
  • 更改 CA 證書、客戶端證書和密鑰的名稱以匹配上面從伺服器複製的名稱。
  • 修改 IP 信息,以匹配你的網路。

你需要超級管理員許可權來編輯客戶端配置文件。最簡單的方式就是以管理員身份啟動一個 CMD 窗口,然後從管理員 CMD 窗口啟動記事本來編輯此文件。

將你的客戶端連接到伺服器

在 Linux 系統上,網路管理器會顯示你的 「虛擬專用網路」 連接。選擇它進行連接。

![Add a connection in Network Manager](/data/attachment/album/202108/24/101225w22puqsrqq9dgci0.jpg "Add a「虛擬專用網路」 connection in Network Manager")

在 Windows 系統上,啟動 0penVPN 圖形用戶界面。它會在任務欄右側的 Windows 系統托盤中生成一個圖標,通常位於 Windows 桌面的右下角。右鍵單擊圖標以連接、斷開連接或查看狀態。

對於第一次連接,編輯客戶端配置文件的 remote 行以使用 0penVPN 伺服器的內部 IP 地址。通過右鍵單擊 Windows 系統托盤中的 0penVPN 圖標並單擊「 連接 Connect 」,從辦公室網路內部連接到伺服器。調試此連接,這應該可以找到並解決問題,而不會出現任何防火牆問題,因為客戶端和伺服器都在防火牆的同一側。

接下來,編輯客戶端配置文件的 remote 行以使用 0penVPN 伺服器的公共 IP 地址。將 Windows 客戶端連接到外部網路並進行連接。調試有可能的問題。

安全連接

恭喜!你已經為其他客戶端系統準備好了 0penVPN 網路。對其餘客戶端重複設置步驟。你甚至可以使用 Ansible 來分發證書和密鑰並使其保持最新。

本文基於 D.Greg Scott 的 博客,經許可後重新使用。

via: https://opensource.com/article/21/7/openvpn-client

作者:D. Greg Scott 選題:lujun9972 譯者:perfiffer 校對:wxy

本文由 LCTT 原創編譯,Linux中國 榮譽推出


本文轉載來自 Linux 中國: https://github.com/Linux-CN/archive

對這篇文章感覺如何?

太棒了
0
不錯
0
愛死了
0
不太好
0
感覺很糟
0
雨落清風。心向陽

    You may also like

    Leave a reply

    您的電子郵箱地址不會被公開。 必填項已用 * 標註

    此站點使用Akismet來減少垃圾評論。了解我們如何處理您的評論數據

    More in:Linux中國