利用Veeam PN 作 Site to Site PNV

對於通常企業要作Site to Site PNV 通常配置比較麻煩和有點複雜,html

可是 Veeam 爲了方便備份到Azure 上,在2017年出了一下可以打通企業內網到Azure雲 的通訊,web

推出了一個免費的產品:Veeam PNubuntu

利用它能夠方便的作 Site to Site /point to Site 的PNVvim

veeam PN 從2.0 開始 能夠在ubuntu 18.04上直接安裝,而不用下載他的OVA的虛擬機文件了。瀏覽器

接下來,我就來在ubuntu 上直接安裝Veeam PN 來實現 site to site PNV bash

如下是我測試的環境:app

SiteA: 10.11.12.0/24curl

SiteB: 172.16.8.0/24ide

VeeamPN Hub 部署在 Site A (有公網IP)測試

VeeamPN Hub 內網IP: 10.11.12.9

VeeamPN Gateway 部署在 Site B (無公網IP)

VeeamPN Gateway 內網IP:172.16.8.8

 

VeeamPN System Requirements

  • Ubuntu 18.04
  • 1 vCPU (Minimum)
  • 1 GB vRAM (Minimum)
  • 16 GB of Hard Drive space
  • External Network Connectivity

1.在ubuntu 18.04 VeeamPN

登陸site A ubuntu 配置hostname : ni-pnv 配置靜態IP :10.11.12.9

vi /etc/hostname

vi /etc/netplay/01-necfg.yaml

image

image

netplan apply 應用配置:

image

下載並添加Veeam Software Repository Key:

curl -k http://repository.veeam.com/keys/veeam.gpg | apt-key add -

image

出錯了,緣由是gnupng2 沒有安裝

image

apt install gnupg gnupg2 gnupg1

image

添加VeeamPN 的 APT source list 文件:

vi /etc/apt/sources.list.d/veeampn.list

或:

echo "deb [arch=amd64] http://repository.veeam.com/pn/public pn stable" > /etc/apt/sources.list.d/veeampn.list

而後運行 apt update

image

image

image

添加 WireGuard apt Repository:

apt-add-repository ppa:wireguard/wireguard

image

apt install software-properties-common -y

安裝完後,從新運行apt-add-repository ppa:wireguard/wireguard

image

接下來就能夠正式安裝 VeeamPN:

apt  install veeam-pnv-ui veeam-pnv-svc

image

image

image

直到安裝完成:

image

在瀏覽中打開Veeam PN web Portal:

image

更改root密碼:

image

正式開始部署Veeam PN Hub:

image

image

image

image

image

image

image

image

image

image

image

image

image

image

將這個配置文件保存下來,將在配置Site B 端的Veeam PN 時要用到的。

image

完成Site A 端的 Veeam PN的配置,

而後在Site A 端的防火牆上配置到Site B 端的默認路由。

image

到這裏,Site A 端就所有配置完畢。

 

接下來在Site B 端 的Ubuntu 上安裝Veeam PN

方法和Site A 徹底同樣。這裏省略….

 

安裝Veeam PN 完後,在 瀏覽器中打開 Veeam PN web portal:

image

image

image

image

找到在Site A 配置 Client 時下載的xml配置文件:

image

點擊 :finish 完成配置。

接下來看到 server Connected :

image

接下來咱們看看,從site A 到 site B 是否能連通:

在Site A 的系統上運行cmd

image

到這裏爲止,從Site A 到 Site B 是能夠通訊的。

最後咱們要看一下從Site B 到 Site A是否能通訊?

在site B 端的防火牆上添加一條 到site A 的靜態路由:

image

而後看看,在site B 的系統上ping Site A 是否能通:

image

這樣看來,site B 到 Site A 是沒法通訊的。

經過對比 site A 和 B 的 Veeam PN上的路由表,咱們發如今 Site B 的 Veeam PN 上沒有到 Site A的路由:

Site A 的路由表:

 image

Site B 的路由表:

image

如今試着在Site B 上手工添加一條到 site B 的路由是否是能夠呢:

image

結果是:

image

以前是請求超時,加了路由後是 沒法訪問目標該機

image

跟蹤路由發現應該是site B 端的 veeam pn  沒法轉發 到 site A 的通訊。

此問題暫時無解,後續再看看應該是wireguard 的配置問題。

這個問題在官方的文檔裏都沒有體現,Veeam 在這上面有點過度,

記得 veeam PN 1.0 出現一樣的問題,手工添一條路由就能夠相互通訊的。

如今Veeam PN 2.0 一樣的問題仍是沒有在官方的文檔上提到,

https://helpcenter.veeam.com/docs/veeampn/userguide/how_to_local_sites.html?ver=20

官方論壇裏有人提到:https://forums.veeam.com/veeam-tools-for-microsoft-azure-f36/veeampn-working-but-only-in-one-direction-t62278.html

 

附:

解決方法:

經過對比Site A 和 Site B 上的 Wireguard的配置發現:

site A :

image

Site B:

image

發如今site B 配置中的allowed ips 中並示包括 site A 的地址段:10.11.12.0/24

因此咱們要在site B 的WireGuard 的allowed ips配置中添加 10.11.12.0/24 這段地址:

wg set wg.veeampn peer  ************  allowed-ips 10.11.12.0/24,10.211.0.0/16,10.210.0.0/16

 

image

如今來看看 site B 到 Site A是否能正常通訊:

image

這樣如今是能夠正常通訊的。

因此,從這件事能夠看出有時候徹底按官方文檔來操做也是會出問題,

並且像veeam PN 這樣的在連續幾個版本的更新都存在一樣問題視而不見,

直不知寫那個官方文檔的人是否真正作過測試,仍是想固然的憑空來寫的文檔。

 

經過測試發現手動添加的路由和修改,系統重啓後會消失的。

能夠考慮讓這幾條命令在系統啓動時自動加載

因爲Ubuntu 18.04 默認不啓用rc.local,因些先得啓用:

ubuntu18.04再也不使用 inited 管理系統,改用 systemd,

systemd 默認會讀取 /etc/systemd/system 下的配置文件,該目錄下的文件會連接 /lib/systemd/system/ 下的文件。通常系統安裝完 /lib/systemd/system/ 下會有 rc-local.service 文件,將 /lib/systemd/system/rc-local.service 連接到 /etc/systemd/system/ 目錄下面來:

ln -fs /lib/systemd/system/rc-local.service /etc/systemd/system/rc-local.service

vim /etc/systemd/system/rc-local.service

在文件末尾增長:

[Install]

WantedBy=multi-user.target
Alias=rc-local.service

編輯/etc/rc.local

vim /etc/rc.local

內容爲:

#!/bin/bash

sleep 90

wg set wg.veeampn peer ************ allowed-ips 10.11.12.0/24,10.211.0.0/16

route add -net 10.11.12.0/24 dev wg.veeampn

exit 0

image

這樣就實現真正的site to site 之間的相互通訊了。

相關文章
相關標籤/搜索