視窗

如何使用Raspberry Pi防火牆

您是否正在尋找一種方法來創建 Raspberry Pi防火牆 更長的時間? 如果您無法使用OpenWRT和Pfsense執行此操作,那麼此博客絕對適合您。 Raspberry Pi具有單個以太網插槽,這就是為什麼無法在Raspberry Pi上創建正版防火牆的原因。 但是,可以生產具有防火牆功能的路由器。 要執行此任務,您需要在Pi上安裝一些軟件塊。 在深入探討細節之前,讓我們討論一些基本的東西!

什麼是路由器防火牆?

要了解這一點,您應該知道路由器和防火牆的含義。 路由器是指將兩個網絡相互鄰接的網絡小工具。 如果您的計算機具有兩個或多個以太網端口,同時具有不同的網絡,則它的行為就像路由器。 然後,您將有兩個網絡共享與路由器的連接,即2.0和1.0。 如果有一個配置良好的路由器,則它可以使X和Y相互查看,而在不同的網絡上工作。

Raspberry Pi具有單個以太網卡。 但是,用戶可以使用WiFi卡來創建另一個網絡。 在這裡,您將了解如何將WiFi網絡連接到以太網。 另一方面,防火牆指的是一種軟件。 該軟件使用戶可以將安全策略插入路由器。 如以上示例所述,我們提到X可以ping Y,但是不能訪問其HTTP服務器。 在這裡,我們將使用“iptables的”軟件。 在防火牆方面,您可以根據自己的喜好使用其他軟件。

為了創建無線訪問和其他用於監視網絡的軟件,用戶必須閱讀一些說明。 使用它甚至可以過濾一些流量。 因此,如果您願意這樣做,請繼續關注。

這是我當前的網絡:

我想這樣改變它:

  • 在網絡上安裝Raspberry Pi防火牆
  • 允許使用各種網絡子網的WiFi接入點
  • 在兩個網絡之間架起一座橋樑
  • 設置一些防火牆規則和規定
  • 安裝其他軟件

在這裡,我們將詳細討論這些步驟。 因此,讓我們從此過程的第一步開始。

此外,您將了解更多有關 防火牆基礎如何關閉防火牆 以及 有狀態vs.無狀態firewal 這裡。

安裝 Raspberry Pi防火牆

最初,您必須在網絡上安裝Raspberry Pi防火牆。 為此,請遵循:

  • 安裝Raspbian
  • 不需要桌面模型,除非用戶喜歡使用Raspbian來完成其他任務
  • 使用RJ45電纜在網絡上插入Raspberry Pi。
  • 使用靜態IP地址不是強制性的,但可以有所幫助。
  • 之後,使用以下命令更新系統: sudo apt update, sudo apt升級sudo重啟.
  • 通過導航到raspi-config,Interface選項和SSH來允許SSH 須藤raspi-config.

就是這樣,現在是時候安裝路由器了。 因此,讓我們知道如何執行路由器安裝。

另外,這是 Mikrotik防火牆規則虛擬化的好處 供大家參考。

安裝無線路由器

很有可能將Raspberry Pi防火牆手動配置為WiFi路由器。 但是,這有點耗時且複雜。 為了讓您更輕鬆,我們為您提供了相同的腳本。

  • 該腳本在GitHub上可用。 首先,您需要安裝git才能下載該程序。 例如, sudo安裝git
  • 切換到新文件夾下載此程序,

cd / opt

git clone https://github.com/unixabg/RPI-Wireless-Hotspot/git

  • 切換到子目錄,即 cd RPI-無線熱點/
  • 通過以下方式開始安裝過程 須藤/安裝

現在,腳本會問幾個問題。 回答完問題後,Raspberry Pi將重新啟動以應用更改。 完成此過程後,您可以將Raspberry Pi防火牆用作路由器。 在WiFi的網絡列表中,您將看到apt SSID。 連接到服務器後,檢查一切是否正常。 因此,網絡配置僅需更多。

PS:這是關於 SMB端口防火牆防火牆的重要性,以及所有 防火牆類型供大家參考。

防火牆理論

防火牆的主要作用基本上是允許或阻止從特定IP地址到另一個IP地址的訪問。 大多數時候,我們經常使用端口來設置精確的權限。 在防火牆配置中,有兩個基本規則,即遵循規則“允許所有……'和遵循規則的白名單'拒絕所有……

因此,請根據您希望在Raspberry Pi路由器上執行的操作選擇一個。 如果在家,最好選擇第一個,您可以在其中阻止某些事情,例如特定的IP地址。 在工作中,與另一人一起工作,在這裡您可以禁止一切,但不允許的一切。

進,出和前進

這是一個更簡單的程序,其中一個人可以在三個方向上創建多個規則。 這三個方向是:

  • 輸入:進入防火牆的網絡數據包
  • 產量:從防火牆發出的數據包
  • 向前:通過防火牆的數據包

使用託管的Web服務器時,可以阻止輸入中的所有內容,但HTTPS和HTTP除外。 但是,在輸出中,服務器在Internet上執行的操作並不重要。 在這裡,我們將使用轉發規則,因為Raspberry Pi防火牆上沒有太多內容。 因此,沒有必要對其進行保護。

Raspberry Pi防火牆 組態

喜歡的用戶可以將防火牆添加到其路由器以過濾流量。 如果在家工作,那不是很重要。 但是,對於公共區域或公司,這是強制性的。

iptables的

對於Raspbian,存在各種防火牆軟件包,例如UFW或IPTables。 OpenWRT也在那裡,它是用於創建防火牆的Raspberry Pi發行版。 IPTables已安裝在Raspberry Pi上。

檢查當前配置

在添加規則之前,最好檢查一下當前配置。 為此,請將命令用作“sudo iptables – L。” GitHub腳本將基本規則添加到“轉發”部分,以啟用轉發。 可以使用此命令來檢查您最近添加的規則是否與您的首選項相對應。

插入轉發規則

每個網絡都是不同的,因此,每個Raspberry Pi Firewall規則表也是不同的。 這是在環境中添加特定規則的完整語法。

  • 重置IPTables配置

為此,添加 sudo iptables – F。 順序很重要,路由器可以接受所有內容。 因此,我們無法阻止特定的連接。

  • 添加DROP規則

使用該命令 iptables –前移– p tcp – dport 80 – j DROP。 該命令說明:

(-A)添加新規則

(前鋒)用於前面的部分

(-p tcp)使用tcp協議

(-dport 80)以使用HTTP端口

(下降)刪除所有內容,這是一個超時連接。

現在,檢查連接是否正常。 為此,請與WiFi路由器建立連接。 要刪除規則,用戶需要使用IPTables -F。 或使用類似的命令-D代替-A。

iptables -D FORWARD -p tcp –dport 80 -j DROP

此命令允許用戶刪除特定的規則,因此不能刪除所有規則(如-F那樣)。

iptables命令語法

為了創建Raspberry Pi防火牆規則,可以使用類似的命令模板。 要執行此操作,請按照以下模板操作:

iptables-<操作> <方向> -p <協議> – -dport <端口> -j <操作>

操作:

  • -F:刪除並刷新所有不需要參數的規則
  • -A:添加,附加新規則
  • -D:刪除,刪除當前規則

方向:

轉發,輸出或輸入

協議:

主要是udp或tcp

港口:

您要建立規則的端口數。

行動:

選擇進行符合條件的流量。 ACCEPT允許以白名單模式進行訪問。 REJECT拒絕訪問並告知發送者不允許的內容。 但是,DROP拒絕訪問,不告訴發送者。

切換到白名單

處於嚴格環境中的用戶,然後轉到白名單模式。 為了執行此操作,它們必須產生一行端口。 生成腳本的最簡單方法是一次運行所有命令。 為此,您可以在Raspberry Pi上下載DNS轉發器。 接下來,使用同樣的方法來回答DNS請求。

  • 下載綁定(DNS服務器軟件包)

sudo apt安裝bind9
  • 備份配置

sudo mv /etc/bind/named.conf.options/etc/bind/named.conf.options

現在,將行粘貼為:

ACL“本地網絡” {127.0.0.1/32; 192.168.42.0/24;};
選項{目錄“ / var / cache / bind”; 貨運代理{208.67.222.222;};
allow-query {localnetwork;};
dnssec –自動驗證;
auth-nxdomain否;
在v6上收聽{any;};
};

這是典型的配置。 可以使用OpenDNS將在Raspberry Pi上收到的DNS查詢發送給它。

  • 保存並退出 (CTRL + O,CTRL + X)
  • 重新啟動綁定 通過以下sudo服務bind9重新啟動
  • 編輯DNS服務器 存在於DHCP中,sudo nano / etc / udhcpd.conf
  • 改變線,選擇DNS 208.67.222.222.208.67.220.220
  • 重新啟動DHCP服務器 通過sudo服務udhcp重新啟動

現在,重新連接設備,看看一切是否正常。

生成Raspberry Pi防火牆腳本

  • 製作具有nano的文件

納米/ usr / local / bin / firewall.sh
  • 將行粘貼為:
#/ bin / sh的
#清除所有規則
iptables -F
#白名單模式
iptables -P輸入接受
iptables -P轉發掉
iptables -P OUTPUT ACCEPT
#允許所有人PING
iptables -A前進-p icmp -j接受
#允許WiFi客戶端使用HTTP / HTTPS
iptables -A轉發-p tcp –dport 80 -j接受
iptables -A轉發-p tcp –dport 443 -j接受
#允許POP / IMAP / SMTP用於WiFi客戶端
iptables -A轉發-p tcp –dport 25 -j接受
iptables -A轉發-p tcp –dport 110 -j接受
iptables -A轉發-p tcp –dport 993 -j接受
#允許WiFi客戶端PING
iptables -A前進-p icmp -j接受
用戶可以根據自己的喜好對此命令進行修改。 現在,您可以通過“須藤chmod + x firewall.sh”,現在,通過“須藤/usr/local/bin/firewall.sh。” 如果不正確,可以重新啟動Raspberry Pi防火牆以恢復所有訪問。

進行持久配置

該腳本使用命令“文件/etc/iptables.ipv4.nat”以保存配置。 如果運行正常,則將當前配置保存為:

sudo iptables –保存> /etc/iptables/ipv4.nat

這樣,這將上傳文件並直接應用更改。

網絡監控

如果Raspberry Pi防火牆運行良好,則可以添加一些軟件包以改進Raspbian功能。 要添加Web界面,您可以監視網絡上發生的情況。 為此,您可以使用Webmin,這是一個Web界面。 下載最新版本並路由設置。 現在,設置密碼並選擇是否要使用SSL。

網站和代理過濾器

在這裡,我們將安裝Squid作為代理,並安裝SquidGuard作為Raspberry Pi防火牆的過濾器。 要安裝Squid,請按照“sudo apt安裝魷魚”,然後使用“備份文件cd / etc / squid sudo mv squid.conf squid.conf.old”。 現在,切換到用戶並使用“sudo的蘇

貓squid.conf.old | egrep -v -e'^ [[:: Blank:]] *#| ^“。

您必須在開頭添加以下行:

ACL LocalNet src 192.168.42.0/24
http訪問允許LocalNet

現在,重新啟動Squid以使用“sudo systemct1重新啟動魷魚

在配置了Squid之後,有兩種選擇,首先是通過配置Web瀏覽器將Raspberry Pi防火牆用作HTTP代理。 另一種是將所有HTTP通信自動重定向到Squid。

安裝SquidGuard

現在,該通過“sudo apt安裝squidguard。” 按類別下載網站列表並提取存檔文件。 提取時,用戶可以在屏幕上查看黑名單類別。 選擇一個並將其用於SquidGuard的配置。 將文件移至該文件夾並存檔SquidGuard配置。 接下來,構建配置文件並粘貼以下行:

dbhome / var / lib / squidguard / db logdir / var / log / squidguard dest
暴力{
域列表黑名單/暴力/域
網址清單黑名單/暴力/網址
記錄暴力訪問
}
ac1 {
默認
{
通過!暴力
重定向http://localhost/block.html
}
}
如果需要,進行更改,然後保存並離開(CTRL + O,CTRL + X)。 現在,創建數據庫並按照以下說明重新啟動Squid以應用更改sudo服務烏賊重啟。” 現在,嘗試從域列表中訪問URL,並檢查SquidGuard是否阻止了您。

因此,這就是如何創建 Raspberry Pi防火牆。 現在,您具有在Raspberry Pi上使用代理構建防火牆路由器的完整知識。

標籤
返回頂部按鈕
關閉
關閉