View Full Version : [HELP] Impostare il Firewall x Ftp Attivo
Qlc di voi sa quali sono le varie regole di iptables e tutto quello che necessita per far andare un Server Ftp in modalità ATTIVA dietro ad 1 firewall ?
TNK
Nessuno che ha spataccato col FTP ?
:(
Qua spiega tutto
http://slacksite.com/other/ftp.html
Per modalita` attiva basta aprire la 21 e la 20.
Se fai filtraggio anche sul traffico uscente invece, va considerata la 20 che deve cominciare connessioni verso porte >1024 dei client.
Posso postare le rules che uso io, in questo caso non ho filtraggio sull'uscita quindi mi preoccupo solo di aprire per le connessioni in arrivo, e il server ftp e` sulla stessa macchina del fw (non ho capito se 'dietro' intendi questo o proprio un'altra macchina, nel caso vedi sotto)
iptables -A INPUT -i ppp0 -p tcp --syn --dport 21 \
-m state --state NEW -j LOG --log-level info --log-prefix "**FTP from ppp0**"
iptables -A INPUT -i ppp0 -p tcp -m multiport --dport 20,21 -j ACCEPT
Se l'ftp e` proprio un'altra macchina in una LAN e non la stessa, la configurazione e` simile ma invece che aprire le porte sul pc firewall vanno redirezionate.
iptables -t nat -A PREROUTING -i ppp0 -p tcp --dport 21 \
-j DNAT --to-destination 192.168.1.3:21
iptables -t nat -A PREROUTING -i ppp0 -p tcp --dport 20 \
-j DNAT --to-destination 192.168.1.3:20
penso si possa fare anche multiport come nel caso precedente ma con il DNAT non ho mai provato se funzia
E poi c'e` da far accedere il server a internet x le risposte 'attive', quindi una cosa del genere:
echo 1 > /proc/sys/net/ipv4/ip_forward
iptables -t nat -A POSTROUTING -s 192.168.1.3 -o ppp0 -j MASQUERADE
per far andare anche la modalita` passiva sostanzialmente c'e` da aprire un altro range di porte. Secondo il protocollo base uno dovrebbe aprirle tutte da 1024 in avanti, ma i server furbi dovrebbero permettere di settarle, ad es su ProFTPd c'e` la direttiva PassivePorts.
Una configurazione con anche le passive ma col server in una macchina separata non ho mai provato cmq quindi non escludo che possa esserci qualche intoppo.
Originariamente inviato da Pardo
Qua spiega tutto
http://slacksite.com/other/ftp.html
Per modalita` attiva basta aprire la 21 e la 20.
Se fai filtraggio anche sul traffico uscente invece, va considerata la 20 che deve cominciare connessioni verso porte >1024 dei client.
Posso postare le rules che uso io, in questo caso non ho filtraggio sull'uscita quindi mi preoccupo solo di aprire per le connessioni in arrivo, e il server ftp e` sulla stessa macchina del fw (non ho capito se 'dietro' intendi questo o proprio un'altra macchina, nel caso vedi sotto)
iptables -A INPUT -i ppp0 -p tcp --syn --dport 21 \
-m state --state NEW -j LOG --log-level info --log-prefix "**FTP from ppp0**"
iptables -A INPUT -i ppp0 -p tcp -m multiport --dport 20,21 -j ACCEPT
Bene bene...vedo ke ho trovato 1 afferrato sulla materia.... ^_^
Prima d tutto t confermo che il mio Ftp sta sulla stessa macchina del firewall coś come tutti gli altri servizi (ho un server linux che fa da tutto....)...
Come policy di default BLOCCO tutto quindi anche l'output...
Inoltre volevo farti 1 paio di domandine...
1) Come mai non hai usato le stateful inspection anche per le regole di ACCEPT relativamente alle porte 20 e 21 ?
2) L'uscita dalla porta 20 a seguito della avvenuta connessione dovrebbe avere lo stato ESTABLISHED o RELATED secondo te ?
3) Cosa fa il comando "-m multiport" ?
4) Sapresti impostare le regole in input&output anke in passivo ?
5) Per far andare la modalità attiva hai attivato moduli particolari quali ip_conntrack_ftp ecc ecc ?
TNK
Originariamente inviato da The X
Bene bene...vedo ke ho trovato 1 afferrato sulla materia.... ^_^
Prima d tutto t confermo che il mio Ftp sta sulla stessa macchina del firewall coś come tutti gli altri servizi (ho un server linux che fa da tutto....)...
Come policy di default BLOCCO tutto quindi anche l'output...
1) Come mai non hai usato le stateful inspection anche per le regole di ACCEPT relativamente alle porte 20 e 21 ?
Mmm, direi solo perche` quel pezzo di fw era nato senza state e li ho aggiunti dopo qua e la` un po' a cazzo. Comunque con `new,establiished` che ci ho messo ora sembra fungere bene, se si collega persino IE dev'essere corretto LOL.
2) L'uscita dalla porta 20 a seguito della avvenuta connessione dovrebbe avere lo stato ESTABLISHED o RELATED secondo te ?
Non ho mai razzolato con l'output ma a naso penso vadano messi entrambi perche` se established fa match su pacchetti di connessioni gia` cominciate, il primo pacco syn non passa. Ma prova anche new se con related non funge...
3) Cosa fa il comando "-m multiport" ?
Mmh in quello che ho incollato e` rimasto li` da vecchie modifiche. E` per mettere un elenco di porte che non e` un range, ma in quel caso li` e` uguale a fare '--dport 20:21' da solo.
4) Sapresti impostare le regole in input&output anke in passivo ?
da me ho questa
iptables -A INPUT -i ppp0 -p tcp --dport 60000:60100 \
-m state --state RELATED,ESTABLISHED -j ACCEPT # PASV
Pure qua lo state l'ho aggiunto ora, pare fungere.
In out non c'e` nulla...
Se devi mettere un server ftp che si aspetta per forza una porta qualunque, anche 1025:65535 puo` andare bene, basta avere fede che lo state funzioni correttamente...
5) Per far andare la modalità attiva hai attivato moduli particolari quali ip_conntrack_ftp ecc ecc ?
Si se li trovi modulari bisogna che li addi manualmente magari con un modprobe all'inizio dello script con le rules.
Probabile che serva per avere i match su related per la 20 in out e/o per le passive in input.
Bye
Originariamente inviato da Pardo
Si se li trovi modulari bisogna che li addi manualmente magari con un modprobe all'inizio dello script con le rules.
Sai per caso quali sono TUTTI i moduli necessari per questa situazione ?
TNK
questi
ip_tables
iptable_filter
ipt_state
ip_conntrack
ip_conntrack_ftp
( ipt_LOG e ipt_multiport se usati )
gurutech
15-02-2004, 22:14
ciao, io di solito per l'FTP install frox (frox.sourceforge.net), lo setto sulla porta 3129 (tanto per fare compagnia a squid) e lo metto in modalità trasparente con le seguenti recole di iptables. In più attivo in frox la regola APConv (Active to Passive Conversion)
#impostazioni per proxy FTP
iptables -A INPUT -p tcp -m state --dport 40000:49999 --state RELATED,ESTABLISHED -j ACCEPT
iptables -A OUTPUT -p tcp -m state --sport 40000:49999 --state NEW,RELATED,ESTABLISHED -j ACCEPT
iptables -t nat -A PREROUTING --src $LAN.$PVTIP -j ACCEPT
iptables -t nat -A PREROUTING -p tcp --src $LAN.0/24 --dport 21 -j REDIRECT --to 3129
vBulletin® v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.