Come configurare iptables per le porte di apertura obbligatorie?

3

Sulla mia macchina ci sono servizi web a cui è possibile accedere da qualsiasi PC connesso allo stesso segmento di rete (WiFi ad esempio). Voglio usare IPtables sulla macchina per impedire l'accesso a qualsiasi servizio Web da parte degli host su Internet.

  • Quali regole devo configurare con IPtables?

  • Come posso proteggere una porta sempre aperta?

posta sophist 04.03.2013 - 17:34
fonte

2 risposte

3
  1. Imposta la politica predefinita per negare tutto. ( iptables -P INPUT DENY )
  2. Consenti ICMP
  3. Aggiungi i set di regole minimi richiesti per i servizi di cui hai bisogno.

Se disponi di porte utilizzate solo da macchine locali, imposta le regole di autorizzazione solo per quella combinazione di porte e intervallo IP.

iptables -A INPUT -p tcp --dport 80 -s 192.168.1.0/24 -j ACCEPT

Anche il traffico in uscita ha bisogno di regole (consentire le query DNS, consentire ai servizi di rispondere alle connessioni, ecc.). L'utilizzo di regole correlate / stabilite può aiutare con questo. Anche tra i firewall altrimenti bloccati, è comune tutto il traffico in uscita per semplicità.

Se hai tempo, un caso ideale, anche se laborioso, sarebbe usare SELinux per limitare ulteriormente le cose, consentendo solo alle librerie del resolver DNS di interrogare DNS, ecc.

Come per "proteggere una porta aperta" che scende alla configurazione del software ascoltandolo correttamente e assicurando che vengano affrontati i problemi di sicurezza al suo interno.

    
risposta data 04.03.2013 - 18:03
fonte
1

iptables è adatto a questo, ma ci sono un paio di approcci che vorrei prendere per primi;

  1. Interfaccia di ascolto; comunica ai tuoi servizi web di ascoltare solo sul tuo ip locale. Tipicamente sono impostati per ascoltare tutte le interfacce ( 0.0.0.0 o semplicemente * ). Invece dovresti impostarlo su 192.168.0.88 o simile.
  2. Configurazione del servizio Web; puoi dire al servizio web stesso di consentire solo determinati IP di origine. Questo è un po 'meno sicuro degli altri metodi, poiché la connessione è ancora stabilita, quindi rilasciata dal server web. Tuttavia è un metodo facile e veloce e perfettamente soddisfacente per la maggior parte degli scenari. In Apache, questo sarebbe con la direttiva Allow From . Altri demoni web hanno altri meccanismi di configurazione.

Infine, se vuoi usare iptables cerchi una coppia di regole che assomigli;

iptables -A INPUT -p tcp --dport 80 --source 192.168.0.0/24 -j ACCEPT
iptables -A INPUT -p tcp --dport 80 -j DROP
    
risposta data 04.03.2013 - 17:58
fonte

Leggi altre domande sui tag