Hvordan sette opp UFW-brannmur på Ubuntu og Debian
En korrekt fungerende brannmur er den mest avgjørende delen av den komplette Linux-systemsikkerheten. Som standard leveres Debian- og Ubuntu-distribusjon med et brannmurkonfigurasjonsverktøy kalt UFW (Ukomplisert brannmur), er et mest populært og brukervennlig kommandolinjeverktøy for konfigurering og administrere en brannmur på Ubuntu- og Debian-distribusjoner.
I denne artikkelen vil vi forklare hvordan du installerer og konfigurerer en UFW-brannmur på Ubuntu- og Debian-distribusjoner.
Forutsetninger
Før du begynner med denne artikkelen, sørg for at du har logget på Ubuntu- eller Debian-serveren med sudo-bruker eller med root-kontoen. Hvis du ikke har en sudo-bruker, kan du opprette en ved å bruke følgende instruksjoner som root-bruker.
adduser username
usermod -aG sudo username
su - username
sudo whoami
Installer UFW-brannmur på Ubuntu og Debian
UFW (Ukomplisert brannmur) bør installeres som standard i Ubuntu og Debian, hvis ikke, installer den ved å bruke APT-pakkebehandlingen ved å bruke følgende kommando.
sudo apt install ufw
Sjekk UFW-brannmuren
Når installasjonen er fullført kan du sjekke statusen til UFW ved å skrive.
sudo ufw status verbose
Ved første installasjon er UFW-brannmuren deaktivert som standard, utdataene vil være lik nedenfor.
Status: inactive
Aktiver UFW-brannmur
Du kan aktivere eller aktivere UFW-brannmur ved å bruke følgende kommando, som skal laste brannmuren og aktivere den ved oppstart.
sudo ufw enable
For å deaktivere UFW-brannmur, bruk følgende kommando, som laster ut brannmuren og deaktiverer den fra å starte ved oppstart.
sudo ufw disable
UFW-standardpolicyer
Som standard nekter UFW-brannmuren alle innkommende tilkoblinger og tillater bare alle utgående tilkoblinger til serveren. Dette betyr at ingen kan få tilgang til serveren din, med mindre du spesifikt åpner porten, mens alle kjørende tjenester eller applikasjoner på serveren din kan få tilgang til det eksterne nettverket.
Standard UFW-brannmurpolitikk er plassert i /etc/default/ufw
-filen og kan endres ved hjelp av følgende kommando.
sudo ufw default deny incoming
sudo ufw default allow outgoing
UFW-applikasjonsprofiler
Når du installerer en programvarepakke med APT-pakkebehandling, vil den inkludere en applikasjonsprofil i katalogen /etc/ufw/applications.d
som definerer tjenesten og inneholder UFW-innstillinger.
Du kan liste opp alle tilgjengelige applikasjonsprofiler på serveren din ved å bruke følgende kommando.
sudo ufw app list
Avhengig av programvarepakkeinstallasjoner på systemet ditt vil utdataene se ut som følgende:
Available applications:
APACHE
APACHE Full
APACHE SECURE
CUPS
OpenSSH
Postfix
Postfix SMTPS
Postfix Submission
Hvis du ønsker å få mer informasjon om en bestemt profil og definerte regler, kan du bruke følgende kommando.
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
Aktiver IPv6 med UFW
Hvis serveren din er konfigurert med IPv6, sørg for at UFW er konfigurert med IPv6 og IPv4-støtte. For å bekrefte det, åpne UFW-konfigurasjonsfilen ved å bruke din favorittredigerer.
sudo vi /etc/default/ufw
Sørg deretter for at “IPV6” er satt til "yes"
i konfigurasjonsfilen som vist.
IPV6=yes
Lagre og avslutt. Start deretter brannmuren på nytt med følgende kommandoer:
sudo ufw disable
sudo ufw enable
Tillat SSH-tilkoblinger på UFW
Hvis du har aktivert UFW-brannmur nå, vil den blokkere alle innkommende tilkoblinger, og hvis du er koblet til serveren din over SSH fra en ekstern plassering, vil du ikke lenger kunne koble den til igjen.
La oss aktivere SSH-tilkoblinger til serveren vår for å stoppe det fra å skje ved å bruke følgende kommando:
sudo ufw allow ssh
Hvis du bruker tilpasset SSH-port (for eksempel port 2222), må du åpne den porten på UFW-brannmuren ved å bruke følgende kommando.
sudo ufw allow 2222/tcp
For å blokkere alle SSH-tilkoblinger, skriv inn følgende kommando.
sudo ufw deny ssh/tcp
sudo ufw deny 2222/tcp [If using custom SSH port]
Aktiver spesifikke porter på UFW
Du kan også åpne en spesifikk port i brannmuren for å tillate tilkoblinger via den til en bestemt tjeneste. For eksempel, hvis du vil sette opp en nettserver som lytter på port 80 (HTTP) og 443 (HTTPS >) som standard.
Nedenfor er noen få eksempler på hvordan du tillater innkommende tilkoblinger til Apache-tjenester.
Åpne Port 80 HTTP på UFW
sudo ufw allow http [By service name]
sudo ufw allow 80/tcp [By port number]
sudo ufw allow 'Apache' [By application profile]
Åpne Port 443 HTTPS på UFW
sudo ufw allow https
sudo ufw allow 443/tcp
sudo ufw allow 'Apache Secure'
Tillat portområder på UFW
Forutsatt at du har noen applikasjoner du vil kjøre på en rekke porter (5000-5003), kan du legge til alle disse portene ved å bruke følgende kommandoer.
sudo ufw allow 5000:5003/tcp
sudo ufw allow 5000:5003/udp
Tillat spesifikke IP-adresser
Hvis du vil tillate tilkoblinger på alle porter fra spesifikk IP-adresse 192.168.56.1, må du spesifisere fra før IP-adressen.
sudo ufw allow from 192.168.56.1
Tillat spesifikke IP-adresser på spesifikk port
For å tillate tilkobling på en bestemt port (for eksempel port 22) fra hjemmemaskinen din med IP-adressen 192.168.56.1, må du legge til en hvilken som helst port< og portnummeret etter IP-adressen som vist.
sudo ufw allow from 192.168.56.1 to any port 22
Tillat nettverksundernett til spesifikk port
For å tillate tilkoblinger for bestemte IP-adresser fra 192.168.1.1 til 192.168.1.254 til port 22 (SSH) , kjør følgende kommando.
sudo ufw allow from 192.168.1.0/24 to any port 22
Tillat spesifikt nettverksgrensesnitt
For å tillate tilkoblinger til spesifikt nettverksgrensesnitt eth2 for en bestemt port 22 (SSH), kjør følgende kommando.
sudo ufw allow in on eth2 to any port 22
Nekt tilkoblinger på UFW
Som standard er alle innkommende tilkoblinger blokkert, med mindre du spesifikt har åpnet tilkoblingen på UFW. Du har for eksempel åpnet portene 80 og 443 og nettserveren er under angrep fra det ukjente nettverket 11.12.13.0/24.
For å blokkere alle tilkoblinger fra dette bestemte 11.12.13.0/24 nettverksområdet, kan du bruke følgende kommando.
sudo ufw deny from 11.12.13.0/24
Hvis du bare vil blokkere tilkoblinger på portene 80 og 443, kan du bruke følgende kommandoer.
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
Slett UFW-regler
Det er 2 måter å slette UFW-regler på, etter regelnummer og etter faktisk regel.
For å slette en UFW-regler ved å bruke regelnummer, må du først liste regler etter tall ved å bruke følgende kommando.
sudo ufw status numbered
Eksempelutgang
Status: active
To Action From
-- ------ ----
[ 1] 22/tcp ALLOW IN Anywhere
[ 2] 80/tcp ALLOW IN Anywhere
For å slette regelnummer 1, bruk følgende kommando.
sudo ufw delete 1
Den andre metoden er å slette en regel ved å bruke den faktiske regelen, for eksempel for å slette en regel, spesifiser portnummeret med protokollen som vist.
sudo ufw delete allow 22/tcp
UFW-regler for tørrkjøring
Du kan kjøre alle ufw-kommandoer uten å gjøre noen endringer i systemets brannmur ved å bruke --dry-run
-flagget, dette viser ganske enkelt endringene som skal skje.
sudo ufw --dry-run enable
Tilbakestill UFW-brannmur
Av en eller annen grunn, hvis du ønsker å slette/tilbakestille alle brannmurregler, skriv inn følgende kommandoer, det vil tilbakestille alle endringene og starte på nytt.
sudo ufw reset
sudo ufw status
UFW avansert funksjonalitet
UFW-brannmuren kan klare å gjøre alt som iptables gjør. Dette kan gjøres med forskjellige sett med regelfiler, som ikke er noe, men enkle iptables-restore tekstfiler.
Tuning av UFW-brannmur eller legge til flere iptables-kommandoer er ikke tillatt via ufw-kommando, er bare et spørsmål om å endre følgende tekstfiler
- /etc/default/ufw: Hovedkonfigurasjonsfilen med forhåndsdefinerte regler.
- /etc/ufw/before[6].rules: I denne filen beregnes reglene før de legges til via ufw-kommandoen.
- /etc/ufw/after[6].rules: I denne filen beregnes regler etter å ha lagt til via ufw-kommandoen.
- /etc/ufw/sysctl.conf: Denne filen brukes til å justere kjernenettverket.
- /etc/ufw/ufw.conf: Denne filen aktiverer ufw ved oppstart.
Det er det! UFW er et utmerket grensesnitt for iptables med et brukervennlig grensesnitt for å definere komplekse regler med en enkelt ufw-kommando.
Hvis du har spørsmål eller tanker å dele om denne ufw-artikkelen, bruk kommentarskjemaet nedenfor for å nå oss.