
請幫我找出執行以下任務的實施路徑:
我有一個充當網頁伺服器的黑盒子設備(我可以透過在瀏覽器的位址欄位中輸入其 IP 位址來本機連接到它。)除了簡單的使用者名稱和密碼外,該黑盒子不會實施任何安全措施。當該伺服器位於隔離網路上時,這當然沒問題,但我希望可以從互聯網(即從世界任何地方)存取它。因此,我希望使用 TLS 安全性進行資料加密。
擁有可用的 Rasbperry PI(和 openVPN 軟體),我認為它適合此應用程式。關於如何使用 Raspberry PI 實現 VPN、橋接器、路由器和防火牆有很多不同的教程,但我無法弄清楚這四種功能中的哪一種適合我的應用程式。概念圖如下圖所示:
Raspberry Pi 將有兩個用於互聯網訪問的網路介面:一個透過地面乙太網路 (eth0),另一個 - 使用蜂窩互聯網 (eth1) - 後者可用於支援地面互聯網連接。兩個介面的 IP 位址都是已知的。第三個乙太網路介面 (eth2) 將透過交換器連接到本地網路。伺服器也將連接到交換器。我無法控制伺服器(它是一個黑盒子)——我只知道它的 IP 位址。
這個想法是讓 Raspberry PI 充當我和伺服器之間的中間人,這樣我就可以使用我的 Web 瀏覽器安全地連接到其 Web 應用程式。但是 Raspberry Pi 必須實現哪些功能:VPN、路由器、橋接器還是防火牆?
編輯:
我上面所說的任務對我來說太艱鉅了(缺乏能力),我決定先簡化設定。我不想刪除問題的頂部部分,以防有人發現它及其相應的答案有用。相反,我的新(簡化)設定如下所示:
RP 將透過點對點0介面並將所有流量路由到乙太網路0接口將是直接地連接到伺服器:
1. dynamic ppp0 IP address (given by cell service provider)
2. static eth0 IP address (assigned by me)
3. non-secure internet connection
4. RP is connected to the server directly (no switch needed)
我找到了幾個解決方案,例如這和這,但他們沒有清楚地解釋為什麼這樣做。他們還提供了我不知道如何操作的命令列指令撤銷。相反,我希望有人能引用實際的系統/配置文件,我可以根據需要編輯和恢復這些文件。
目前,當我將 RPi 連接到網頁伺服器時,我可以從網頁瀏覽器進行瀏覽。目標是能夠透過 RPi 從網際網路存取網路伺服器。有人可以提供有關如何正確設定路由的教育教程,考慮到 ppp0 介面會根據蜂窩連接而向上和向下移動,並且其 IP 位址每次都會不同且未知。
答案1
太長了;
您需要防火牆來保護您的網路伺服器,而您的路由器可能已經提供了此功能。
細節
您真正需要的只是防火牆和 SSL 來保護您的 Web 伺服器。如果您的家用路由器已經提供了此功能,那麼 Raspberry Pi 將不會為您提供更多的安全性。
您應該使用 SSL 來保護與 Web 伺服器的通訊。您可以使用 Raspberry Pi 作為反向代理來提供 SSL 功能,但存在反向代理是因為 SSL 加密需要大量計算,而代理程式會減輕 Web 伺服器的 SSL 負載。不過,Pi 的運算能力可能比您的網頁伺服器少很多。但如果您正在尋找 Pi 項目,那可能會很有趣。
一個常見的誤解是VPN比沒有VPN「更安全」。 VPN 簡單來說就是加密+隧道。隧道讓兩個網路都相信它們位於同一網路上。除非您試圖「聯姻」兩個網絡,否則您不需要 VPN。 SSL+防火牆應該沒問題。
答案2
最簡單的解決方案是將您的 Pi 設定為路由器/防火牆設備 - 即您希望對 Web 伺服器的請求進行防火牆處理,以便它們僅在透過終止於其上的 VPN 介面時才會遍歷 PI,但不會將Pi 與LAN 上的其他設備隔離。這意味著它只能按照您的圖表強制透過 Pi 進行所有網路連線。如果 LAN 上的另一台裝置受到威脅,則可以透過它取得對 Web 伺服器的存取權限。
(如果您正在尋找簡單的解決方案和中等安全的解決方案,您可以忽略下面的所有內容)
您可以使用更複雜和更昂貴的方案來代替。您可以使用託管交換機並在其自己的 VLAN 上設定 Web 伺服器,而不是使用常規交換機,該 VLAN 僅對 Pi 可見(即 Pi 將在多個 VLAN 上通訊)。您也可以將 Web 伺服器放在自己的 IP 位址上,從而允許 LAN 中的其他裝置與其通信,但只能透過 Pi。
您可以進一步擴展上面的交換器想法,透過對 Web 伺服器所在的 VLAN 進行防火牆處理,以便只有源自 PI 的 VLAN 介面的封包才能在連接埠 80 上通訊。到Pi,它可以在連接埠443 上應答,然後從連接埠80 上的網路伺服器取得請求。能夠連接。