PDA

View Full Version : Quale comando iptables tra questi è più sicuro?


Axl_Mas
01-08-2005, 17:33
Meglio aprire la porta 80 cosi:

iptables -A INPUT -i ppp0 -m state --state NEW -p tcp --dport 80 -j ACCEPT

o in modo classico:

iptables -A INPUT -p tcp -m tcp --dport 80 -j ACCEPT
??
Il primo comando specificando che la porta va aperta solo dopo una richiesta del sistema stesso dovrebbe essere più sicura.......
Voi che ne pensate?

_YTS_
01-08-2005, 18:45
la prima è sicuramente scritta meglio, cioe piu dettagliata.
discrimini il pacchetto in base allo stato della connessione, il top sarebbbe aggiungere il flags tipo:

iptables -A INPUT -i ppp0 -m state --state NEW -p tcp --dport 80 --tcp-flags ALL SYN -j ACCEPT

ciao

Axl_Mas
02-08-2005, 18:28
la prima è sicuramente scritta meglio, cioe piu dettagliata.
discrimini il pacchetto in base allo stato della connessione, il top sarebbbe aggiungere il flags tipo:

iptables -A INPUT -i ppp0 -m state --state NEW -p tcp --dport 80 --tcp-flags ALL SYN -j ACCEPT

ciao

Ok grazie!
Ma mi spieghi bene il significato della tua stringa?
Praticamente accetti le nuove connessioni (cioè quelle che iniziano con il syn che instaura la connessione)?

_YTS_
02-08-2005, 18:59
esatto.
accetto le nuove connessioni sulla porta 80 che abbiano il flags syn settato.
per il funzionamento del tree way handshake questo è corretto e ti permette anche di prevenire alcuni tipi di attacchi quali spoofing ecc...

tutto dipende da cosa devi ovviamente fare, ci sono mille estensioni per iptables, io ne uso alcune tuttavia non è l'unica via ad un webserver (immagino) sicuro.

ciao

Axl_Mas
02-08-2005, 19:33
Ok grazie mille!!!
Visto che mi sembri uno tosto ne approfitto per farti un altra domanda:
Per far funzionare amule sono costretto a tenere aperte queste porte:
iptables -A INPUT -i ppp0 -m state --state NEW -p tcp --dport 4662 --tcp-flags ALL SYN -j ACCEPT
iptables -A INPUT -i ppp0 -m state --state NEW -p tcp --dport 4672 --tcp-flags ALL SYN -j ACCEPT
iptables -A INPUT -i ppp0 -m state --state NEW -p tcp --dport 4665 --tcp-flags ALL SYN -j ACCEPT
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A OUTPUT -p tcp -m tcp --dport 4661 -j ACCEPT
iptables -A OUTPUT -p udp -m udp --sport 4672 -j ACCEPT
iptables -A OUTPUT -p tcp -m tcp --sport 4662 -j ACCEPT
iptables -A OUTPUT -p udp -m udp --sport 4662 -j ACCEPT
iptables -A OUTPUT -p udp -m udp --sport 4665 -j ACCEPT

I test online quando testo la porta 4662 me la danno o chiusa se amule non è in funzione o aperta se amule è attivo, tutte le altre porte (4661,4672,4665) appaiono sempre come firewalled....

Esiste un modo per far funzionare amule senza che chiunque possa accedere alla porta 4662?

Ciao e grazie ancora!

_YTS_
02-08-2005, 21:24
bhe vedo che usi una politica restrittiva anche in uscita dalla tua macchina, il che è bene.

una porta in ascolto aperta a tutti fa ben poco ai fini della sicurezza del sistema.
ora dato che amule è un programma di sharing le tue regole vanno bene, se vuoi fare delle finezze, metti dei limiti al numero di connessioni, qualche regola sullo spoofing dei pacchetti, e al massimo filtra alcune classi della rete e l established all'inizio della catena di input.

puoi anche benissimo cambiare la porta che usa amule, io ho messo la 10000 per esempio..... e non usare l'udp

vedi tu, ciao