10分鐘搞定WireGuard異地組網(wǎng):快速搭建安全高效的私有VPN網(wǎng)絡(luò)
當(dāng)前位置:點(diǎn)晴教程→知識管理交流
→『 技術(shù)文檔交流 』
前言 筆者在現(xiàn)在工作中經(jīng)常需要下發(fā)一些比較占用網(wǎng)絡(luò)帶寬的腳本任務(wù),一時(shí)間搞得家里的網(wǎng)絡(luò)異常擁堵。正在發(fā)愁之際突然想起老家的千兆寬帶一直都是半閑置狀態(tài),除了爸媽刷短視頻的那點(diǎn)流量外,其余時(shí)間都是空閑著,那有沒有辦法將任務(wù)下發(fā)到老家設(shè)備,將這千兆寬帶給利用上呢? 構(gòu)想了一下,其實(shí)只需要在老家放置一臺服務(wù)器,通過遠(yuǎn)程登錄下發(fā)任務(wù)指令,等待任務(wù)處理完畢再取回任務(wù)結(jié)果就完事了,這樣整個(gè)任務(wù)執(zhí)行期間所占用的帶寬都是通過老家千兆寬帶出去,筆者這邊只需要下發(fā)指令和獲取結(jié)果,極大地緩解筆者所在網(wǎng)絡(luò)的帶寬壓力。 這里面最大的問題就是:要怎么才能方便地登錄老家服務(wù)器呢?筆者這里的網(wǎng)絡(luò)和老家的網(wǎng)絡(luò)都是經(jīng)過NAT的地址,沒有公網(wǎng)IP。經(jīng)過一番搜索,最終選定使用WireGuard進(jìn)行異地組網(wǎng),在老家網(wǎng)絡(luò)環(huán)境放置一臺服務(wù)器(樹莓派),使用一臺云服務(wù)器作為中轉(zhuǎn)節(jié)點(diǎn)(有公網(wǎng)IP地址),筆者所在網(wǎng)絡(luò)使用一服務(wù)器(用于連接中轉(zhuǎn)節(jié)點(diǎn)),將三臺設(shè)備進(jìn)行組網(wǎng),筆者所在網(wǎng)絡(luò)服務(wù)器經(jīng)中轉(zhuǎn)服務(wù)器就可以訪問老家環(huán)境服務(wù)器,整個(gè)拓?fù)淙缦拢?/span> 其實(shí)進(jìn)行異地組網(wǎng)的方式有很多,這里說下為啥要使用WireGuard,最主要的原因就是:簡潔。網(wǎng)上有很多使用OpenVPN進(jìn)行組網(wǎng)的教程,各種證書,配置文件,看得人實(shí)在頭大,據(jù)說WireGuard只有4000行代碼,Linux之父Linus Torvalds都對其贊不絕口,那還不得試一試嘛。(雖然筆者在使用WireGuard搭建時(shí)也費(fèi)了很大氣力,其中最主要的原因就是網(wǎng)上一些關(guān)于WireGuard文章介紹配置信息并不準(zhǔn)確,可能那些文章作者自己根本就沒有跑通,這也是筆者寫本文的目的,相信讀者看了本文,按文中配置操作10分鐘就能搞定。) 另在此特別聲明,本教程僅為了辦公方便進(jìn)行異地組網(wǎng)使用,勿作其他非法用途,由此帶來的問題需要由使用者本人承擔(dān),與筆者無關(guān)。 安裝 要求內(nèi)核版本5.6及以上,如果不符合要求,請升級內(nèi)核版本或更換操作系統(tǒng)
網(wǎng)絡(luò)規(guī)劃 在配置前我們需要提前規(guī)劃好網(wǎng)絡(luò),組網(wǎng)的IP地址不要與本機(jī)原有地址重復(fù),筆者這里規(guī)劃如下:
如下圖: 中繼節(jié)點(diǎn)配置 最先配置中繼節(jié)點(diǎn)Server1,這里先生成所需要的密鑰
編輯配置文件
接入節(jié)點(diǎn)配置 同樣參照中繼節(jié)點(diǎn)的命令,生成該節(jié)點(diǎn)的私鑰和公鑰,記得將生成的公鑰信息填寫到中繼節(jié)點(diǎn)的配置信息中。 生成密鑰后,對接入節(jié)點(diǎn)進(jìn)行配置(Client1和Client2除了IP地址和密鑰不同外,其他地方都類似,下面只演示Client1配置)
啟動(dòng)服務(wù) 完成上面的配置后,就可以啟動(dòng)服務(wù)啦。 注意Server1、Client1和Client2的配置文件公鑰私鑰都要配置正確。 以下操作需要在中繼節(jié)點(diǎn)和接入節(jié)點(diǎn)上操作:
測試連接狀態(tài) 完成上面操作后就可以使用10.0.0.0網(wǎng)段IP進(jìn)行相互訪問啦。
常見錯(cuò)誤 以下是常見的錯(cuò)誤,如果按上面配置發(fā)現(xiàn)仍然無法訪問,可以按下面清單依次檢查:
結(jié)語 經(jīng)過上面配置后,現(xiàn)在已經(jīng)成功實(shí)現(xiàn)通過云服務(wù)器的中繼節(jié)點(diǎn),將兩個(gè)異地的內(nèi)網(wǎng)組合在一塊了。但又遇到一個(gè)問題,Client1與Client2進(jìn)行通信時(shí),所有的流量都需要經(jīng)過云服務(wù)器Server1,但是筆者的云服務(wù)器恰好是按使用流量進(jìn)行收費(fèi),如果遇到任務(wù)結(jié)果數(shù)據(jù)量巨大,那從Client2傳輸?shù)紺lient1的流量費(fèi)用是任務(wù)數(shù)據(jù)量的兩倍,這樣就太心疼了。 通過一段時(shí)間的摸索,筆者發(fā)現(xiàn)可以通過網(wǎng)盤實(shí)現(xiàn)任務(wù)結(jié)果文件的傳輸,即Client1到Client2的任務(wù)指令通過云服務(wù)器的中繼節(jié)點(diǎn)下發(fā),而Client2的結(jié)果數(shù)據(jù)通過中間網(wǎng)盤進(jìn)行傳輸。這樣就不會(huì)受到云服務(wù)的流量費(fèi)用或者是帶寬限制。如下圖: 好啦,本文到此就結(jié)束了,祝大家組網(wǎng)一遍通過!對于使用網(wǎng)盤傳輸文件感興趣的同學(xué)可以看看這篇文章。 閱讀原文:原文鏈接 該文章在 2025/9/8 9:05:07 編輯過 |
關(guān)鍵字查詢
相關(guān)文章
正在查詢... |