Translation(s): English - Italiano
ferm è un frontend per iptables, che fornisce un modo di scrivere insiemi di regole gestibili, senza sacrificare la flessibilità. Per usare ferm, è necessario conoscere come scrivere le regole per iptables.
Informazioni generali
La maggior parte degli script per iptables eseguono il comando iptables ripetutamente per inserire varie regole. ferm fornisce un modo per scrivere un unico file di configurazione per il proprio firewall e applicarlo tutto in una volta.
Vantaggi:
Molto più veloce; vedere la relativa sezione del tutorial di iptables e l'opzione "--fast" (modalità predefinita) nella pagina di manuale di ferm(1).
- Configurazione delle regole più piccola, più gestibile e più leggibile: si possono usare regole annidate per ottenere molte regole in un'unica riga di configurazione e ipv4 e ipv6 possono coesistere nello stesso file di configurazione.
- Include un'opzione "--interactive" per evitare di chiudersi fuori quando si amministra da remoto.
Esempio
Ecco uno script di esempio per iniziare.
# regole del firewall di ferm # http://ferm.foo-projects.org # Politiche per le chain domain (ip ip6) { table filter { chain (INPUT FORWARD) policy DROP; chain OUTPUT policy ACCEPT; } } # loopback domain (ip ip6) table filter { chain INPUT interface lo ACCEPT; chain OUTPUT outerface lo ACCEPT; } # ipv6 domain ip table filter chain (INPUT OUTPUT) protocol ipv6 ACCEPT; # icmp (il kernel usa il rate-limiting) domain (ip ip6) table filter chain (INPUT OUTPUT) protocol icmp ACCEPT; # invalidi domain (ip ip6) table filter chain INPUT mod state state INVALID DROP; # connessioni stabilite/correlate domain (ip ip6) table filter chain (INPUT OUTPUT) mod state state (ESTABLISHED RELATED) ACCEPT; # non permette più di 8 tentativi ssh in 5 minuti da una singola fonte IP domain (ip ip6) table filter chain INPUT { protocol tcp dport ssh @subchain { mod recent name SSH { set NOP; update seconds 300 hitcount 8 @subchain { LOG log-prefix "Blocked-ssh: " log-level warning; DROP; } } ACCEPT; } } # Respingere (REJECT) per la chain FORWARD domain (ip ip6) table filter chain FORWARD REJECT; # registrare tutto il resto dell'INPUT domain (ip ip6) table filter chain INPUT { mod limit limit 3/min limit-burst 10 LOG log-prefix "INPUT-rejected: " log-level debug; REJECT; }
Vedere anche
Sito web: http://ferm.foo-projects.org
pacchetto ferm in Debian
Debian e IPv6 di madduck