SSH,也稱為安全shell,提供了一種遠端通路pfsense防火牆的有效方法。 使用SSH而不是其他協定(如telnet)的主要優點是安全性。 SSH流量被完全加密,可以防止其他使用者通過嗅探器進行攻擊。 SSH還可以提供多個簡單的遠端shell,可以安全地傳輸檔案,并将端口轉發到遠端網絡。
啟用SSH 服務
預設情況下,為了安全起見,SSH服務被禁用。啟用服務登入到pfSense路由器的Web界面。
1. 進入系統-進階設定-管理者通路頁籤
2. 選中'啟用安全Shell'檢查框
3. 通過在“SSH端口”框中輸入新的端口号來更改預設端口。
4. 單擊頁面底部的儲存按鈕應用更改并啟動服務。
<a href="https://s4.51cto.com/wyfs02/M00/9A/AF/wKioL1lZojPTN3x1AABTBwylUIE912.png" target="_blank"></a>
測試本地安全SSH服務
Putty是一款非常受歡迎的(免費)SSH用戶端,易于使用。 該程式隻包含一個Putty.exe檔案。
運作Putty後,在頂部的主機框中輸入pfSense路由器的LAN IP位址或主機名。 如果将服務預設端口配置為其他端口,請将端口更改為在設定中輸入的端口值。
點選程式底部的“打開”連接配接到伺服器。
<a href="https://s3.51cto.com/wyfs02/M01/9A/AF/wKioL1lZoj7RNijbAAA3UnMi95w620.png" target="_blank"></a>
控制台菜單
如果連接配接成功,系統将提示你輸入使用者名,使用者名為root,密碼與管理者密碼相同。要通路shell請輸入數字8。
<a href="https://s1.51cto.com/wyfs02/M02/9A/AF/wKioL1lZokuwR2A5AABBFWoCDd8215.png" target="_blank"></a>
更改系統管理者密碼
要更改系統的root密碼,請在系統菜單中打開使用者管理。點選管理者使用者旁邊的編輯按鈕更改密碼。也可以在這裡設定其他帳戶。
<a href="https://s5.51cto.com/wyfs02/M01/9A/AF/wKiom1lZomCTbJnmAABkh5T-Uek421.png" target="_blank"></a>
設定外網通路
為了從外部通路SSH服務,必須建立防火牆規則以允許外部通路通過,否則無法通路。要允許通路,請點選防火牆菜單中的“規則政策”。
<a href="https://s5.51cto.com/wyfs02/M01/9A/AF/wKioL1lZomvyB4o5AACkihT54kQ611.png" target="_blank"></a>
建立防火牆規則
通過單擊防火牆規則頁面右下角的加号建立新的防火牆規則,打開防火牆規則編輯器頁面。
新規則的預設操作是“通過”,這将允許外部位址的通路。
1. 設定接口為WAN。
2. 協定選擇TCP,這是SSH運作的協定。
3. 目的地選擇 “WAN address(WAN位址)”。
4. 目的地端口範圍選擇22,或在SSH框中配置的SSH運作的端口。“到”端口可以留白。
5. 在描述欄輸入備注 “開啟外網通路SSH”
6. 單擊“儲存”完成防火牆規則設定并應用更改。
<a href="https://s1.51cto.com/wyfs02/M02/9A/AF/wKiom1lZonWR7TsMAAGqde52QGM500.png" target="_blank"></a>
經過上面的設定,現在已經可以在外網通過SSH遠端通路pfsense防火牆了。
<a href="https://s1.51cto.com/wyfs02/M00/9A/AF/wKiom1lZon-wCX5WAABBMrSkjP0934.png" target="_blank"></a>
設定基于密鑰的認證
即使您更改了SSH的監聽端口,仍可以通過端口掃描發現該服務。 一旦發現機器人可以對伺服器發起暴力攻擊,試圖找到密碼較弱的帳戶。
為了使服務更安全,可以啟用基于密鑰的身份驗證。 通過啟用密鑰認證,黑客可以嘗試各類懷疑密碼,但沒有私鑰,将永遠不會被授予通路權限。
要關閉密碼身份驗證,并且需要安全的RSA密鑰,請啟用“禁用安全shell的密碼登入”複選框,可以在系統-進階設定-管理者通路頁籤上找到這個設定。
生成密鑰對
要利用基于密鑰的登入,我們必須建立一對密鑰。 公鑰将被輸入到pfSense,私鑰将被存儲在用戶端上。
生成密鑰對的最簡單方法是使用Puttygen程式。單擊然後生成按鈕,然後移動滑鼠建立一些随機性的數值。
<a href="https://s4.51cto.com/wyfs02/M01/9A/AF/wKioL1lZopThH6FBAABDLaWTwlw540.png" target="_blank"></a>
添加公鑰到伺服器
生成密鑰對之後,需要在pfSense的使用者帳戶中添加公鑰。
1. 打開系統-使用者管理菜單。
2. 在要添加密鑰的使用者旁邊,單擊“編輯使用者”按鈕。Admin使用者即為SSH的root帳号。
3. 找到“認證SSH密鑰”,将Puttygen生成的公鑰粘貼到框中。
4. 單擊儲存。
<a href="https://s5.51cto.com/wyfs02/M01/9A/AF/wKiom1lZoqmCDqyPAABApUfsYzg627.png" target="_blank"></a>
儲存私鑰
最後一步是儲存相應的私鑰并配置Putty用戶端來使用它。出于額外安全考慮,我建議為私鑰設定密碼。
沒有密碼短語,任何具有私鑰檔案副本的人都可以連接配接到伺服器。 通過添加密碼,密鑰不能使用,而不知道這個短語是什麼。
要将私鑰存儲在本地計算機上,請單擊Puttygen中的儲存私鑰按鈕。
要将密鑰加載到Putty中,請轉到連接配接 \ SSH下找到的認證設定頁面。 單擊浏覽按鈕,找到儲存私鑰檔案的位置。
<a href="https://s1.51cto.com/wyfs02/M01/9A/AF/wKiom1lZoraAprlCAAA_7eD5QLQ343.png" target="_blank"></a>
測試密鑰
密鑰加載到用戶端後,您可以嘗試連接配接到SSH伺服器,應該會看到如下面的螢幕截圖中的消息,指出公鑰正在用于身份驗證。
如果為私鑰配置設定了密碼短語,則會在此時提示您輸入密碼。
<a href="https://s4.51cto.com/wyfs02/M01/9A/AF/wKioL1lZoxeBirEvAACQiu_2f-c433.jpg" target="_blank"></a>
使用WinSCP通過SSH傳輸檔案
SSH也可用于使用SCP(安全複制協定)将檔案導入到pfSense或從pfSense導出檔案。 使用SCP,可以使用現有的SSH認證系統,将檔案安全地傳輸到遠端系統或從遠端系統導入。
對于Windows使用者,可以使用WinSCP程式。 WinSCP程式提供了一個易于使用的界面,用于通過SSH傳輸檔案。
啟動WinSCP後,在主機名中輸入pfSense的外部ip位址,輸入你設定的SSH端口号。使用與SSH連接配接時使用的相同憑據登入。
<a href="https://s5.51cto.com/wyfs02/M02/9A/AF/wKioL1lZotajN9fhAAA4jke6qbs035.png" target="_blank"></a>
連接配接建立後,将直接在右側列出遠端系統的清單。 螢幕左側顯示本地檔案系統。
WinSCP界面基本上與Windows資料總管相同,可以在遠端和本地計算機之間拖放檔案和目錄。
<a href="https://s1.51cto.com/wyfs02/M00/9A/AF/wKioL1lZouTDLzAsAAET4t5ICwQ073.png" target="_blank"></a>
本文轉自 鐵血男兒 51CTO部落格,原文連結:http://blog.51cto.com/fxn2025/1943916,如需轉載請自行聯系原作者