Hostwinds Tutorials

Zoekresultaten voor:


Inhoudsopgave


Wat zijn iptables?
Hoe installeer ik IPTables?
Hoe gebruik ik IPTables?
Lijst regels op specificatie
Maak een lijst van regels per specifieke keten
Maak een lijst van regels als tabellen
Verwijder regel met behulp van specificatie
Flush-regels
Blokkeer een IP-adres
Sta alle inkomende SSH-verbindingen toe
Sta alle inkomende SSH-verbindingen van expliciet IP toe
Uitgaande SSH-verbindingen toestaan
Sta alle inkomende HTTP- en HTTPS-verbindingen toe
Blokkeer uitgaande SMTP
Sta inkomende SMTP-verbindingen toe

IPTables-regels beheren

Trefwoorden: CentOS Web Panel,  Firewall,  Linux 

Wat zijn iptables?
Hoe installeer ik IPTables?
Hoe gebruik ik IPTables?
Lijst regels op specificatie
Maak een lijst van regels per specifieke keten
Maak een lijst van regels als tabellen
Verwijder regel met behulp van specificatie
Flush-regels
Blokkeer een IP-adres
Sta alle inkomende SSH-verbindingen toe
Sta alle inkomende SSH-verbindingen van expliciet IP toe
Uitgaande SSH-verbindingen toestaan
Sta alle inkomende HTTP- en HTTPS-verbindingen toe
Blokkeer uitgaande SMTP
Sta inkomende SMTP-verbindingen toe

Wat zijn iptables?

Ittables is een extreem flexibel op de opdrachtregel-gebaseerde firewallhulpprogramma dat speciaal is gebouwd voor Linux Distros.Ittables gebruikt beleidsketens om het verkeer toe te staan of te blokkeren.Wanneer een verbinding wordt opgericht op uw server, zullen iptables een regel in de lijst identificeren om te bepalen welke actie moet worden ondernomen.Als er geen regel voor de verbinding aanwezig is, is het toevlucht tot de standaardactie die is gedefinieerd voor uw systeem.

Hoe installeer ik IPTables?

Over het algemeen wordt IPTables standaard geïnstalleerd op de meeste Linux-systemen. Om het bij te werken of te installeren, kunt u het IPTables-pakket ophalen door de volgende opdrachten te geven:

Notitie: IPTables moeten vooraf zijn geïnstalleerd op CentOS 6.

Ubuntu

apt-get install iptables-persistent

CentOS 7

systemctl stop firewalld
systemctl mask firewalld
yum install iptables-services
systemctl enable iptables
systemctl start iptables

Ittables worden nu op uw systeem geïnstalleerd.Laten we eens kijken hoe u iptables kunt gebruiken.

Hoe gebruik ik IPTables?

Dit gedeelte bestrijkt enkele elementaire IPTABELS-specifieke opdrachten en gebruik, zoals het vermelden van uw huidige regelset en het blokkeren van een IP-adres van het vaststellen van een verbinding.

Lijst regels op specificatie

Om de momenteel actieve regelset met de specificatie te vermelden, zou u de volgende opdracht uitgeven:

iptables -S

Maak een lijst van regels per specifieke keten

Om de regels weer te geven die momenteel op een specifieke keten worden toegepast, kunt u de volgende opdracht gebruiken. Dit voorbeeld toont alle regelspecificaties voor de UDP-keten:

iptables -S UDP

Maak een lijst van regels als tabellen

U kunt alle huidige IPTables-regels die op hun plaats zijn in een tabelweergave weergeven met de volgende opdracht die de optie -L aanroept. Dit zal alle huidige regelsets weergeven, gesorteerd op kettingtype.

iptables -L

Verwijder regel met behulp van specificatie

U kunt regels in IPTables verwijderen met behulp van de -d-optie.U kunt regelsets op een paar verschillende manieren verwijderen.We hebben betrekking op het verwijderen van regels door de specificatie.Als u bijvoorbeeld de regel wilt verwijderen waarmee alle inkomende verkeer op poort 443 de volgende opdracht zou gebruiken:

iptables -D INPUT -i eth0 -p tcp --dport 443 -j ACCEPT

Flush-regels

Met IPTables kunt u regels wissen. Dit kan door een enkele ketting door te spoelen of door alle kettingen door te spoelen. We behandelen beide methoden hieronder.

Om een enkele keten te spoelen, kunt u de optie -f gebruiken of de equivalent -Flush-optie, gecombineerd met de naam van de keten die u wilt spoelen.U kunt bijvoorbeeld alle regels in de invoerketen verwijderen door de volgende opdracht te gebruiken:

iptables -F INPUT

Om alle ketens te spoelen, gebruikt u de optie -f of equivalente -Flush zonder extra parameters.Dit zal effectief alle firewallregels verwijderen die momenteel actief zijn op de server.Het commando is als volgt:

iptables -F

Blokkeer een IP-adres

Ittables geven de mogelijkheid om netwerkverbindingen van een specifiek IP-adres te blokkeren.Om bijvoorbeeld alle inkomende verbindingen van 10.10.10.10 te blokkeren, zou u de volgende opdracht uitvoeren:

iptables -A INPUT -s 10.10.10.10 -j DROP

U kunt de verbinding ook afwijzen, die zal reageren met een fout "Verbinding geweigerd".Vervang druppel met afwijzing.

iptables -A INPUT -s 10.10.10.10 -j REJECT

U kunt ook verbindingen blokkeren van een specifiek IP naar een specifiek netwerkapparaat, zoals ETH1, met behulp van de optie -I.

iptables -A INPUT -i eth1 -s 10.10.10.10 -j DROP

Sta alle inkomende SSH-verbindingen toe

Gebruik de volgende opdrachten om ALLE inkomende SSH-verbindingen op de standaard SSH-poort (22) toe te staan:

iptables -A INPUT -p tcp --dport 22 -m conntrack --ctstate NEW,ESTABLISHED -j ACCEPT
iptables -A OUTPUT -p tcp --sport 22 -m conntrack --ctstate ESTABLISHED -j ACCEPT

Sta alle inkomende SSH-verbindingen van expliciet IP toe

U kunt SSH-verbindingen ook beperken om alleen te worden toegestaan vanuit een specifiek IP-adres of subnet.Als u bijvoorbeeld alleen het IP-adres 10.10.10.10 wilde toestaan om verbinding te maken met de server via SSH, zou u de volgende opdracht gebruiken:

iptables -A INPUT -p tcp -s 10.10.10.10 --dport 22 -m conntrack --ctstate NEW,ESTABLISHED -j ACCEPT
iptables -A OUTPUT -p tcp --sport 22 -m conntrack --ctstate ESTABLISHED -j ACCEPT

Dit kan ook voor een heel subnet worden gedaan door het subnet aan de opdracht toe te voegen, zoals / 27, zoals de volgende opdracht illustreert:

iptables -A INPUT -p tcp -s 10.10.10.10/27 --dport 22 -m conntrack --ctstate NEW,ESTABLISHED -j ACCEPT

Uitgaande SSH-verbindingen toestaan

Uw firewall heeft mogelijk niet het uitgangsbeleid om te accepteren.Als dit het geval is, moet u mogelijk uitgaande SSH-verbindingen toestaan als u rechtstreeks op een externe server van uw server wilt verbinden.U kunt de volgende opdrachten uitvoeren om dit te bereiken op de standaard SSH-poort (22).Als u een andere SSH-poort gebruikt, vervangt u "22" in het volgende voorbeeld met het poortnummer dat u gebruikt:

iptables -A OUTPUT -p tcp --dport 22 -m conntrack --ctstate NEW,ESTABLISHED -j ACCEPT
iptables -A INPUT -p tcp --sport 22 -m conntrack --ctstate ESTABLISHED -j ACCEPT

Sta alle inkomende HTTP- en HTTPS-verbindingen toe

Standaard wordt HTTP-verkeer in het algemeen op poort 80 geserveerd en wordt het HTTPS-verkeer meestal opgediend op poort 443. U kunt beide soorten verbindingen toestaan op uw webserver met behulp van de volgende opdrachten.

Notitie: Als u alleen een en niet de ander wilt toestaan, verwijdert u het poortnummer uit de opdracht die correleert naar het protocol dat u wilt toestaan.

iptables -A INPUT -p tcp -m multiport --dports 80,443 -m conntrack --ctstate NEW,ESTABLISHED -j ACCEPT
iptables -A OUTPUT -p tcp -m multiport --dports 80,443 -m conntrack --ctstate ESTABLISHED -j ACCEPT

Blokkeer uitgaande SMTP

IPTABELEN Hiermee kunt u specifieke poorten blokkeren, zoals de standaard SMTP-poort (25). U wilt bijvoorbeeld geen uitgaande e-mail op uw server toestaan. Om dit te stoppen met behulp van iptables, kunt u de volgende opdracht uitgeven:

iptables -A OUTPUT -p tcp --dport 25 -j REJECT

Dit configureert iptables om alle uitgaande verkeer op poort 25 te weigeren. Als u het verkeer op een andere poort wilt afwerpen, kunt u "25" vervangen door het poortnummer in kwestie.

Sta inkomende SMTP-verbindingen toe

U kunt uw server laten reageren op alle SMTP-verbindingen op poort 25 door de volgende opdrachten uit te voeren:

iptables -A INPUT -p tcp --dport 25 -m conntrack --ctstate NEW,ESTABLISHED -j ACCEPT
iptables -A OUTPUT -p tcp --sport 25 -m conntrack --ctstate ESTABLISHED -j ACCEPT

Geschreven door Hostwinds Team  /  december 13, 2016