本文將繼續介紹如何在開源軟體pfSense上使用OpenVPN套件來建立Site-to-Site VPN(在兩部設備之間建立VPN連線),讓pfSense下的電腦都能輕易地透過VPN連線取得遠端的資源,而無須個別進行連線的動作。
緊接著核發使用者的憑證,就跟之前建立Remote Aceess VPN類似,先選擇System中的User Manager再點選User,最後點選加號圖示,新增一個使用者。然後,依序輸入Username:OpenVPNClient(帳號中間不可以有空白)及Password,並勾選Certificate中的Click to create a user certificate,才會出現憑證相關的欄位。
在此建立一組使用者的憑證:Certificate authority,預設會選擇之前建立的My OpenVPN CA,而Descriptive name部分填入OpenVPN Client以茲識別,最後記得按下〔Save〕按鈕進行存檔,操作畫面如圖4所示。
|
▲圖4 建立使用者帳號及核發使用者憑證。 |
目前已完成Server端的相關設定,接著來完成Client端的部分。先回到Server site,編輯剛剛建立的CA Server,並且把Certificate data的內容複製下來留存備用,如圖5所示。
|
▲圖5 將CA Server的Certificate data取出。 |
在Client端依序點選System,再點選Cert Manager,最後選擇CAs,接著按一下加號圖示,新增一組CA Server。然後,在Descriptive name欄位內輸入My OpenVPN CA,Method的下拉選單內則選擇Import an existing Certificate Authority,接著在Certificate data方框內把剛剛準備好的資料貼入,並按下〔Save〕按鈕存檔,如圖6所示。
|
▲圖6 在Client端貼入CA Server的Certificate data。 |
接著,匯入先前在Server上核發的使用者憑證。先回到Server端,並選擇System中的User Manager再點選User,接著編輯之前建立的使用者OpenVPN Client。依序點選兩個向下的箭頭圖示,匯出Private Key及Cert的文字檔。再使用文件編輯軟體(例如記事本)來開啟這兩個檔案,如圖7所示。
|
▲圖7 匯出使用者Private Key及Cert檔案。 |
然後回到Client端,將剛剛匯出的私鑰及憑證讀入。依序點選System,再點選Cert Manager,最後選擇Certificates,並點選加號圖示。緊接著,在Descriptive name欄位內輸入OpenVPN Client,在Certificate data方框內貼入剛剛匯出的Cert檔的內容,並且在Private key data方框內貼入剛剛匯出的私鑰檔,最後按下〔Save〕按鈕,如圖8所示。
|
▲圖8 匯入使用者Private Key及Cert檔案。 |
這裡再針對所完成的動作做一個簡單的解釋:在Remote Access VPN架構中,是由使用者自行安裝軟體進行VPN連線的動作,而在Site to Site VPN中,此連線動作是由Client端的pfSense取代使用者的動作,由其進行VPN連線,並將後端網路的封包透過此VPN連線送出至對點VPN設備。
至此,已完成Server及Client端CA及憑證相關的設定,後續將接著完成OpenVPN的相關設定。
pfSense相關設定:OpenVPN Server
此步驟的目的是建立OpenVPN Server。先在Server端依序點選VPN,再點選OpenVPN,並選擇Server,接著點選加號圖示,以新增一組Server。在Peer Certificate Authority設定上,應該會自動抓取先前建立的My OpenVPN CA。而Server Certificate部分,請自行選擇下拉選單內的My Server CA(CA: My OpenVPN CA),如圖9所示。
|
▲圖9 進行OpenVPN Server設定。 |
然後是IPv4 Tunnel Network,輸入在內網未使用的10.0.0.0/30,而IPv4 Local Network/s欄位則設定成與Server LAN網段相同的192.168.1.0/24。接下來,在IPv4 Remote Network/s欄位內輸入Client端LAN所屬的192.168.2.0/24,如圖10所示。
|
▲圖10 Tunnel Settings。 |
最下面的Advanced configuration部分,則輸入route 192.168.2.0 255.255.255.0,此動作的目的是告訴pfSense,當VPN Tunnel建立時,將產生一筆192.168.2.0/24的Static Route往對口IP送,如圖11所示。
|
▲圖11 新增靜態路由設定。 |
接著再編輯這個Server,並把剛剛自動產生的TLS Key予以儲存備用,如圖12所示。
|
▲圖12 複製TLS Key備用。 |