Selvom Linux er et af de mest pålidelige og sikre operativsystemer, takket være dets egenskaber, vil der altid være en form for sårbarhed, uanset om det er iboende for systemet eller utilsigtet af brugeren. For at øge Linux -sikkerheden har vi forskellige værktøjer designet til at beskytte tjenester, processer, profiler eller filer, og i dag vil vi fokusere på en speciel en, der hedder Iptables.
Hvad er IptablesIptables er et avanceret firewallværktøj, der er integreret i Linux -kernen, som er en del af et projekt kaldet netfilter.
Takket være Iptables vil vi være i stand til nøjagtigt og direkte at styre alle indgående og udgående forbindelser til serveren. Iptables er udviklet til IPv4 -adressering, mens vi for IPv6 har Ip6 -tabeller.
1. Iptables struktur i Linux
Den struktur, vi finder i Iptables, er følgende:
RåDet er ansvarligt for at filtrere pakkerne før enhver anden eksisterende tabel
FilterDette er programmets standardtabel
NatDet bruges til oversættelse af netværksadresser
MangroveDet bruges til ændring af specialiserede netværkspakker
SikkerhedKan implementeres for obligatoriske regler for netværksforbindelse til adgangskontrol
2. Kommandostruktur i Iptables på Linux
I Iptables er hver regel en kommando, der angiver, hvordan netværkspakketrafikken skal håndteres.
Vi kan bruge følgende struktur:
-EN INDGANG -i eth0 -p tcp -m tilstand -ESTABLISHED, RELATED --sport 80 -j ACCEPTDe anvendte parametre er:
- -A: Angiver, at reglerne tilføjes til Iptables
- -i: Angiver den grænseflade, som reglen skal anvendes på
- -p: Henviser til den protokol, hvor reglen finder anvendelse
- -m: Henviser til, at der er en betingelse, der skal være opfyldt for at anvende reglen
- --stat: Tillad accept af nye forbindelser
- --sport: Angiver kildeporten
- -j: (Jump) angiver, at de kan acceptere al trafik, der opfylder de givne betingelser.
3. Oprettelse af regler ved hjælp af Iptables på Linux
Selvom vi kan tilføje reglerne manuelt, er det meget mere praktisk at oprette en reglerfil og derefter importere den. I dette tilfælde opretter vi filen i stien / tmp / iptables-ip4, og vi kan bruge en editor til dens respektive justering:
sudo nano / tmp / iptables-ip4Syntaksen vil være følgende:
* filtrer # Regler for tilføjelse af KOMMITNu opretter vi følgende regler i filen:
Loopback = Det er den eksterne grænseflade til Linux
-A INPUT -i lo -j ACCEPT -A OUTPUT -o lo -j ACCEPT
Ping = Tillader os at kontrollere netværksforbindelser
-A INPUT -i eth0 -p icmp -m state -state NEW --icmp -type 8 -j ACCEPT -A INPUT -i eth0 -p icmp -m state -state ESTABLISHED, RELATED -j ACCEPT -A OUTPUT - o eth0 -p icmp -j ACCEPT
Web = Gennem disse regler kontrollerer vi indgående og udgående trafik.
-EN INDGANG -i eth0 -p tcp -m tilstand -stat ESTABLISHED, RELATED --sport 80 -j ACCEPT -A INPUT -i eth0 -p tcp -m state -state ESTABLISHED, RELATED --sport 443 -j ACCEPT -En OUTPUT -o eth0 -p tcp -m tcp --port 80 -j ACCEPT -A OUTPUT -o eth0 -p tcp -m tcp --port 443 -j ACCEPT
I tilfælde af tilføjelse af DNS bruger vi følgende linjer:
-A INPUT -i ens3 -s 192.168.0.1 -p udp -sport 53 -m tilstand -stat ESTABLISHED, RELATED -j ACCEPT -A OUTPUT -o ens3 -d 192.168.0.1 -p udp --port 53 -m udp -j ACCEPT
Bemærk:Her skal vi ændre IP efter behov
Tid = Disse regler tillader forbindelse til NTP for korrekt tidssynkronisering
-EN INDGANG -i eth0 -p udp -m tilstand -stat ESTABLISHED, RELATED --dport 123 -j ACCEPT -A OUTPUT -o eth0 -p udp -m udp -sport 123 -j ACCEPT
Udskrivning = Tillader, at USB -porte til tilslutning af printere aktiveres
-A INPUT -p udp -m udp --dport 631 -j ACCEPT -A INPUT -p tcp -m tcp --port 631 -j ACCEPT -A OUTPUT -p udp -m udp -sport 631 -j ACCEPT -A OUTPUT -p tcp -m tcp -sport 631 -j ACCEPT
Email = Vi kan aktivere de forskellige e -mail -protokoller
# IMAP -A INDGANG -i eth0 -p tcp -m tilstand -stat ESTABLISHED, RELATED --sport 993 -j ACCEPT -A OUTPUT -o eth0 -p tcp -m tcp --port 993 -j ACCEPT
# POP3 -A INPUT -i eth0 -p tcp -m state -state ESTABLISHED, RELATED --sport 995 -j ACCEPT -A OUTPUT -o eth0 -p tcp -m tcp --port 995 -j ACCEPT
# SMTP -A INDGANG -i eth0 -p tcp -m tilstand -stat ESTABLISHED, RELATED --sport 465 -j ACCEPT -A OUTPUT -o eth0 -p tcp -m tcp --port 465 -j ACCEPT
SSH = Aktiver sikre forbindelser til computeren ved hjælp af SSH -protokollen
# Input -A INPUT -i ens3 -p tcp -m state -state NEW, ESTABLISHED --dport 22 -j ACCEPT -A OUTPUT -o ens3 -p tcp -m state -state ESTABLISHED --sport 22 -j ACCEPT
# Output -A OUTPUT -o ens3 -p tcp -m state -state NEW, ESTABLISHED --dport 22 -j ACCEPT -A INPUT -i ens3 -p tcp -m state -state ESTABLISHED -sport 22 -j ACCEPT
DHCP: Vi kan oprette regler for godkendelse af IP -adressering via DHCP
-EN INDGANG -i eth0 -p udp -m tilstand -stat ESTABLISHED, RELATED --sport 67:68 -j ACCEPT -A OUTPUT -o eth0 -p udp -m udp --dport 67:68 -j ACCEPT
Afvis alle forbindelser: Vi kan tilføje følgende linjer for at deaktivere alt det ovenstående:
-EN INDGANG -j AFVIS -EN FREMTID -j AFVIS -EN AFGANG -j AFVIS
Alle disse linjer tilføjes i den nævnte fil:
FORSTØRRE
Vi gemmer ændringerne
Ctrl + O.
Vi lader redaktøren bruge
Ctrl + X
4. Import af reglerne ved hjælp af Iptables Linux
Når filen er redigeret, kan vi importere disse regler til Iptable ved at udføre følgende kommando:
sudo iptables -F && sudo iptables -XVi kan se status for reglerne ved hjælp af kommandoen sudo iptables -S:
FORSTØRRE
Hvis vi ønsker at gendanne alle reglerne, udfører vi følgende linje:
sudo iptables-restore < / tmp / itpables-ip4Hvis vi ønsker, at disse regler skal være permanente, udfører vi følgende:
sudo apt installere iptables-persistentPå denne måde er Iptables vores bedste allierede, når vi konfigurerer firewallen i Linux -miljøer.