成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

用 NetworkManager 配置 wireguard 虛擬私有網絡

運維 系統運維
本文描述了如何在兩個對等節點(PeerA 與 PeerB)間設置 wireguard。兩個節點均運行 Fedora Linux 系統,使用 NetworkManager 進行持久性配置。

[[398802]]

虛擬私有網絡Virtual Private Networks應用廣泛。如今有各種方案可供使用,用戶可通過這些方案訪問任意類型的資源,同時保持其機密性與隱私性。

最近,wireguard 因為其簡單性、速度與安全性成為最廣泛使用的虛擬私有網絡協議之一。wireguard 最早應用于 Linux 內核,但目前可以用在其他平臺,例如 iOS、Android 等。

wireguard 使用 UDP 作為其傳輸協議,并在 Critokey Routing(CKR)的基礎上建立對等節點之間的通信。每個對等節點(無論是服務器或客戶端)都有一對密鑰key(公鑰與私鑰),公鑰與許可 IP 間建立通信連接。有關 wireguard 更多信息請訪問其 wireguard.com/" _fcksavedurl="https://www.wireguard.com/" class="ext" rel="external nofollow" target="_blank">主頁

本文描述了如何在兩個對等節點(PeerA 與 PeerB)間設置 wireguard。兩個節點均運行 Fedora Linux 系統,使用 NetworkManager 進行持久性配置。

wireguard-%E8%AE%BE%E7%BD%AE%E4%B8%8E%E7%BD%91%E7%BB%9C%E9%85%8D%E7%BD%AE" class="mume-header">wireguard 設置與網絡配置

在 PeerA 與 PeerB 之間建立持久性虛擬私有網絡連接只需三步:

  1. 安裝所需軟件包。
  2. 生成密鑰對key pair
  3. 配置 wireguard 接口。

安裝

在兩個對等節點(PeerA 與 PeerB)上安裝 wireguard-tools 軟件包:

  1. $ sudo -i
  2. # dnf -y install wireguard-tools

這個包可以從 Fedora Linux 更新庫中找到。它在 /etc/wireguard/ 中創建一個配置目錄。在這里你將創建密鑰和接口配置文件。

生成密鑰對

現在,使用 wg 工具在每個節點上生成公鑰與私鑰:

  1. # cd /etc/wireguard
  2. # wg genkey | tee privatekey | wg pubkey > publickey

wireguard-%E6%8E%A5%E5%8F%A3" class="mume-header">在 PeerA 上配置 wireguard 接口

wireguard 接口命名規則為 wg0wg1 等等。完成下述步驟為 wireguard 接口創建配置:

  • PeerA 節點上配置想要的 IP 地址與掩碼。
  • 該節點監聽的 UDP 端口。
  • PeerA 的私鑰。
  1. # cat << EOF > /etc/wireguard/wg0.conf
  2. [Interface]
  3. Address = 172.16.1.254/24
  4. SaveConfig = true
  5. ListenPort = 60001
  6. PrivateKey = mAoO2RxlqRvCZZoHhUDiW3+zAazcZoELrYbgl+TpPEc=
  7.  
  8. [Peer]
  9. PublicKey = IOePXA9igeRqzCSzw4dhpl4+6l/NiQvkDSAnj5LtShw=
  10. AllowedIPs = 172.16.1.2/32
  11. EOF

允許 UDP 流量通過節點監聽的端口:

  1. # firewall-cmd --add-port=60001/udp --permanent --zone=public
  2. # firewall-cmd --reload
  3. success

最后,將接口配置文件導入 NetworkManager。這樣,wireguard 接口在重啟后將持續存在。

  1. # nmcli con import type wireguard file /etc/wireguard/wg0.conf
  2. Connection 'wg0' (21d939af-9e55-4df2-bacf-a13a4a488377) successfully added.

驗證 wg0的狀態:

  1. # wg
  2. interface: wg0
  3. public key: FEPcisOjLaZsJbYSxb0CI5pvbXwIB3BCjMUPxuaLrH8=
  4. private key: (hidden)
  5. listening port: 60001
  6.  
  7. peer: IOePXA9igeRqzCSzw4dhpl4+6l/NiQvkDSAnj5LtShw=
  8. allowed ips: 172.16.1.2/32
  9.  
  10. # nmcli -p device show wg0
  11.  
  12. ===============================================================================
  13. Device details (wg0)
  14. ===============================================================================
  15. GENERAL.DEVICE: wg0
  16. -------------------------------------------------------------------------------
  17. GENERAL.TYPE: wireguard
  18. -------------------------------------------------------------------------------
  19. GENERAL.HWADDR: (unknown)
  20. -------------------------------------------------------------------------------
  21. GENERAL.MTU: 1420
  22. -------------------------------------------------------------------------------
  23. GENERAL.STATE: 100 (connected)
  24. -------------------------------------------------------------------------------
  25. GENERAL.CONNECTION: wg0
  26. -------------------------------------------------------------------------------
  27. GENERAL.CON-PATH: /org/freedesktop/NetworkManager/ActiveC>
  28. -------------------------------------------------------------------------------
  29. IP4.ADDRESS[1]: 172.16.1.254/24
  30. IP4.GATEWAY: --
  31. IP4.ROUTE[1]: dst = 172.16.1.0/24, nh = 0.0.0.0, mt =>
  32. -------------------------------------------------------------------------------
  33. IP6.GATEWAY: --
  34. -------------------------------------------------------------------------------

上述輸出顯示接口 wg0 已連接。現在,它可以和虛擬私有網絡 IP 地址為 172.16.1.2 的對等節點通信。

wireguard-%E6%8E%A5%E5%8F%A3" class="mume-header">在 PeerB 上配置 wireguard 接口

現在可以在第二個對等節點上創建 wg0 接口的配置文件了。確保你已經完成以下步驟:

  • PeerB 節點上設置 IP 地址與掩碼。
  • PeerB 的私鑰。
  • PeerA 的公鑰。
  • PeerA 的 IP 地址或主機名、監聽 wireguard 流量的 UDP 端口。
  1. # cat << EOF > /etc/wireguard/wg0.conf
  2. [Interface]
  3. Address = 172.16.1.2
  4. SaveConfig = true
  5. PrivateKey = UBiF85o7937fBK84c2qLFQwEr6eDhLSJsb5SAq1lF3c=
  6.  
  7. [Peer]
  8. PublicKey = FEPcisOjLaZsJbYSxb0CI5pvbXwIB3BCjMUPxuaLrH8=
  9. AllowedIPs = 172.16.1.254/32
  10. Endpoint = peera.example.com:60001
  11. EOF

最后一步是將接口配置文件導入 NetworkManager。如上所述,這一步是重啟后保持 wireguard 接口持續存在的關鍵。

  1. # nmcli con import type wireguard file /etc/wireguard/wg0.conf
  2. Connection 'wg0' (39bdaba7-8d91-4334-bc8f-85fa978777d8) successfully added.

驗證 wg0 的狀態:

  1. # wg
  2. interface: wg0
  3. public key: IOePXA9igeRqzCSzw4dhpl4+6l/NiQvkDSAnj5LtShw=
  4. private key: (hidden)
  5. listening port: 47749
  6.  
  7. peer: FEPcisOjLaZsJbYSxb0CI5pvbXwIB3BCjMUPxuaLrH8=
  8. endpoint: 192.168.124.230:60001
  9. allowed ips: 172.16.1.254/32
  10.  
  11. # nmcli -p device show wg0
  12.  
  13. ===============================================================================
  14. Device details (wg0)
  15. ===============================================================================
  16. GENERAL.DEVICE: wg0
  17. -------------------------------------------------------------------------------
  18. GENERAL.TYPE: wireguard
  19. -------------------------------------------------------------------------------
  20. GENERAL.HWADDR: (unknown)
  21. -------------------------------------------------------------------------------
  22. GENERAL.MTU: 1420
  23. -------------------------------------------------------------------------------
  24. GENERAL.STATE: 100 (connected)
  25. -------------------------------------------------------------------------------
  26. GENERAL.CONNECTION: wg0
  27. -------------------------------------------------------------------------------
  28. GENERAL.CON-PATH: /org/freedesktop/NetworkManager/ActiveC>
  29. -------------------------------------------------------------------------------
  30. IP4.ADDRESS[1]: 172.16.1.2/32
  31. IP4.GATEWAY: --
  32. -------------------------------------------------------------------------------
  33. IP6.GATEWAY: --
  34. -------------------------------------------------------------------------------

上述輸出顯示接口 wg0 已連接。現在,它可以和虛擬私有網絡 IP 地址為 172.16.1.254 的對等節點通信。

驗證節點間通信

完成上述步驟后,兩個對等節點可以通過虛擬私有網絡連接相互通信,以下是 ICMP 測試結果:

  1. [root@peerb ~]# ping 172.16.1.254 -c 4
  2. PING 172.16.1.254 (172.16.1.254) 56(84) bytes of data.
  3. 64 bytes from 172.16.1.254: icmp_seq=1 ttl=64 time=0.566 ms
  4. 64 bytes from 172.16.1.254: icmp_seq=2 ttl=64 time=1.33 ms
  5. 64 bytes from 172.16.1.254: icmp_seq=3 ttl=64 time=1.67 ms
  6. 64 bytes from 172.16.1.254: icmp_seq=4 ttl=64 time=1.47 ms

在這種情況下,如果你在 PeerA 端口 60001 上捕獲 UDP 通信,則將看到依賴 wireguard 協議的通信過程和加密的數據:

 

捕獲依賴 wireguard 協議的節點間 UDP 流量

總結

虛擬私有網絡很常見。在用于部署虛擬私有網絡的各種協議和工具中,wireguard 是一種簡單、輕巧和安全的選擇。它可以在對等節點之間基于 CryptoKey 路由建立安全的點對點連接,過程非常簡單。此外,NetworkManager 支持 wireguard 接口,允許重啟后進行持久配置。 

 

責任編輯:龐桂玉 來源: Linux中國
相關推薦

2013-09-24 09:21:22

虛擬私有云VPCVPN

2013-09-26 10:34:49

亞馬遜虛擬化

2021-07-01 20:24:01

開源開源工具虛擬專用網絡

2015-09-16 10:01:42

私有云網絡應用虛擬化

2010-08-18 16:10:18

虛擬路由器

2012-07-06 09:33:27

虛擬化

2022-09-21 10:12:59

WireGuard路由Linux

2020-06-05 09:38:33

云計算私有云互聯網

2017-05-27 16:21:58

私有云虛擬私有云混合云

2013-01-28 09:25:54

2012-05-28 09:26:09

虛擬化私有云

2012-02-07 10:13:25

虛擬化私有云虛擬化管理

2015-06-23 11:01:52

云計算資源池軟件定義網絡

2021-08-12 16:42:09

WireGuardWindows內核NT

2009-07-10 11:24:43

交換機配置控制

2009-03-25 09:52:00

虛擬網絡VLAN配置

2015-11-06 11:03:35

OpenStackHeatIaaS

2013-11-15 09:22:26

亞馬遜虛擬桌面私有云

2013-05-02 14:13:13

虛擬化私有云

2013-04-15 09:41:23

虛擬私有云VPC
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 日韩福利在线 | 中文字幕一区二区三区四区五区 | 国产成人在线视频 | 欧美美女二区 | 一区二区欧美在线 | 国产成人亚洲精品 | 日本精品免费 | 精品一区精品二区 | 伊色综合久久之综合久久 | 中文字幕一区二区三区四区不卡 | 亚洲精选一区二区 | 国产超碰人人爽人人做人人爱 | 日韩看片 | 亚洲一区二区三区免费视频 | 我想看国产一级毛片 | 久久久久亚洲精品国产 | 久久久激情 | 一区二区三区电影在线观看 | 中文字幕高清视频 | 超碰最新在线 | 日韩在线综合 | 天天躁日日躁狠狠很躁 | 久久精品亚洲精品国产欧美 | 男女视频91| 国产人成精品一区二区三 | 91在线视频播放 | 久久精品国产一区二区电影 | 永久精品 | 中文字幕二区 | 国产精品一区二区三区在线 | 国产欧美日韩二区 | 91国内精精品久久久久久婷婷 | 日韩欧美高清dvd碟片 | 成人免费视频网站在线观看 | 久久久综合久久 | 天天夜干 | 狠狠操狠狠干 | 亚洲狠狠爱 | 国产视频二区 | 韩日在线视频 | 人碰人操|