Firewall Linux cu nftables: reguli și troubleshooting
Un firewall bun nu înseamnă doar să blochezi porturi. Înseamnă să înțelegi fluxul pachetelor, politica implicită și ordinea regulilor, fără să-ți blochezi accidental accesul administrativ la server.
De ce nftables
nftables este framework-ul modern de filtrare a pachetelor în Linux și unifică mai multe capabilități istorice într-o interfață coerentă. Distribuțiile moderne îl folosesc direct sau prin servicii de nivel mai înalt. Comanda principală este nft.
Listează configurația existentă
Înainte de orice modificare rulează nft list ruleset. Nu presupune că serverul pornește de la zero. Poți avea reguli gestionate de distribuție, Docker, un orchestrator sau alte servicii. Salvează configurația curentă înainte de schimbări importante.
Tabele, chain-uri și hook-uri
Regulile nftables sunt organizate în tabele și chain-uri. Chain-urile de bază se pot lega de hook-uri precum input, forward și output. Pentru un server simplu, traficul destinat sistemului este verificat în principal pe traseul input, dar scenariile de routing și containere implică și forward.
Permite SSH înainte de politica drop
Dacă lucrezi remote și vrei o politică implicită de tip drop, asigură mai întâi regula pentru conexiunile deja stabilite și portul de administrare. O ordine greșită poate întrerupe sesiunea SSH. Pentru modificări riscante folosește acces out-of-band sau o metodă de rollback programată.
Verificare și debugging
După aplicarea regulilor, verifică dintr-un alt host porturile necesare și rulează din nou nft list ruleset. Combină cu ss -tulpn: firewall-ul poate permite un port, dar dacă aplicația nu ascultă, conexiunea tot nu va funcționa.
Firewall și aplicații containerizate
Containerele pot modifica traseul pachetelor și regulile de forwarding/NAT. Nu trata firewall-ul hostului și networking-ul Docker ca două lumi independente. Verifică întregul traseu și documentează cine gestionează regulile pentru a evita conflictele.
Întrebări frecvente
nftables este același lucru cu iptables?
Nu exact. nftables este framework-ul modern și are o sintaxă și un model propriu; unele sisteme pot oferi compatibilitate iptables peste backend nftables.
De ce portul nu răspunde chiar dacă este permis în firewall?
Firewall-ul este doar o parte din traseu. Verifică dacă serviciul ascultă pe adresa și portul corect, ruta, NAT-ul și eventual alte filtre din rețea.