Wéi Setup UFW Firewall op Ubuntu an Debian


Eng korrekt funktionéierend Firewall ass de wichtegsten Deel vun der kompletter Linux System Sécherheet. Par défaut kënnt Debian an Ubuntu Verdeelung mat engem Firewall Konfiguratiounsinstrument genannt UFW (Uncomplicated Firewall), ass e populärsten an einfach ze benotzen Kommandozeilinstrument fir d'Konfiguratioun an d'Gestioun vun enger Firewall op Ubuntu an Debian Verdeelungen.

An dësem Artikel wäerte mir erkläre wéi Dir eng UFW Firewall op Ubuntu an Debian Distributiounen installéiere wëllt.

Ier Dir mat dësem Artikel ufänkt, gitt sécher datt Dir op Ärem Ubuntu oder Debian Server mat sudo Benotzer oder mam Root Account ageloggt sidd. Wann Dir kee Sudo Benotzer hutt, kënnt Dir een erstellen andeems Dir déi folgend Instruktiounen als Root Benotzer benotzt.

# adduser username
# usermod -aG sudo username 
# su - username
$ sudo whoami

Installéiert UFW Firewall op Ubuntu an Debian

D'UFW (Uncomplicated Firewall) soll als Standard an Ubuntu an Debian installéiert ginn, wann net, installéiere se mat dem APT Package Manager mat dem folgenden Kommando.

$ sudo apt install ufw

Wann d'Installatioun fäerdeg ass, kënnt Dir de Status vum UFW iwwerpréiwen andeems Dir tippt.

$ sudo ufw status verbose

Bei der éischter Installatioun ass d'UFW Firewall par défaut deaktivéiert, d'Ausgab ass ähnlech wéi hei drënner.

Status: inactive

Dir kënnt d'UFW Firewall aktivéieren oder aktivéieren andeems Dir de folgende Kommando benotzt, wat d'Firewall soll lueden an et erméiglecht et beim Boot ze starten.

$ sudo ufw enable

Fir d'UFW Firewall auszeschalten, benotzt de folgende Kommando, deen d'Firewall entluet an deaktivéiert se vum Start beim Start.

$ sudo ufw disable 

Par défaut refuséiert d'UFW Firewall all erakommen Verbindungen an erlaabt nëmmen all outbound Verbindungen op de Server. Dat heescht, keen kann op Äre Server zougräifen, ausser Dir speziell den Hafen opmaacht, während all déi lafend Servicer oder Uwendungen op Ärem Server fäeg sinn op de baussenzege Netz ze kommen.

D'Standard UFW Firewall Policen ginn an der /etc/default/ufw Datei plazéiert a kënne mat dem folgenden Kommando geännert ginn.

$ sudo ufw default deny incoming
$ sudo ufw default allow outgoing

Wann Dir e Software Package mat APT Package Manager installéiert, wäert et en Applikatiounsprofil am /etc/ufw/applications.d Verzeechnes enthalen, deen de Service definéiert an UFW Astellungen hält.

Dir kënnt all verfügbare Applikatiounsprofile op Ärem Server oplëschten andeems Dir de folgende Kommando benotzt.

$ sudo ufw app list

Ofhängeg vun Software Package Installatiounen op Ärem System wäert d'Ausgab ähnlech wéi déi folgend ausgesinn:

Available applications:
  APACHE
  APACHE Full
  APACHE SECURE
  CUPS
  OpenSSH
  Postfix
  Postfix SMTPS
  Postfix Submission

Wann Dir méi Informatiounen iwwer e bestëmmte Profil an definéierte Regele wëllt kréien, kënnt Dir de folgende Kommando benotzen.

$ sudo ufw app info 'Apache'
Profile: Apache
Title: Web Server 
Description: Apache V2 is the next generation f the omnipresent Apache web server.

Ports:
  80/tcp

Wann Äre Server mat IPv6 konfiguréiert ass, gitt sécher datt Ären UFW mat IPv6 an IPv4 Support konfiguréiert ass. Fir et z'iwwerpréiwen, öffnen d'UFW Konfiguratiounsdatei mat Ärem Liiblingseditor.

$ sudo vi /etc/default/ufw

Da gitt sécher datt IPV6 op \jo\ an der Konfiguratiounsdatei gesat ass wéi gewisen.

IPV6=yes

Spuert a gitt op. Da starten Är Firewall mat de folgende Kommandoen:

$ sudo ufw disable
$ sudo ufw enable

Wann Dir d'UFW Firewall elo aktivéiert hutt, blockéiert se all erakommen Verbindungen a wann Dir mat Ärem Server iwwer SSH vun enger Remote Location verbonne sidd, kënnt Dir et net méi erëm verbannen.

Loosst eis SSH Verbindungen op eise Server aktivéieren fir dat ze stoppen mat dem folgenden Kommando:

$ sudo ufw allow ssh

Wann Dir Benotzerdefinéiert SSH Hafen benotzt (zum Beispill Port 2222), da musst Dir dee Port op UFW Firewall opmaachen mat dem folgenden Kommando.

$ sudo ufw allow 2222/tcp

Fir all SSH Verbindungen ze blockéieren, gitt de folgende Kommando.

$ sudo ufw deny ssh/tcp
$ sudo ufw deny 2222/tcp  [If using custom SSH port]

Dir kënnt och e spezifeschen Hafen an der Firewall opmaachen fir Verbindungen iwwer et zu engem bestëmmte Service z'erméiglechen. Zum Beispill, wann Dir e Webserver opriichte wëllt, deen um Port 80 (HTTP) an 443 (HTTPS) als Standard lauschtert.

Drënner sinn e puer Beispiller wéi een erakommen Verbindunge mat Apache Servicer erlaabt.

$ sudo ufw allow http     [By service name]
$ sudo ufw allow 80/tcp   [By port number]
$ sudo ufw allow 'Apache' [By application profile]
$ sudo ufw allow https
$ sudo ufw allow 443/tcp
$ sudo ufw allow 'Apache Secure'

Unzehuelen datt Dir e puer Applikatiounen hutt, déi Dir op enger Rei vu Ports (5000-5003) wëllt lafen, kënnt Dir all dës Ports mat de folgende Kommandoen addéieren.

sudo ufw allow 5000:5003/tcp
sudo ufw allow 5000:5003/udp

Wann Dir Verbindungen op all Häfen aus spezifesch IP Adress 192.168.56.1 erlaben wëllt, da musst Dir virun der IP Adress uginn.

$ sudo ufw allow from 192.168.56.1

Fir d'Verbindung op engem spezifeschen Hafen (zum Beispill Hafen 22) vun Ärem Heemmaschinn mat der IP Adress vum 192.168.56.1 z'erméiglechen, da musst Dir all Port an d'Portnummer no der IP Adress addéieren, wéi se gewisen.

$ sudo ufw allow from 192.168.56.1 to any port 22

Fir Verbindunge fir speziell IP Adressen z'erméiglechen, rangéiert vun 192.168.1.1 bis 192.168.1.254 bis Port 22 (SSH), fuert de folgende Kommando.

$ sudo ufw allow from 192.168.1.0/24 to any port 22

Fir Verbindungen ze spezifesch Reseau Interface eth2 fir eng bestëmmte port erlaben 22 (SSH), fueren folgend Kommando.

$ sudo ufw allow in on eth2 to any port 22

Par défaut sinn all erakommen Verbindunge blockéiert, ausser Dir hutt d'Verbindung speziell op UFW opgemaach. Zum Beispill, Dir hutt d'Ports 80 an 443 opgemaach an Äre Webserver ass ënner Attack vum onbekannte Netzwierk 11.12.13.0/24.

Fir all Verbindungen aus dësem speziellen 11.12.13.0/24 Netzbereich ze blockéieren, kënnt Dir de folgende Kommando benotzen.

$ sudo ufw deny from 11.12.13.0/24

Wann Dir nëmmen Verbindungen op Häfen 80 an 443 blockéiere wëllt, kënnt Dir déi folgend Kommandoen benotzen.

$ sudo ufw deny from 11.12.13.0/24 to any port 80
$ sudo ufw deny from 11.12.13.0/24 to any port 443

Et ginn 2 Weeër fir UFW Regelen ze läschen, no Regelnummer an duerch tatsächlech Regel.

Fir eng UFW Regelen ze läschen andeems Dir Regelnummer benotzt, musst Dir als éischt Regelen no Zuelen oplëschten andeems Dir de folgende Kommando benotzt.

$ sudo ufw status numbered
Status: active

     To                         Action      From
     --                         ------      ----
[ 1] 22/tcp                     ALLOW IN    Anywhere
[ 2] 80/tcp                     ALLOW IN    Anywhere

Fir d'Regel Nummer 1 ze läschen, benotzt de folgende Kommando.

$ sudo ufw delete 1

Déi zweet Method ass eng Regel ze läschen andeems Dir déi aktuell Regel benotzt, zum Beispill fir eng Regel ze läschen, spezifizéiert d'Portnummer mam Protokoll wéi gewisen.

$ sudo ufw delete allow 22/tcp

Dir kënnt all ufw Kommandoen ausféieren ouni tatsächlech Ännerungen an der System Firewall mat der --dry-run Fändel ze maachen, dëst weist einfach d'Ännerungen, déi ugeholl ginn.

$ sudo ufw --dry-run enable

Aus engem oder anere Grond, wann Dir all Firewall-Regelen läschen/zrécksetzen wëllt, gitt déi folgend Kommandoen, et wäert all Är Ännerungen zréckginn a frësch ufänken.

$ sudo ufw reset
$ sudo ufw status

D'UFW Firewall kann alles maachen wat iptables mécht. Dëst kann mat verschiddene Sets vu Regelendateien gemaach ginn, déi näischt sinn, awer einfach iptables-Restauratioun Textdateien.

Tuning vun der UFW Firewall oder zousätzlech iptables Kommandoen bäizefügen sinn net erlaabt iwwer ufw Kommando, ass eng just Saach fir folgend Textdateien z'änneren

  • /etc/default/ufw: D'Haaptkonfiguratiounsdatei mat virdefinéierte Regelen.
  • /etc/ufw/before[6].rules: An dësem Fichier ginn d'Regele berechent ier se iwwer ufw Kommando bäigefüügt ginn.
  • /etc/ufw/after[6].rules: An dësem Fichier ginn d'Regele berechent nodeems se via ufw Kommando bäigefüügt ginn.
  • /etc/ufw/sysctl.conf: Dëse Fichier gëtt benotzt fir de Kernelnetz unzepassen.
  • /etc/ufw/ufw.conf: Dëse Fichier aktivéiert den ufw beim Boot.

Dat ass et! UFW ass en exzellente Front-End fir iptables mat engem userfrëndlechen Interface fir komplex Reegele mat engem eenzegen ufw Kommando ze definéieren.

Wann Dir Froen oder Gedanken hutt iwwer dësen ufw Artikel ze deelen, benotzt de Kommentarformular hei ënnen fir eis z'erreechen.