Hoe om 'n firewall op Ubuntu-bediener op te stel
Gepubliseer: 15 Februarie 2025 om 21:36:17 UTC
Hierdie artikel verduidelik en verskaf 'n paar voorbeelde van hoe om 'n firewall op GNU/Linux op te stel met ufw, wat kort is vir Uncomplicated FireWall - en die naam is gepas, dit is regtig 'n baie maklike manier om seker te maak dat jy nie meer poorte oop het as wat jy nodig het nie.
How to Set Up a Firewall on Ubuntu Server
Die inligting in hierdie pos is gebaseer op Ubuntu Server 14.04 x64. Dit mag of mag nie geldig wees vir ander weergawes nie. (Opdatering: Ek kan bevestig dat die inligting in hierdie pos basies steeds geldig en funksioneel is vanaf Ubuntu Server 24.04, maar in die tussentydse 10 jaar het ufw ietwat "slimmer" geword deur profiele te hê vir algemene bedienertoepassings (jy kan byvoorbeeld "Nginx vol" aktiveer in plaas van poorte 80 en 443 om die hele firewall afsonderlik te deaktiveer en nie meer nuwe reëls uit te skakel nie) nodig)
Toe ek die eerste keer met GNU/Linux (Ubuntu)-bedieners begin het, het die opstel van 'n firewall die handmatige skep en instandhouding van 'n potensieel komplekse konfigurasielêer vir iptables behels. Ek het egter onlangs ufw ontdek, wat kort is vir Uncomplicated Firewall – en dit is regtig :-)
My installasie van Ubuntu Server 14.04 het reeds ufw geïnstalleer, maar as jy dit nie doen nie, installeer dit eenvoudig vanaf die bewaarplekke:
UFW is eintlik net 'n instrument wat die iptables-konfigurasie vereenvoudig - agter die skerms is dit steeds iptables en die Linux-kern-firewall wat die filtering doen, so ufw is nie minder of meer veilig as hierdie nie. Omdat ufw dit egter baie makliker maak om 'n firewall korrek op te stel, kan dit die risiko van menslike foute verminder en is dus moontlik veiliger vir onervare administrateurs.
As jou bediener met IPv6 sowel as IPv4 opgestel is, maak seker dat dit ook vir UFW geaktiveer is. Wysig die lêer /etc/default/ufw en soek 'n reël wat sê IPV6=ja . Op my installasie was dit reeds daar, maar as dit nie is nie of as dit nee sê, moet jy dit wysig
Gebruik dan eenvoudig die opdragprompt om die poorte te aktiveer wat jy wil oopmaak. As jy via ssh aan jou bediener gekoppel is, maak seker dat jy dit ook toelaat of dit kan jou verbinding ontwrig en jou moontlik uit jou bediener sluit wanneer jy dit aktiveer – afhangend van of jy fisiese toegang tot die bediener het of nie, kan dit nogal ongerieflik wees ;-)
Byvoorbeeld, as jy ssh op die standaardpoort 22 gebruik en jy 'n webbediener opstel wat beide ongeënkripteerde (HTTP op poort 80) en geïnkripteer (HTTPS op poort 443) verbindings ondersteun, sal jy die volgende opdragte uitreik om ufw op te stel:
sudo ufw allow 80/tcp
sudo ufw allow 443/tcp
As jy meer reëls benodig, voeg hulle eenvoudig by soos hierbo.
As jy 'n statiese IP-adres het en net via ssh vanaf die een plek moet kan koppel, kan jy ook ssh-verbindings tot 'n enkele oorsprongadres soos volg beperk:
Voer natuurlik eerder jou eie IP-adres in.
As jy klaar is, aktiveer ufw deur in te voer:
En jy is klaar! Die firewall loop en sal outomaties begin wanneer jy jou bediener herlaai :-)
As jy veranderinge aan die ufw-konfigurasie maak, moet jy dit dalk deaktiveer en weer aktiveer om dit in werking te stel, soos volg:
sudo ufw enable
Om na die huidige konfigurasie te kyk, voer eenvoudig in:
As ufw nie geaktiveer is nie, sal dit bloot 'n "onaktiewe" boodskap wys, anders sal dit die tans gedefinieerde reëls lys.