xServere.NET · Support en ligne (+40) 725.903.503 [email protected]

xServere Insights

Firewall

nftables pe Linux: exemplu de politică minimă pentru un VPS web

nftables pe Linux: exemplu de politică minimă pentru un VPS web
All articles

nftables permite definirea filtrării IPv4 și IPv6 într-o politică explicită. Exemplul se adaptează unui server web simplu, nu oricărei infrastructuri.

Updated 27.10.2026

nftables este un cadru de filtrare din Linux, nu o aplicație care promite protecție DDoS completă. Poți defini politici clare pentru conexiunile acceptate de un VPS. Rezultatul depinde însă de servicii, rutare și ceilalți administratori ai regulilor.

1. Definește domeniul configurației

Exemplul următor este pentru un VPS web cu adresare pregătită, fără rutare pentru alte sisteme și fără alte instrumente care administrează firewall-ul. Nu îl aplica direct peste CSF, firewalld, UFW, Docker sau un hipervizor. Dacă platforma folosește asemenea componente, proiectează integrarea separat.

Inventariază porturile și accesul de recuperare. Confirmă dacă ai nevoie de DHCP, monitorizare din exterior, rețele private ori alte servicii. Aceste cerințe nu sunt acoperite automat de exemplul minimal.

2. Inspectează și salvează situația existentă

sudo nft list ruleset
sudo nft list ruleset > nftables-inainte.txt

Păstrează copia într-un loc administrativ protejat. Ea este o evidență, nu o garanție că restaurarea va fi potrivită după orice modificare. Verifică și mecanismul distribuției pentru încărcarea regulilor la pornire.

3. Pregătește un fișier pentru un sistem de test

Salvează următorul exemplu în xservere-web.nft. Înlocuiește adresa administrativă demonstrativă și portul SSH înainte de validare:

table inet xservere_host {
    chain input {
        type filter hook input priority 0; policy drop;
        iifname "lo" accept
        ct state invalid drop
        ct state established,related accept
        meta l4proto { icmp, ipv6-icmp } accept
        ip saddr 203.0.113.10 tcp dport 22 ct state new accept
        tcp dport { 80, 443 } ct state new accept
    }
    chain forward {
        type filter hook forward priority 0; policy drop;
    }
    chain output {
        type filter hook output priority 0; policy accept;
    }
}

Familia inet permite reguli comune IPv4 și IPv6. Accesul SSH din exemplu este permis numai de la IPv4-ul indicat; dacă administrezi prin IPv6, ai nevoie de o regulă explicită potrivită. Politica permite ICMP și ICMPv6, utile funcționării rețelei, fără să propună o filtrare completă a acestor protocoale.

4. Validează fără aplicare

sudo nft -c -f xservere-web.nft

Verificarea sintaxei nu confirmă faptul că IP-ul administratorului este corect sau că toate serviciile vor rămâne accesibile. Citește fiecare regulă și pregătește revenirea din consolă. Tabela demonstrativă trebuie să fie absentă înainte de prima încărcare; repetarea necontrolată a fișierului nu este o procedură de actualizare idempotentă.

5. Aplică numai într-o intervenție controlată

sudo nft -f xservere-web.nft
sudo nft list table inet xservere_host

Testează imediat o conexiune SSH nouă, HTTP, HTTPS și accesul IPv6 relevant. Pentru a elimina exclusiv tabela demonstrativă în cadrul revenirii, comanda este:

sudo nft delete table inet xservere_host

Nu folosi flush ruleset ca metodă generică de depanare. Poate elimina politici ale altor componente. Persistența la repornire se configurează numai după verificare, prin mecanismul distribuției.

Unde se încadrează în protecția DDoS

Aceasta este o politică de expunere minimă, nu un set universal anti-flood. Pragurile de pachete sau conexiuni cer măsurare și testare. Pentru un atac care umple legătura, discută filtrarea din rețea cu XSERVERE; pentru cereri HTTP costisitoare, adaugă control la nivelul proxy-ului și aplicației.

Surse

  • Netfilter — manual nft — https://netfilter.org/projects/nftables/manpage.html

Ți-a fost util acest articol?

Share X LinkedIn Facebook