Beperkend versus tolerant firewallbeleid
Naast de syntaxis die u moet kennen om een firewall te beheren, moet u de taken van de firewall definiëren om te beslissen welk beleid wordt geïmplementeerd. Er zijn 2 hoofdbeleidsregels die het gedrag van een firewall definiëren, en verschillende manieren om ze te implementeren.
Wanneer u regels toevoegt om specifieke pakketten, bronnen, bestemmingen, poorten, enz. te accepteren of te weigeren. de regels bepalen wat er gebeurt met het verkeer of de pakketten die niet zijn geclassificeerd binnen uw firewallregels.
Een extreem eenvoudig voorbeeld zou zijn: wanneer u definieert of u het IP-adres op de witte of zwarte lijst x.X.X.x, wat gebeurt er met de rest?.
Stel dat u verkeer afkomstig van het IP-adres op de witte lijst zet x.X.X.X.
EEN toegeeflijk beleid zou betekenen dat alle IP-adressen niet x . zijn.X.X.x kan verbinden, dus y.ja.ja.y of z.z.z.z kan verbinden. EEN beperkend beleid weigert al het verkeer afkomstig van adressen die niet x . zijn.X.X.X.
Kortom, een firewall volgens welke al het verkeer of alle pakketten die niet zijn gedefinieerd in de regels niet mag passeren, is beperkend. Een firewall volgens welke al het verkeer of alle pakketten die niet zijn gedefinieerd in de regels is toegestaan, is: toegeeflijk.
Beleid kan verschillend zijn voor inkomend en uitgaand verkeer, veel gebruikers hebben de neiging om een restrictief beleid te gebruiken voor inkomend verkeer. Houd een permissief beleid voor uitgaand verkeer, dit varieert afhankelijk van het gebruik van het beschermde apparaat.
Iptables en UFW
Hoewel Iptables een frontend is voor gebruikers om de kernelfirewallregels te configureren, is UFW een frontend om Iptables te configureren, het zijn geen echte concurrenten, het feit is dat UFW de mogelijkheid heeft geboden om snel een aangepaste firewall op te zetten zonder onvriendelijke syntaxis te leren, maar sommige regels kunnen niet worden toegepast via UFW, specifieke regels om specifieke aanvallen te voorkomen.
Deze tutorial toont regels die ik beschouw als een van de beste firewallpraktijken die voornamelijk maar niet alleen met UFW worden toegepast.
Als u UFW niet hebt geïnstalleerd, installeer het dan door het volgende uit te voeren:
# apt install ufw
Aan de slag met UFW:
Laten we om te beginnen de firewall bij het opstarten inschakelen door het volgende uit te voeren:
# sudo ufw inschakelen
Opmerking: indien nodig kunt u de firewall uitschakelen met dezelfde syntaxis door "inschakelen" te vervangen door "uitschakelen" (sudo ufw uitschakelen).
U kunt op elk moment de firewallstatus uitgebreid controleren door het volgende uit te voeren:
# sudo ufw status uitgebreid
Zoals u in de uitvoer kunt zien, is het standaardbeleid voor inkomend verkeer beperkend, terwijl voor uitgaand verkeer het beleid toelaatbaar is, de kolom "uitgeschakeld (gerouteerd)" betekent dat routering en doorsturen zijn uitgeschakeld.
Voor de meeste apparaten beschouw ik een beperkend beleid als onderdeel van de beste firewallpraktijken voor beveiliging, dus laten we beginnen met het weigeren van al het verkeer behalve degene die we als acceptabel hebben gedefinieerd, een beperkende firewall:
# sudo ufw standaard inkomende weigeren
Zoals je kunt zien, waarschuwt de firewall ons om onze regels bij te werken om fouten te voorkomen bij het bedienen van klanten die verbinding met ons maken. De manier om hetzelfde te doen met Iptables zou kunnen zijn:
# iptables -A INPUT -j DROPDe ontkennen regel op UFW zal de verbinding verbreken zonder de andere partij te informeren dat de verbinding is geweigerd. Als u wilt dat de andere partij weet dat de verbinding is geweigerd, kunt u de regel gebruiken "afwijzen" in plaats daarvan.
# sudo ufw standaard inkomende weigeren
Zodra u al het inkomende verkeer hebt geblokkeerd, onafhankelijk van enige voorwaarde, kunt u beginnen met het instellen van discriminerende regels om te accepteren wat we specifiek willen accepteren, bijvoorbeeld als we een webserver opzetten en u alle verzoekschriften wilt accepteren die naar uw webserver komen, in poort 80, voer uit:
# sudo ufw 80 . toestaan
U kunt een service zowel op poortnummer als op naam specificeren, u kunt bijvoorbeeld de prot 80 gebruiken zoals hierboven of de naam http:
Naast een service kunt u ook een bron definiëren, u kunt bijvoorbeeld alle inkomende verbindingen weigeren of weigeren, behalve een bron-IP.
# sudo ufw toestaan van
Algemene iptables-regels vertaald naar UFW:
Het beperken van rate_limit met UFW is vrij eenvoudig, dit stelt ons in staat misbruik te voorkomen door het aantal dat elke host kan instellen te beperken, waarbij UFW het beperken van de snelheid voor ssh zou zijn:
# sudo ufw-limiet van elke poort 22# sudo ufw limiet ssh/tcp
Om te zien hoe UFW de taak gemakkelijk heeft gemaakt, heb je een vertaling van de UFW-instructie hierboven om hetzelfde te instrueren:
# sudo iptables -A ufw-user-input -p tcp -m tcp --dport 22 -m conntrack --ctstate NIEUW-m recent --set --name DEFAULT --mask 255.255.255.0 --rbron
#sudo iptables -A ufw-user-input -p tcp -m tcp --dport 22 -m conntrack --ctstate NIEUW
-m recent --update --seconds 30 --hitcount 6 --name DEFAULT --mask 255.255.255.255
--rsource -j ufw-gebruikerslimiet
# sudo iptables -A ufw-user-input -p tcp -m tcp --dport 22 -j ufw-user-limit-accept
De hierboven met UFW geschreven regels zouden zijn:
Ik hoop dat je deze tutorial over Debian Firewall Setup Best Practices for Security nuttig vond.