Android

Hur man installerar en brandvägg med ufw på debian 9

Как установить и настроить межсетевой экран (брандмауэр / фаервол) UFW в Debian / Ubuntu Linux

Как установить и настроить межсетевой экран (брандмауэр / фаервол) UFW в Debian / Ubuntu Linux

Innehållsförteckning:

Anonim

Debian innehåller flera paket som tillhandahåller verktyg för att hantera en brandvägg med iptables installerade som en del av bassystemet. Det kan vara komplicerat för nybörjare att lära sig att använda iptables-verktyget för att korrekt konfigurera och hantera en brandvägg, men UFW förenklar det.

UFW (Uncomplicated Firewall) är en användarvänlig front-end för att hantera iptables-brandväggsregler och dess huvudmål är att underlätta hantering av iptables eller som namnet säger okomplicerat.

I den här tutorialen visar vi dig hur du installerar en brandvägg med UFW på Debian 9.

förutsättningar

Innan du fortsätter med den här självstudien, se till att användaren du är inloggad som har sudo-behörigheter.

Installera UFW

UFW är inte installerat som standard i Debian 9. Du kan installera ufw paketet genom att skriva:

sudo apt install ufw

Kontrollera UFW-status

När installationen är klar kan du kontrollera UFW: s status med följande kommando:

sudo ufw status verbose

Utgången ser ut så här:

Status: inactive

UFW är som standard inaktiverat. Installationen aktiverar inte brandväggen automatiskt för att undvika ett lockout från servern.

Om UFW är aktiverat ser utdata ut på följande sätt:

UFW-standardpolicyer

Som standard kommer UFW att blockera alla inkommande anslutningar och tillåta alla utgående anslutningar. Detta innebär att alla som försöker få åtkomst till din server inte kommer att kunna ansluta om du inte öppnar porten specifikt, medan alla applikationer och tjänster som körs på din server kan komma åt omvärlden.

Standardpolicyerna definieras i /etc/default/ufw och kan ändras med sudo ufw default kommando.

Brandväggspolicys är grunden för att bygga mer detaljerade och användardefinierade regler. I de flesta fall är de ursprungliga UFW-standardpolicyn en bra utgångspunkt.

Applikationsprofiler

När du installerar ett paket med apt lägger det till en applikationsprofil i /etc/ufw/applications.d som beskriver tjänsten och innehåller UFW-inställningar.

Så här listar du alla tillgängliga applikationsprofiler på din systemtyp:

sudo ufw app list

Beroende på paketen som är installerade på ditt system ser utdata ut på följande sätt:

Available applications: DNS IMAP IMAPS OpenSSH POP3 POP3S Postfix Postfix SMTPS Postfix Submission…

För att hitta mer information om en specifik profil och medföljande regler använder du följande kommando:

sudo ufw app info OpenSSH

Profile: OpenSSH Title: Secure shell server, an rshd replacement Description: OpenSSH is a free implementation of the Secure Shell protocol. Port: 22/tcp

ATut utgången ovan berättar att OpenSSH-profilen öppnar port 22 .

Tillåt SSH-anslutningar

Innan du aktiverar UFW-brandväggen först måste vi tillåta inkommande SSH-anslutningar.

Om du ansluter till din server från en fjärrplats, vilket nästan alltid är fallet och du aktiverar UFW-brandväggen innan du uttryckligen tillåter inkommande SSH-anslutningar kommer du inte längre att kunna ansluta till din Debian-server.

Kör följande kommando för att konfigurera din UFW-brandvägg så att den tillåter inkommande SSH-anslutningar:

sudo ufw allow OpenSSH

Rules updated Rules updated (v6)

Om SSH-servern lyssnar på en annan port än standardporten 22, måste du öppna den porten.

Till exempel lyssnar din ssh-server på port 8822 , då kan du använda följande kommando för att tillåta anslutningar på den porten:

sudo ufw allow 8822/tcp

Aktivera UFW

Nu när din UFW-brandvägg är konfigurerad för att tillåta inkommande SSH-anslutningar kan du aktivera den genom att köra:

sudo ufw enable

Command may disrupt existing ssh connections. Proceed with operation (y|n)? y Firewall is active and enabled on system startup

Du blir varnad om att aktivera brandväggen kan störa befintliga ssh-anslutningar, skriv bara y och tryck på Enter .

Tillåt anslutningar på andra portar

Beroende på applikationer som körs på din server och dina specifika behov måste du också tillåta inkommande åtkomst till vissa andra portar.

Nedan följer flera exempel på hur du tillåter inkommande anslutningar till några av de vanligaste tjänsterna:

Öppna port 80 - HTTP

HTTP-anslutningar kan tillåtas med följande kommando:

sudo ufw allow

I stället för http profilen kan du använda portnumret, 80 :

sudo ufw allow 80/tcp

Öppen port 443 - HTTPS

HTTP-anslutningar kan tillåtas med följande kommando:

sudo ufw allow

För att uppnå samma i stället för https du använda portnumret, 443 :

sudo ufw allow 443/tcp

Öppen port 8080

sudo ufw allow 8080/tcp

Tillåt hamnområdet

Med UFW kan du också tillåta åtkomst till portintervall. När du tillåter portintervall med UFW måste du ange protokollet, antingen tcp eller udp .

För att tillåta portar från 7100 till 7200 på både tcp och udp , kör följande kommando:

sudo ufw allow 7100:7200/tcp sudo ufw allow 7100:7200/udp

Tillåt specifika IP-adresser

sudo ufw allow from 64.63.62.61

Tillåt specifika IP-adresser på specifik port

För att tillåta åtkomst på en specifik port, låt oss säga port 22 från din arbetsmaskin med IP-adressen 64.63.62.61 använd följande kommando:

sudo ufw allow from 64.63.62.61 to any port 22

Tillåt subnät

Kommandot för att tillåta anslutning till ett subnät med IP-adresser är detsamma som när du använder en enda IP-adress, den enda skillnaden är att du behöver ange nätmask. Om du till exempel vill tillåta åtkomst för IP-adresser som sträcker sig från 192.168.1.1 till 192.168.1.254 till port 3360 (MySQL) kan du använda det här kommandot:

sudo ufw allow from 192.168.1.0/24 to any port 3306

Tillåt anslutningar till ett specifikt nätverksgränssnitt

För att tillåta åtkomst på en specifik port, låt oss säga port 3360 endast till specifikt nätverksgränssnitt eth2 , använd eth2 allow in on och namnet på nätverksgränssnittet:

sudo ufw allow in on eth2 to any port 3306

Neka anslutningar

Standardpolicyn för alla inkommande anslutningar är inställd på att deny vilket innebär att UFW kommer att blockera alla inkommande anslutningar om du inte öppnar anslutningen specifikt.

Låt oss säga att du öppnade portarna 80 och 443 och din server attackeras från nätverket 23.24.25.0/24 . För att neka alla anslutningar från 23.24.25.0/24 , använd följande kommando:

sudo ufw deny from 23.24.25.0/24

sudo ufw deny from 23.24.25.0/24 to any port 80 sudo ufw deny from 23.24.25.0/24 to any port 443

Att skriva förnekningsregler är detsamma som att skriva tillåtna regler, du behöver bara byta ut allow med deny .

Radera UFW-regler

Det finns två olika sätt att radera UFW-regler, efter regelnummer och genom att ange den faktiska regeln.

Att ta bort UFW-regler efter regelnummer är lättare, särskilt om du är ny med UFW.

För att radera en regel med ett regelnummer först måste du hitta numret på den regel du vill ta bort. För att göra det kör följande kommando:

sudo ufw status numbered

Status: active To Action From -- ------ ---- 22/tcp ALLOW IN Anywhere 80/tcp ALLOW IN Anywhere 8080/tcp ALLOW IN Anywhere

För att radera regelnummer 3, regeln som tillåter anslutningar till port 8080, kan du använda följande kommando:

sudo ufw delete 2

Den andra metoden är att radera en regel genom att ange den faktiska regeln. Om du till exempel lägger till en regel för att öppna port 8069 du ta bort den med:

sudo ufw delete allow 8069

Inaktivera UFW

Om du av någon anledning vill stoppa UFW och inaktivera alla regler körs:

sudo ufw disable

Senare om du vill aktivera UTF och aktivera alla regler skriver du bara:

sudo ufw enable

Återställ UFW

Om du återställer UFW avaktiveras UFW och raderar alla aktiva regler. Detta är användbart om du vill återställa alla dina ändringar och börja ny.

För att återställa UFW skriver du bara följande kommando:

sudo ufw reset

Slutsats

Du har lärt dig hur du installerar och konfigurerar UFW-brandvägg på din Debian 9-maskin. Var noga med att tillåta alla inkommande anslutningar som är nödvändiga för att ditt system ska fungera korrekt, samtidigt som du begränsar alla onödiga anslutningar.

ufw brandvägg iptables debian säkerhet