10 noiembrie 2026 · by Alex M.
În lumea administrării serverelor Linux, iptables rămâne unul dintre cele mai puternice și flexibile instrumente de firewall disponibile. Deși soluții mai moderne precum UFW sau firewalld oferă o interfață mai prietenoasă, înțelegerea iptables îți oferă control granular complet asupra traficului de rețea — lucru esențial pe orice VPS NVMe sau server dedicat expus pe internet.
În acest ghid vei învăța cum să instalezi, configurezi și gestionezi iptables pe un VPS cu Ubuntu sau Debian, pornind de la zero și ajungând la un set robust de reguli de securitate.
iptables este un utilitar de spațiu utilizator care permite administratorilor să configureze regulile de filtrare a pachetelor IP în kernel-ul Linux (via modulul Netfilter). Funcționează pe baza unor tabele, lanțuri și reguli:
filter (implicit), nat, mangle, rawINPUT (trafic spre server), OUTPUT (trafic de la server), FORWARD (trafic redirecționat)ACCEPT, DROP, REJECT, LOGFiecare pachet de rețea parcurge regulile în ordine; prima regulă potrivită decide soarta pachetului.
Înainte de a începe, asigură-te că ai:
sudoPe majoritatea distribuțiilor, iptables vine preinstalat. Verifică starea curentă:
sudo iptables -L -v -n
Dacă nu este instalat:
# Ubuntu/Debian
sudo apt update && sudo apt install iptables -y
Pentru a vizualiza și regulile pentru IPv6:
sudo ip6tables -L -v -n
Înainte de a adăuga reguli, stabilești politicile implicite ale lanțurilor. Există două abordări:
⚠️ Atenție critică: Nu seta politica INPUT pe DROP înainte de a adăuga regula care permite SSH-ul! Riști să te blochezi din server.
# 1. Permite traficul SSH ÎNAINTE de orice altceva
sudo iptables -A INPUT -p tcp --dport 22 -j ACCEPT
# 2. Permite loopback (esențial pentru funcționarea sistemului)
sudo iptables -A INPUT -i lo -j ACCEPT
sudo iptables -A OUTPUT -o lo -j ACCEPT
# 3. Permite conexiunile deja stabilite
sudo iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
# 4. Acum poți seta politica DROP în siguranță
sudo iptables -P INPUT DROP
sudo iptables -P FORWARD DROP
sudo iptables -P OUTPUT ACCEPT
Dacă rulezi un server web (Apache, Nginx) pe hosting cPanel sau pe VPS, adaugă:
# HTTP
sudo iptables -A INPUT -p tcp --dport 80 -j ACCEPT
# HTTPS
sudo iptables -A INPUT -p tcp --dport 443 -j ACCEPT
# DNS (dacă serverul face rezoluție DNS)
sudo iptables -A INPUT -p udp --dport 53 -j ACCEPT
sudo iptables -A INPUT -p tcp --dport 53 -j ACCEPT
# ICMP (ping) — util pentru monitoring
sudo iptables -A INPUT -p icmp --icmp-type echo-request -j ACCEPT
Pentru servere de email care au nevoie și de certificate SSL:
# SMTP, SMTPS, IMAP, IMAPS, POP3S
sudo iptables -A INPUT -p tcp -m multiport --dports 25,465,587,143,993,110,995 -j ACCEPT
# Limitează conexiunile noi SSH la 5 pe minut per IP
sudo iptables -A INPUT -p tcp --dport 22 -m state --state NEW \
-m recent --set --name SSH
sudo iptables -A INPUT -p tcp --dport 22 -m state --state NEW \
-m recent --update --seconds 60 --hitcount 5 --name SSH -j DROP
# Limitează conexiunile HTTP noi (anti-DoS)
sudo iptables -A INPUT -p tcp --dport 80 -m limit \
--limit 25/minute --limit-burst 100 -j ACCEPT
# Blochează pachete cu stare INVALID
sudo iptables -A INPUT -m state --state INVALID -j DROP
# Protecție împotriva SYN flood
sudo iptables -A INPUT -p tcp --syn -m limit \
--limit 1/s --limit-burst 4 -j ACCEPT
# Blochează scanarea porturilor cu Null scan
sudo iptables -A INPUT -p tcp --tcp-flags ALL NONE -j DROP
# Blochează XMAS scan
sudo iptables -A INPUT -p tcp --tcp-flags ALL ALL -j DROP
# Blochează adrese private venind din exterior (pe interfața eth0)
sudo iptables -A INPUT -i eth0 -s 10.0.0.0/8 -j DROP
sudo iptables -A INPUT -i eth0 -s 172.16.0.0/12 -j DROP
sudo iptables -A INPUT -i eth0 -s 192.168.0.0/16 -j DROP
sudo iptables -A INPUT -i eth0 -s 127.0.0.0/8 -j DROP
Verifică numele interfeței tale de rețea cu
ip addr showși înlocuieșteeth0dacă e necesar (ex.ens3,enp1s0).
Dacă observi atacuri de la anumite IP-uri (vizibile în log-uri sau cu netstat), le poți bloca direct:
# Blochează un IP specific
sudo iptables -A INPUT -s 203.0.113.100 -j DROP
# Blochează un întreg subnet
sudo iptables -A INPUT -s 203.0.113.0/24 -j DROP
# Deblochează un IP
sudo iptables -D INPUT -s 203.0.113.100 -j DROP
Pe un server dedicat managed, echipa de administrare poate configura liste de blocare automate și mai avansate.
Pentru a monitoriza ce trafic este blocat (util în depanare și audit de securitate):
# Adaugă o regulă de logging ÎNAINTE de DROP implicit
sudo iptables -A INPUT -j LOG --log-prefix "[IPTABLES DROP] " --log-level 4
Log-urile apar în /var/log/syslog sau /var/log/kern.log:
sudo tail -f /var/log/kern.log | grep "IPTABLES DROP"
⚠️ Logging-ul intensiv poate umple discul rapid. Folosește modulul
limitpentru a restricționa numărul de log-uri:
sudo iptables -A INPUT -m limit --limit 5/min -j LOG \
--log-prefix "[IPTABLES DROP] " --log-level 4
Regulile iptables sunt volatile — se șterg la restart. Pentru persistență:
sudo apt install iptables-persistent -y
# Salvează regulile curente
sudo netfilter-persistent save
# Sau manual:
sudo iptables-save > /etc/iptables/rules.v4
sudo ip6tables-save > /etc/iptables/rules.v6
sudo iptables-restore < /etc/iptables/rules.v4
sudo systemctl enable netfilter-persistent
sudo systemctl status netfilter-persistent
# Listează regulile cu numerotare (util pentru ștergere)
sudo iptables -L INPUT --line-numbers -v -n
# Șterge o regulă după număr (ex. regula 3 din INPUT)
sudo iptables -D INPUT 3
# Inserează o regulă pe o poziție specifică (ex. poziția 1)
sudo iptables -I INPUT 1 -p tcp --dport 8080 -j ACCEPT
# Golește toate regulile (ATENȚIE — te poate bloca!)
sudo iptables -F
# Resetează politicile la ACCEPT înainte de golire
sudo iptables -P INPUT ACCEPT
sudo iptables -P FORWARD ACCEPT
sudo iptables -P OUTPUT ACCEPT
sudo iptables -F
Iată un script complet și ordonat pe care îl poți rula pe un server nou:
#!/bin/bash
# firewall-setup.sh — Script iptables CLIQHOST
# Resetare
iptables -F
iptables -X
iptables -t nat -F
iptables -t nat -X
iptables -t mangle -F
iptables -t mangle -X
# Politici implicite
iptables -P INPUT DROP
iptables -P FORWARD DROP
iptables -P OUTPUT ACCEPT
# Loopback
iptables -A INPUT -i lo -j ACCEPT
# Conexiuni stabilite
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
# Pachete invalide
iptables -A INPUT -m state --state INVALID -j DROP
# SSH cu rate limiting
iptables -A INPUT -p tcp --dport 22 -m state --state NEW \
-m recent --set --name SSH
iptables -A INPUT -p tcp --dport 22 -m state --state NEW \
-m recent --update --seconds 60 --hitcount 5 --name SSH -j DROP
iptables -A INPUT -p tcp --dport 22 -j ACCEPT
# Web
iptables -A INPUT -p tcp --dport 80 -j ACCEPT
iptables -A INPUT -p tcp --dport 443 -j ACCEPT
# ICMP
iptables -A INPUT -p icmp --icmp-type echo-request -j ACCEPT
# Anti-spoofing
iptables -A INPUT -i eth0 -s 10.0.0.0/8 -j DROP
iptables -A INPUT -i eth0 -s 172.16.0.0/12 -j DROP
iptables -A INPUT -i eth0 -s 192.168.0.0/16 -j DROP
# Logging
iptables -A INPUT -m limit --limit 5/min -j LOG \
--log-prefix "[IPTABLES DROP] " --log-level 4
echo "Firewall configurat cu succes!"
Salvează scriptul și execută-l:
chmod +x firewall-setup.sh
sudo ./firewall-setup.sh
sudo netfilter-persistent save
După aplicarea regulilor, testează din exterior:
# Testează conectivitatea SSH
ssh -v utilizator@IP_SERVER
# Verifică porturile deschise cu nmap (de pe o altă mașină)
nmap -sS -p 22,80,443 IP_SERVER
# Verifică regulile active
sudo iptables -L -v -n
Dacă ai configurat și administrare pentru servicii de management server, poți solicita o verificare a securității din exterior.
| Criteriu | iptables | UFW | firewalld |
|---|---|---|---|
| Complexitate | Ridicată | Scăzută | Medie |
| Control granular | Maxim | Limitat | Mediu |
| Ubuntu/Debian | ✅ | ✅ | Opțional |
| CentOS/RHEL | ✅ | Opțional | ✅ |
| Scripturi automate | ✅ | Parțial | ✅ |
Pentru servere de producție complexe (de exemplu un server dedicat Intel cu mai multe servicii), iptables oferă cel mai mare control. UFW este mai potrivit pentru VPS-uri simple.
iptables-persistent și rulează netfilter-persistent save.ip addr și folosește numele corect (ens3, eth0 etc.).-I (insert) în loc de -A (append) pentru reguli prioritare.iptables este un instrument indispensabil pentru orice administrator de server Linux serios. Deși are o curbă de învățare mai abruptă față de UFW, îți oferă controlul complet de care ai nevoie pentru a securiza un VPS Linux sau un server dedicat în fața amenințărilor moderne.
Comandă iptables cu metodă: stabilește politicile, permite explicit serviciile necesare, blochează scanările și atacurile cunoscute, și salvează regulile pentru persistență.
Dacă preferi să te concentrezi pe afacerea ta și să lași securitatea serverului pe mâini de profesioniști, echipa CLIQHOST oferă servicii complete de administrare server — de la configurarea firewall-ului până la monitorizare continuă. Contactează-ne pentru o consultație gratuită.
Real reviews from customers who trust CLIQHOST for performance, reliability and expert technical support.
"We moved our online shop from a foreign host and the difference is night and day — pages load instantly and support replies in minutes, in Romanian."
"Migrated 12 client sites to CLIQHOST. Free migration, zero downtime, and the cPanel setup is exactly what my team needed. Highly recommend."
"Our NVMe VPS handles traffic spikes without a sweat. Full root, local datacenter, and billing in MDL — everything we wanted from a provider."