知識庫 使用 Profitserver 服務的簡單說明
主要 知識庫 如何在你的伺服器上設定 Wireguard VPN

如何在你的伺服器上設定 Wireguard VPN


本文將詳細介紹如何在您的伺服器上設定 Wireguard VPN。它可以是虛擬伺服器或私人伺服器——這並不重要。

此 VPN Wireguard 設定指南專為沒有太多經驗的使用者設計,因此所有步驟都將非常詳細,並附有螢幕截圖。

透過我們的隧道傳輸的流量將被加密,並且互聯網將顯示我們的 VPN 伺服器的 IP 位址,而不是我們透過其存取網路的供應商的位址。

假設您已經有一個 VPS。如果沒有,你可以 訂購 它來自我們。

我們將在我們的伺服器上安裝 Ubuntu 22.04 作業系統。如果你的伺服器有不同的作業系統,那麼你可以按照以下步驟輕鬆重新安裝它: 指示.

因此,裝有 Ubuntu 22.04 作業系統的伺服器已經準備就緒,現在我們透過 SSH 連接到它。如果您突然之前沒有遇到過該協議,那麼詳細描述此過程的文章將會對您有所幫助。第二段 文章 適用於Linux作業系統,第三個適用於Windows作業系統。

設定 Wireguard 伺服器

連接成功後,我會寫一些命令以及它們產生的描述,以便理解這個過程:

我們更新儲存庫中的軟體包列表

apt update

套餐本身的更新

apt upgrade -y

安裝 wireguard 套件

apt install -y wireguard

我們的配置將存放在/etc/wireguard/目錄中,我們需要進入該目錄:

cd /etc/wireguard/

我們的伺服器需要一個公鑰和私鑰。我們將在使用命令建立檔案和目錄時設定正確的權限後生成它們:

umask 077
wg genkey > privatekey
wg pubkey < privatekey > publickey

現在我們設定私鑰的權限:

chmod 600 privatekey

在建立設定檔之前,我們需要網路介面的名稱。要發現它,請使用以下命令:

ip a

我們需要具有用於目前連接的 IP 位址的介面。在您的情況下它可能會被稱為 ens3,但也可能有其他名稱。

設定 Wireguard - 我們的伺服器需要公鑰和私鑰

我們還需要一個公鑰和私鑰。為了顯示它們我使用 tail

tail privatekey publickey

它看起來像這樣:

我們還需要一個公鑰和私鑰。為了顯示它們我使用 tail

對於編輯,您可以使用任何 Linux 文字編輯器。我會使用奈米。要安裝它,您需要執行以下命令:

apt install -y nano

我們編輯設定檔:

nano /etc/wireguard/wg0.conf

備註

為了保存文件,我們使用 ctrl+o 按鈕組合

退出- ctrl+x

它應該是這樣的:

[Interface]
PrivateKey = [ your private key ]
Address = 10.30.0.1/24
ListenPort = 51928
PostUp = iptables -A FORWARD -i %i -j ACCEPT; iptables -t nat -A POSTROUTING -o [ interface name ] -j MASQUERADE
PostDown = iptables -D FORWARD -i %i -j ACCEPT; iptables -t nat -D POSTROUTING -o [ interface name ] -j MASQUERADE

就我而言,它看起來像這樣

我們編輯設定檔

我們開啟ip轉發

echo "net.ipv4.ip_forward=1" >> /etc/sysctl.conf
sysctl -p

啟動 wireguard 服務:

systemctl start [email protected]

如果我們希望服務在伺服器重新啟動後啟動,那麼我們可以執行以下操作:

systemctl enable [email protected]

查看服務狀態:

systemctl status [email protected]

狀態應為活動狀態,如螢幕截圖所示:

狀態應為活動狀態,如螢幕截圖所示

如果您仔細遵循我們的說明,那麼在此階段,您已經擁有使 VPN Wireguard 的伺服器部分運作所需的一切。

設定 Wireguard 用戶端

剩下的就是配置客戶端部分。為了舉例和簡單起見,我還將在伺服器上為客戶端部分產生金鑰。但為了安全起見,在客戶端產生金鑰更為正確。我使用命令來產生:

wg genkey > mypc_privatekey
wg pubkey < mypc_privatekey > mypc_publickey

我還將產生在手機上使用 VPN 的金鑰:

wg genkey > myphone_private
keywg pubkey < myphone_privatekey > myphone_publickey

需要注意的是,所有這些都需要在目錄中進行

/etc/wireguard/

您也可以在另一個目錄中運作。但為了簡單起見,我們執行 /etc/wireguard/ 中的指令

我們使用 ls 指令列出目錄中的檔案。我得到這樣的:

我還將為伺服器上的 Wireguard 用戶端部分產生密鑰

讓我們在螢幕上顯示公鑰。我們需要它們來將節點添加到我們的網路:

tail mypc_publickey myphone_publickey

對我來說它看起來像這樣:

讓我們在螢幕上顯示公鑰

讓我們編輯設定檔:

nano wg0.conf

新增以下行:

[Peer]
PublicKey = [ mypc_publickey ]
AllowedIPs = 10.30.0.2/32 

[Peer]
PublicKey = [ myphone_publickey ]
AllowedIPs = 10.30.0.3/32

現在設定檔如下所示:

讓我們編輯設定檔

儲存檔案並重新啟動我們的服務:

systemctl restart wg-quick@wg0

讓我們檢查一下一切是否成功:

systemctl status wg-quick@wg0

狀態必須為活躍

每次編輯伺服器設定檔(wg0.conf)後都需要重新載入服務

接下來,我們將為客戶端(就我而言,是我的 PC 和手機)​​建立配置。我將在伺服器上執行同樣的事情。

nano mypc.conf
[Interface] 
PrivateKey = [mypc_privatekey private key] 
Address = 10.30.0.2/32 
DNS = 8.8.8.8 

[Peer] 
PublicKey = [publickey server publc key] 
Endpoint =[ server ip address]:51928 
AllowedIPs = 0.0.0.0/0 
PersistentKeepalive = 20

在 Endpoint 欄位中,您可以看到伺服器的 IP 位址 - 這是我們用於透過 SSH 連線的 IP 位址。若要查看介面和位址,可以使用 ip a 指令。

為行動裝置設定 Wireguard

我們為我們的手機創建類似的配置。只需更改地址即可。對於 PC,它是 10.30.0.2/32,而在手機配置中我們將它設為 10.30.0.3/32。另外,如果我們想在其他設備上使用 VPN,那麼我們應該在設定檔中的 Address 欄位和 wg0.conf 伺服器設定檔中的 AllowedIPs 欄位中新增其他位址

就我而言,文件如下所示:

我的電腦設定檔

我們應該在設定檔的地址欄位中新增其他地址

我的手機設定檔

我的手機設定檔

為了連接,我們安裝 wireguard 客戶端 https://www.wireguard.com/install/

在 Windows 應用程式中,我們新增一個新的隧道並輸入在 mypc.conf 檔案中建立的配置

在 Windows 應用程式中,我們新增一個新的隧道並輸入在 mypc.conf 檔案中建立的配置

我們啟動隧道,然後透過瀏覽器造訪顯示我們地址的網站

我們啟動隧道,然後透過瀏覽器造訪顯示我們地址的網站

為了方便在手機上新增VPN,請在伺服器上安裝一個產生二維碼的程式:

apt install -y qrencode

進入配置目錄,執行以下步驟:

qrencode -t ansiutf8 -r myphone.conf
為了方便在手機上新增VPN,請在伺服器上安裝一個產生二維碼的程序

然後我們在手機上進入Wireguard應用,按+新建隧道,選擇掃描二維碼,掃描一下,開啟VPN。接下來,我們將使用顯示輸出 IP 位址的任何資源來檢查我們是否顯示伺服器的位址。

然後我們在手機上進入Wireguard應用,按+創建新的隧道 檢查我們是否使用任何顯示輸出 IP 位址的資源來顯示伺服器的位址

你做到了!

❮ 上一篇文章 如何從 IOS 或 Android 上的智慧型手機透過 RDP(遠端桌面)連接到 Windows 伺服器
下一篇文章❯ Linux 上的 VPN 伺服器設定:PPTP 還是 OpenVPN?

向我們諮詢有關 VPS 的問題

無論白天或黑夜,我們隨時準備好解答您的問題。