naar configureer een firewall of firewall in Linux, we kunnen gebruik maken van iptables, een krachtig hulpmiddel dat door veel gebruikers lijkt te zijn vergeten. Hoewel er andere methoden zijn, zoals ebtables en arptables om verkeer op linkniveau te filteren, of Squid op applicatieniveau, kunnen iptables in de meeste gevallen erg handig zijn door een goede beveiliging in ons systeem te implementeren op het verkeers- en transportniveau van net.
De Linux-kernel implementeert iptables, een deel daarvan zorgt voor het filteren van pakketten en dat we je in dit artikel leren om op een eenvoudige manier te configureren. Simpel gezegd, iptables identificeert welke informatie wel en niet kan binnenkomen, waardoor uw team wordt geïsoleerd van mogelijke bedreigingen. En hoewel er andere projecten zijn zoals Firehol, Firestarter, etc., gebruiken veel van deze firewallprogramma's iptables ...
Nou, Laten we aan de slag gaan, met voorbeelden begrijpt u alles beter (voor deze gevallen is het nodig om privileges te hebben, dus gebruik sudo voor het commando of word root):
De algemene manier om iptables te gebruiken om een filterbeleid te maken is:
IPTABLES -ARGUMENTEN I / O-ACTIE
Waar -ARGUMENT is het argument dat we zullen gebruiken, normaal gesproken -P om het standaardbeleid vast te stellen, hoewel er andere zijn zoals -L om het beleid te zien dat we hebben geconfigureerd, -F om een aangemaakt beleid te verwijderen, -Z om de byte- en pakkettellers te resetten, enz. Een andere optie is -A om een beleid toe te voegen (niet standaard), -I om een regel op een specifieke positie in te voegen, en -D om een bepaalde regel te verwijderen. Er zullen ook andere argumenten zijn om te verwijzen naar -p protocollen, –sport bronpoort, –dport voor bestemmingspoort, -i inkomende interface, -o uitgaande interface, -s bron-IP-adres en -d bestemmings-IP-adres.
Verder zou I / O vertegenwoordigen als politiek het wordt toegepast op de INPUT-ingang, op de OUTPUT-uitgang of het is een VOORWAARTSE verkeersomleiding (er zijn andere zoals PREROUTING, POSTROUTING, maar we zullen ze niet gebruiken). Ten slotte kan wat ik ACTIE heb genoemd de waarde AANVAARDEN als we accepteren, AFWIJZEN als we afwijzen of DALEN als we elimineren. Het verschil tussen DROP en REJECT is dat wanneer een pakket wordt afgewezen met REJECT, de machine waarvan het afkomstig is, weet dat het is afgewezen, maar met DROP werkt het stil en de aanvaller of de oorsprong weet niet wat er is gebeurd en zal dat ook niet doen. weet of we een firewall hebben of dat de verbinding net is mislukt. Er zijn ook anderen zoals LOG, die een follow-up van de syslog sturen ...
Om regels te wijzigen, kunnen we het iptables-bestand bewerken met onze favoriete teksteditor, nano, gedit, ... of scripts maken met regels (als je ze wilt overschrijven, kun je dit doen door een # voor de regel te plaatsen zodat het genegeerd als commentaar) via de console met commando's zoals we het hier zullen uitleggen. In Debian en derivaten kunt u ook de hulpprogramma's iptables-save en iptables-restore gebruiken ...
Het meest extreme beleid is om alles te blokkeren, absoluut al het verkeer, maar dit zal ons geïsoleerd achterlaten, met:
iptables -P INPUT DROP
Om het allemaal te accepteren:
iptables -P INPUT ACCEPT
Als we dat willen al het uitgaande verkeer van ons team wordt geaccepteerd:
iptables -P OUTPUT ACEPT
La een andere radicale actie zou zijn om alle beleidsmaatregelen uit te wissen van iptables met:
iptables -F
Laten we naar meer concrete regels gaanStel dat u een webserver heeft en daarom moet het verkeer via poort 80 worden toegestaan:
iptables -A INPUT -p tcp --dport 80 -j ACCEPT
En als we naast de vorige regel een team willen met iptables alleen worden gezien door computers op ons subnet en dat wordt niet opgemerkt door een extern netwerk:
iptables -A INPUT -p tcp -s 192.168.30.0/24 --dport 80 -j ACCEPT
Wat we in de vorige regel tegen iptables zeggen, is om een regel -A toe te voegen, zodat de INPUT-invoer en het TCP-protocol via poort 80 worden geaccepteerd. Stel je nu voor dat je dat wilt webbrowsen is geweigerd voor lokale machines die door de machine gaan die iptables draait:
iptables -t filter -A FORWARD -i eth1 -o eth0 -p tcp --dport 80 DROP
Ik denk dat het gebruik eenvoudig is, rekening houdend met waar elke parameter van iptables voor is, kunnen we eenvoudige regels toevoegen. U kunt alle combinaties en regels doen die we ons voorstellen ... Om mezelf niet meer uit te breiden, voegt u gewoon nog een ding toe, en dat is dat als de machine opnieuw wordt opgestart, de gemaakte beleidsregels worden verwijderd. De tabellen worden opnieuw opgestart en blijven zoals voorheen, zodra u de regels goed hebt gedefinieerd, als je ze permanent wilt maken, je moet ze laten starten vanuit /etc/rc.local of als je een Debian of derivaten hebt, gebruik dan de tools die we krijgen (iptables-save, iptables-restore en iptables-apply).
Dit is het eerste artikel dat ik op IPTABLES zie dat, hoewel compact -vereist een gemiddeld kennisniveau-, DIRECT NAAR DE KORREL GAAT.
Ik raad iedereen aan om het te gebruiken als een "beknopte handleiding", aangezien het zeer goed gecondenseerd en uitgelegd is. 8-)
Ik zou graag willen dat je in een toekomstig artikel praat over de vraag of de verandering naar systemd in de meeste linuxdistributies op de een of andere manier de veiligheid van linux in het algemeen beïnvloedt, en of deze verandering ten goede of slechter is van de toekomst en linuxdistributies. Ik zou ook graag willen weten wat er bekend is over de toekomst van devuan (debian zonder systemd).
Heel erg bedankt dat je hele goede artikelen maakt.
Kun je een artikel maken waarin de mangel-tafel wordt uitgelegd?
Alleen Facebook blokkeren?