Säkerhet

Enkel brandväggshantering med UFW på Linux-servrar

  • 14 min läsning
  • Hostragons-teamet
Enkel brandväggshantering med UFW på Linux-servrar

UFW på Linux-servrar är ett brandväggsverktyg som förenklar komplexa iptables-regler och gör hanteringen av brandväggar för SSH, HTTP, HTTPS och specifika portar snabb och säker. Särskilt på Ubuntu- och Debian-baserade servrar kan du med UFW stänga av standardtrafik, öppna nödvändiga tjänster, ge tillgång till specifika IP-adresser och begränsa felaktiga försök. Den rekommenderade metoden för en säker start är som följer: Säkerställ SSH-åtkomst, avvisa standardtrafik, tillåt utgående trafik, öppna endast de portar som används och kontrollera UFW:s status regelbundet.

En webbserver möter genast bot-skanningar, lösenordsförsök, sårbarhetsskanningar och onödiga portförfrågningar när den kopplas till internet. Därför är brandväggen en av de första lagren i Linux-serverns säkerhet. UFW är ett praktiskt verktyg som tekniska team föredrar i sina dagliga operationer eftersom det har läsbara kommandon, snabba regler för att lägga till och ta bort, loggning och minskar risken för felaktig konfiguration jämfört med iptables-kommandon. Denna guide kommer steg för steg att ta upp installation av UFW, grundläggande kommandon, förhindra SSH-låsning, webbserverportar, IP-baserade tillstånd, loggkontroll, IPv6, specialfall som Docker och säkerhetspraxis som är i linje med 2026-standarderna.

Vad är UFW och vad används det för?

UFW står för Uncomplicated Firewall, vilket kan översättas till "Enkel brandvägg". Den använder Linux-kernels paketfilterinfrastruktur i bakgrunden men erbjuder mer förståeliga kommandon för systemadministratören. Till exempel kan du tillåta HTTPS-trafik med kommandot sudo ufw allow 443/tcp istället för att skriva direkt iptables eller nftables-regler.

UFW är särskilt användbart i följande scenarier:

  • Att snabbt etablera grundläggande nätverkssäkerhet på en ny VPS eller dedikerad server.
  • Att endast hålla portarna 80 och 443 öppna på webbservern.
  • Att begränsa SSH-åtkomst till endast specifika IP-adresser.
  • Att hantera SSH-anslutningar med begränsningar för att minska brute force-försök.
  • Att inte helt öppna test-, staging- och administrationspaneler för internet.
  • Att följa upp misstänkt trafik via loggar.

UFW löser inte alla säkerhetsproblem på egen hand, men det minskar angreppsytan. När det används tillsammans med starka lösenord, SSH-nyckelåtkomst, regelbundna uppdateringar, SSL/TLS-konfiguration och applikationssäkerhet utgör det ett mycket effektivt grundlager. Om du hostar en webbplats på din server bör du inte heller försumma användningen av SSL-certifikat SSL-certifikat.

Jämförelse mellan UFW, iptables och firewalld

Det finns olika verktyg för brandväggshantering inom Linux-ekosystemet. UFW, iptables och firewalld tjänar ofta samma syfte, men användarvänlighet, distributionsstöd och hanteringsmetoder skiljer sig åt. Tabellen nedan gör det lättare för dig att fatta ett beslut.

Jämförelse mellan UFW, iptables och firewalld
VerktygFramträdande egenskapFör vem är det lämpligt?Vad man ska vara medveten om
UFWEnkla kommandon, snabb installation, kompatibilitet med Ubuntu/DebianVPS-användare, webb utvecklare, små och medelstora teamKan vara begränsad för komplex nätverkssegmentering
iptablesMycket detaljerad regelkontrollAvancerade systemadministratörerFelaktig regel kan leda till avbrott i åtkomsten
firewalldZone-logik, dynamisk regelhanteringCentOS, AlmaLinux, Rocky Linux-miljöerÄr inte lika enkelt som UFW; man måste lära sig zonstrukturen

Om du hanterar en webbserver baserad på Ubuntu är UFW tillräckligt för de flesta behov. I stora företagsnätverk eller i flerskiktade säkerhetsarkitekturer bör UFW övervägas tillsammans med molnsäkerhetsgrupper, WAF, IDS/IPS och centrala loggningslösningar.

Installation av UFW och första kontroller

UFW kommer vanligtvis förinstallerat på Ubuntu. Det är dock en bra början att kontrollera om det är installerat. Kommandot är: sudo ufw status. Om du får ett "command not found"-meddelande måste du installera det.

Installation på Ubuntu och Debian

Först, uppdatera paketlistan: sudo apt update. Installera sedan UFW: sudo apt install ufw -y. Efter installationen, kontrollera tjänstens status: sudo systemctl status ufw. Det är normalt om det inte visas som aktivt i utdata; UFW kan förbli passivt tills reglerna aktiveras.

Den första regeln i serverhantering är att inte skynda sig. Om du arbetar på en fjärr-VPS, se till att du har gett tillgång till SSH-porten innan du aktiverar UFW. Annars kan du förlora åtkomsten till din server. Om du använder en VPS från Hostragons är det en praktisk åtgärd att notera panelåtkomst och konsolalternativ innan du gör den första säkerhetskonfigurationen VPS-server.

Visa nuvarande status

För att se UFW:s status kan du använda kommandot sudo ufw status verbose. För en mer detaljerad och numrerad lista över regler kan du använda sudo ufw status numbered. Att ta bort en regel med en numrerad lista gör det mycket enklare. Om du till exempel har öppnat en port av misstag kan du se dess nummer först och sedan ta bort den med ett kommando som sudo ufw delete 3.

Säker start: Standardregler

På en ny Linux-server är den säkraste startmodellen ofta följande: avvisa inkommande anslutningar som standard, tillåt utgående anslutningar, och öppna endast nödvändiga portar. Detta tillvägagångssätt följer principen om minimiåtkomst.

De grundläggande kommandona att tillämpa är:

  • sudo ufw default deny incoming
  • sudo ufw default allow outgoing
  • sudo ufw allow OpenSSH eller sudo ufw allow 22/tcp
  • sudo ufw enable
  • sudo ufw status verbose

Den kritiska punkten här är SSH-åtkomsten. Om SSH körs på en annan port, till exempel 2222, bör du inte aktivera UFW utan först köra kommandot sudo ufw allow 2222/tcp. Att byta standardport 22 för SSH på egen hand ger inte säkerhet; men det kan minska automatiserade botförsök. Mer viktigt är det att stänga av lösenordsinloggning för SSH och använda nyckelbaserad åtkomst.

Göra SSH-åtkomsten säker

SSH är din servers administrationsport. Därför är detta den tjänst som bör behandlas med störst försiktighet i UFW-konfigurationen. Om SSH-åtkomst är öppen för varje IP-adress, kan automatiska skannare på internet snabbt börja försöka få åtkomst till din server.

Tillåtning av SSH-port

Om standardporten används är kommandot enkelt: sudo ufw allow 22/tcp. Om det finns en tillämpningsprofil för Ubuntu kan sudo ufw allow OpenSSH också användas. Om du använder en annan port, till exempel 2222, måste du använda kommandot sudo ufw allow 2222/tcp.

Begränsa SSH-åtkomst till specifika IP-adresser

En av de säkraste metoderna är att öppna SSH-åtkomsten endast för fasta administratörs-IP-adresser. Om ditt kontors IP-adress är 203.0.113.10 kan du använda följande kommando: sudo ufw allow from 203.0.113.10 to any port 22 proto tcp. På så sätt hålls SSH-porten inte öppen för allmänheten.

Om det finns flera administratörer, lägg till en separat regel för varje IP. Om du använder dynamiska IP-adresser, överväg denna metod noggrant; åtkomsten kan förloras om IP-adressen ändras. I sådana fall är det mer professionellt att hantera via VPN, bastion-host eller tillfällig konsolåtkomst från leverantörens panel.

Begränsa brute force-försök med begränsningar

UFW erbjuder kommandot "limit" för att minska frekventa anslutningsförsök. Kommandot är: sudo ufw limit 22/tcp. Denna regel hjälper till att begränsa för många anslutningsförsök under en viss tidsperiod. Men den ersätter inte helt verktyg som fail2ban. I produktionsmiljöer bör UFW:s begränsningar, fail2ban, nyckelbaserad åtkomst och starka användarpolicyer användas tillsammans för att säkerställa SSH-säkerhet.

Öppna webbserverportar: HTTP och HTTPS

För att publicera en webbplats krävs vanligtvis portarna 80/tcp och 443/tcp. Port 80 används för HTTP och port 443 för HTTPS-trafik. Modern SEO, webbläsarsäkerhet och användarförtroende gör att HTTPS nu är standard. Webbplatser utan SSL-certifikat möter både säkerhetsvarningar och kan förlora konverteringsfrekvenser SSL-certifikat.

Grundläggande regler för Nginx eller Apache

För HTTP är kommandot: sudo ufw allow 80/tcp. För HTTPS är kommandot: sudo ufw allow 443/tcp. För att öppna båda samtidigt är det för många administratörer mer läsbart att skriva dem separat istället för att använda kommandot sudo ufw allow 80,443/tcp.

UFW:s tillämpningsprofiler kan också användas. För Nginx kan du se profiler med kommandot sudo ufw app list. Till exempel tillåter Nginx Full-profilen både HTTP- och HTTPS-åtkomst. Kommandot är: sudo ufw allow Nginx Full. På Apache-sidan kan liknande Apache Full-profilen användas.

Är det tillräckligt att endast använda HTTPS?

Tekniskt sett kan din webbplats publiceras endast via HTTPS; men processer för certifikatförnyelse som Let’s Encrypt och omdirigering från HTTP till HTTPS kräver vanligtvis att port 80 är öppen i de flesta scenarier. Därför är det mer praktiskt att hantera portarna 80 och 443 tillsammans på webbservrar. Det mest korrekta tillvägagångssättet är att omdirigera alla HTTP-förfrågningar till HTTPS med 301-status.

Speciella portar, databaser och administrationspaneler

Att öppna varje port är enkelt; den verkliga expertisen ligger i att veta vilka portar som INTE ska öppnas. Portarna 3306 för MySQL, 5432 för PostgreSQL, 6379 för Redis och 9200 för Elasticsearch kan orsaka allvarliga säkerhetsrisker om de lämnas öppna för internet. Dessa tjänster bör om möjligt endast lyssna på localhost eller vara tillgängliga via ett privat nätverk.

Öppna en specifik port för en viss IP-adress

Om du till exempel endast vill att din applikationsserver ska ha åtkomst till din databasserver, måste du använda en IP-baserad regel. Kommandot är: sudo ufw allow from 198.51.100.25 to any port 5432 proto tcp. Denna regel öppnar PostgreSQL-åtkomsten endast för den angivna IP-adressen.

Ett felaktigt exempel skulle vara att använda kommandot sudo ufw allow 5432/tcp öppet för alla på produktionsdatabasen. Detta skapar en onödig angreppsytan. För databasservrar, administrationspaneler och interna tjänster bör alltid en resurs-IP-begränsning övervägas.

Var uppmärksam på cPanel, Plesk och administrationspaneler

Hostingkontrollpaneler kan använda flera portar. Om du använder Plesk, cPanel eller en specialbyggd administrationspanel, aktivera inte UFW utan att kontrollera den officiella portlistan. Annars kan e-post, DNS, FTP eller panelåtkomsten stängas av. För användare som föredrar hanterad hosting hanteras denna komplexitet vanligtvis av leverantören Webbhotell.

Ta bort, redigera och sortera regler

Regelhantering med UFW är enkelt; men det är viktigt att dokumentera ändringar i produktionsmiljöer. Visa först de befintliga reglerna med nummer: sudo ufw status numbered. Hitta numret på den regel du vill ta bort och ta bort den med kommandot sudo ufw delete 5.

Det är också möjligt att ta bort direkt med regeluttryck. Till exempel tar kommandot sudo ufw delete allow 8080/tcp bort tillåtelse-regeln för port 8080. Men för komplexa IP-baserade regler är det säkrare att använda numrerad borttagning.

Regelordningen blir särskilt viktig när tillåtelse- och avvisningsregler används tillsammans. Om du vill lägga till en speciell avvisningsregel före en allmän tillåtelse kan du överväga insert-kommandot. Till exempel kan du använda sudo ufw insert 1 deny from 203.0.113.55 för att snabbt blockera en angripare eller en missbrukande IP-adress.

Övervakning av trafik med UFW-loggar

Brandväggen är inte bara till för att öppna och stänga portar utan är också värdefull för att förstå nätverksbeteende. För att aktivera UFW-loggar används kommandot sudo ufw logging on. Loggnivån kan ställas in på low, medium, high eller full vid behov. För de flesta servrar är low tillräckligt som startnivå.

För att granska loggarna kan du kontrollera filen /var/log/ufw.log. Exempelkommandot: sudo tail -f /var/log/ufw.log. Här kan du se avvisade anslutningar, käll-IP-adresser, målportar och protokollinformation. Om det kommer hundratals försök från olika IP-adresser till port 22 på kort tid, bör SSH-säkerhetsåtgärderna stramas åt.

Att hålla loggarna på en hög nivå kontinuerligt kan öka diskanvändningen. Därför bör loggrotation, central loggning och varningsmekanismer övervägas på servrar med hög trafik. I företagsprojekt är det viktigt att inte bara behålla säkerhetsloggar utan också att övervaka dem meningsfullt.

IPv6 och UFW-inställningar

Från 2026 har IPv6-stöd blivit standard i många datacenter. Men vissa administratörer kan lämna säkerhetsluckor genom att endast tänka på IPv4-regler. Om din server får en IPv6-adress måste du se till att UFW även hanterar IPv6-trafik.

För att kontrollera detta ska raden IPV6=yes finnas i /etc/default/ufw-filen. Efter att ha gjort ändringar kan UFW startas om: sudo ufw disable och sedan sudo ufw enable. Om du ser regler med v6 i UFW-statusutdata, betyder det att IPv6-sidan också hanteras.

Om du inte använder IPv6, kontrollera först leverantörens och applikationens krav innan du helt inaktiverar det. Felaktig IPv6-konfiguration kan göra en tjänst som du har stängt av på IPv4 fortfarande tillgänglig via IPv6. Detta är en vanlig men ofta förbisedd säkerhetsrisk.

Varför kan UFW bete sig annorlunda när Docker används?

Docker kan direkt ändra iptables-regler när det publicerar containerportar. Detta kan komma som en överraskning för administratörer som använder UFW, eftersom en port som ser stängd ut i UFW kan bli tillgänglig på grund av Docker-publikationen. Till exempel kommandot docker run -p 8080:80 publicerar port 80 i containern på värden som 8080.

Vid användning av servrar med Docker bör följande kontroller göras:

  • Kontrollera vilka portar som öppnas i docker ps-utdata.
  • Ta bort onödiga -p eller ports-definitioner.
  • Överväg att endast publicera tjänster på 127.0.0.1.
  • Kontrollera molnsäkerhetsgrupper och UFW-regler tillsammans.
  • I produktionsmiljöer, publicera kontrollerat via reverse proxy.

Säkerhet i containerarkitekturer handlar inte bara om UFW-kommandon. Docker-nätverk, bildsäkerhet, hemlighetsförvaltning och uppdateringsstrategi bör planeras tillsammans. För högtrafikerade applikationer är det också avgörande att välja rätt server Dedikerad Server.

Användbar säkerhetskontrollista för UFW

Den följande kontrollistan kan användas som en praktisk startstandard för en nyinstallerad Linux-server. Särskilt före publicering av ett webbprojekt, API, e-handelswebbplats eller kundpanel är det viktigt att gå igenom dessa punkter för att minska driftstopp och säkerhetsrisker.

  • Uppdatera servern: sudo apt update && sudo apt upgrade -y.
  • Testa SSH-åtkomsten och, om möjligt, lämna en andra terminalsession öppen.
  • Avvisa standard inkommande trafik: sudo ufw default deny incoming.
  • Tillåt standard utgående trafik: sudo ufw default allow outgoing.
  • Ge tillgång till SSH-porten eller tillämpa IP-baserade begränsningar.
  • Öppna endast portarna 80 och 443 för webbservern.
  • Öppna aldrig databasportar för internet.
  • Aktivera UFW: sudo ufw enable.
  • Verifiera reglerna: sudo ufw status verbose och sudo ufw status numbered.
  • Aktivera loggning och kontrollera misstänkt trafik inom de första 24 timmarna.
  • Överväg IPv6-regler.
  • Om du använder Docker eller kontrollpanel, testa effekterna av extra portar.

Praktiskt exempel: UFW-installation för en WordPress-server

Anta att en enda WordPress-webbplats körs på Ubuntu med Nginx, PHP-FPM och MySQL. MySQL lyssnar endast på localhost, webbplatsen publiceras via HTTPS och SSH kommer att nås från administratörens IP. I detta scenario kan UFW-konfigurationen se ut så här:

  • sudo ufw default deny incoming
  • sudo ufw default allow outgoing
  • sudo ufw allow from 203.0.113.10 to any port 22 proto tcp
  • sudo ufw allow 80/tcp
  • sudo ufw allow 443/tcp
  • sudo ufw logging on
  • sudo ufw enable
  • sudo ufw status verbose

I denna konfiguration är SSH inte öppet för allmänheten, de nödvändiga två portarna för webbtrafik är öppna och databasen är stängd för externa anslutningar. På WordPress-sidan skapas en mycket solid grund med säkerhetstillägg, starka administratörslösenord, aktuella teman och tillägg, regelbundna säkerhetskopior och SSL. Korrekt hantering av domännamn och DNS-poster är också viktigt för tillgänglighet Domänsökning.

Vanliga misstag och lösningsförslag

SSH-anslutningen bröts när UFW aktiverades

Detta händer vanligtvis när UFW aktiveras utan att tillåta SSH-porten. Om du har konsolåtkomst från leverantörens panel, anslut och lägg till sudo ufw allow 22/tcp eller tillåt den specifika port du använder. Om du inte har konsol kan du behöva kontakta supportteamet. Därför bör alltid en SSH-regel läggas till innan UFW aktiveras.

Webbplatsen öppnas inte

Även om Nginx eller Apache är igång, kan webbplatsen inte nås om portarna 80 och 443 är stängda. Kontrollera portarna med sudo ufw status verbose. Bekräfta också den port som webbservern lyssnar på med kommandot ss -tulpn. Se till att DNS-posterna är korrekt riktade DNS-hantering.

E-posttjänster fungerar inte

E-postservrar använder flera portar för SMTP, IMAP, POP3 och deras säkra varianter. Portar som 25, 465, 587, 993 och 995 kan vara nödvändiga beroende på scenariot. Om du använder e-posthostingstjänster behöver du kanske inte öppna dessa portar på din server företagse-postahosting.

Jag har lagt till en regel, men den hade ingen effekt

Fel protokoll, fel port, Docker-effekt, molnsäkerhetsgrupp eller att applikationen lyssnar på en annan port kan orsaka detta. UFW-regeln hanterar filtrering på nätverkslagret; om applikationen inte fungerar ger den ingen tjänst även om porten är öppen. Därför bör brandväggen, tjänstens status och leverantörens nätverksregler kontrolleras tillsammans.

De bästa UFW-säkerhetspraxis för 2026

Aktuell server säkerhet är mer omfattande än att bara stänga några portar. En bra UFW-konfiguration 2026 bör stödjas av följande principer:

  • Minimiåtkomst: Öppna endast de portar som verkligen behövs.
  • Identitetssäkerhet: Använd nyckelbaserad åtkomst för SSH.
  • IP-begränsning: Sätt administrationsportarna bakom fasta IP eller VPN.
  • Övervakning: Övervaka UFW-loggar och systemloggar regelbundet.
  • Reservplan: Ha konsolåtkomst eller återhämtningsprocedurer för felaktiga brandväggsregler.
  • Lagrat säkerhet: Använd UFW tillsammans med WAF, SSL, uppdateringar, säkerhetskopior och applikationssäkerhet.
  • Dokumentation: Registrera varför varje regel lades till inom teamet.

En välkonfigurerad brandvägg är en integrerad del av en prestanda och pålitlig hostinginfrastruktur. När ditt projekts trafik växer bör inte bara portregler utan även resursanvändning, säkerhetskopiering, CDN, SSL och övervakningslösningar planeras Hostingpaket.

Vanliga frågor

Gör aktivering av UFW min server helt säker?

Nej. UFW minskar angreppsytan och ger ett viktigt säkerhetslager genom att stänga onödiga portar, men är inte tillräckligt på egen hand. Det bör användas tillsammans med uppdateringar, SSH-nycklar, starka lösenord, SSL, säkerhetskopior och applikationssäkerhet.

Är det tillräckligt att öppna portarna 80 och 443 med UFW?

För en webbplats är portarna 80 och 443 vanligtvis tillräckliga. Men för SSH-hantering måste du också öppna port 22 eller den specifika SSH-porten på ett säkert sätt. Databas- och administrationspanelportar bör om möjligt begränsas på IP-basis.

Ökar det säkerheten att ändra SSH-porten?

Att ändra SSH-porten kan minska automatiska botförsök, men bör inte ses som en verklig säkerhetsåtgärd. En starkare strategi är att använda SSH-nycklar, stänga av lösenordsinloggning, tillämpa IP-begränsningar och använda UFW:s begränsningar eller fail2ban.

Kontrollerar UFW även Docker-containrar?

Det gör den kanske inte alltid som förväntat. Docker kan direkt ändra iptables-regler när portarna publiceras. Därför bör docker ps-utdata, publicerade portar och UFW-regler kontrolleras tillsammans på servrar där Docker används.

Bör jag kontrollera IPv6-inställningar när jag använder UFW?

Ja. Om din server får en IPv6-adress måste du se till att UFW också hanterar IPv6-trafik. Raden IPV6=yes bör kontrolleras i /etc/default/ufw-filen och v6-regler bör verifieras i UFW-statusutdata.

Sammanfattningsvis kan brandväggshantering med UFW på Linux-servrar göras snabbt, läsbart och effektivt. Genom att använda rätt startregler, säkerhet för SSH, kontrollerad öppning av webbportar och loggövervakning kan du avsevärt minska din servers angreppsytan. Om du lanserar ett nytt projekt är det bra att planera en säker hostinginfrastruktur, SSL och regelbundna underhållssteg för långsiktigt hållbara resultat. Du kan granska Hostragons-lösningar för att välja en infrastruktur som passar dina behov och gradvis utveckla din säkerhetskonfiguration i linje med dina tillväxtmål.

Dela detta inlägg:

Hostragons-teamet

Aktuella guider från vårt expertteam inom webbhotell, servrar och domäner. Låt oss hitta rätt lösning för ditt projekt tillsammans.

Kontakta oss