View Full Version : [IPTABLES] Come si crea un "PROXY" per la posta el
*PC Linux (192.168.0.1) Mandrake 9 con ADSL Ethernet collegato ad Internet
*PC Windows 98 (192.168.0.10)
I computer ed il modem ADSL sono collegati tramite uno switch 5 porte. La rete funziona ed ho già montato Squib su 192.168.0.1 per consentire a 192.168.0.10 di navigare con IE.
Vorrei fare lo stesso con la posta elettronica, ed ho passato la nottata di ieri a studiarmi gli How To di IPTABLES.
Ho provato ad applicare il Masquerading
# Set up IP FORWARDing and Masquerading
iptables --table nat --append POSTROUTING --out-interface ppp0 -j MASQUERADE
iptables --append FORWARD --in-interface eth0 -j ACCEPT - Assuming one NIC to local LAN
echo 1 > /proc/sys/net/ipv4/ip_forward - Enables packet forwarding by kernel
impostando in 192.168.0.10 come Gateway 192.168.0.1.
Ovviamente non funziona nulla.
Purtroppo non conosco bene la teoria: il Masquerading si preoccupa di tenere attiva la connessione o modifica solamente l'IP di sorgente del pacchetto sostituendolo con l'IP dinamico di ppp0?
I pacchetti di ritorno (ACK) vengono smistati automaticamente o devo creare qualche altra regola?
Devo mappare a mano la porta pop3 (110) per ogni PC della rete (in questo caso solo 192.168.0.10) e per ogni account (box.clubnet.tin.it:110, popmail.libero.it:110, ecc.), o c'e' una soluzione più semplice?
ilsensine
13-02-2003, 12:37
Originally posted by "Mic"
iptables --table nat --append POSTROUTING --out-interface ppp0 -j MASQUERADE
Non sono sicuro...provato a mettere al posto di ppp0 il nome di interfaccia del modem ethernet? (credo eth1)
pacchetti di ritorno (ACK) vengono smistati automaticamente o devo creare qualche altra regola?
No, tutto automatico
da ifconfig risulta che il mio IP "pubblico" è legato a ppp0...
eth0 Link encap:Ethernet HWaddr 00:E0:4C:89:94:D6
inet addr:192.168.0.1 Bcast:192.168.0.255 Mask:255.255.255.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:22178 errors:0 dropped:0 overruns:0 frame:0
TX packets:21036 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:100
RX bytes:10361214 (9.8 Mb) TX bytes:4554184 (4.3 Mb)
Interrupt:11 Base address:0x2000
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
UP LOOPBACK RUNNING MTU:16436 Metric:1
RX packets:2389 errors:0 dropped:0 overruns:0 frame:0
TX packets:2389 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:205801 (200.9 Kb) TX bytes:205801 (200.9 Kb)
ppp0 Link encap:Point-to-Point Protocol
inet addr:151.37.96.108 P-t-P:151.5.160.134 Mask:255.255.255.255
UP POINTOPOINT RUNNING NOARP MULTICAST MTU:1492 Metric:1
RX packets:17347 errors:0 dropped:0 overruns:0 frame:0
TX packets:15745 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:3
RX bytes:9516710 (9.0 Mb) TX bytes:3226201 (3.0 Mb)
P.S.: i client devono essere configurati in modo particolare?
Ho trovato questo HOW TO molto interessante...
http://iptables-tutorial.frozentux.net/iptables-tutorial.html#MASQUERADETARGET
Temo che il mio problema sia nell'abilitazione del forwarding nel kernel.... :muro:
Ciao...io non sono certo un esperto...
però anche io ho fatto una rete simile....
con 2 pc linux e uno winxp.
Uno fa da server ed è il pc linux....
grazie al mascherate di NAT sono riuscito a far andare anche gli altri in internet.
Siccome sto sempre imparando ti volevo chiedere:
che cosa è squid?
Io con winxp nonho dovuto fare altro che dargli i DNS e assegnargli il gateway l'IP del pc server.
Per la posta lo stesso....funziona benissimo....anche quella.
La cosa fondamentale...è il NAT masquerate....ed il forward dei pacchetti.
Se vuoi, ti allego i comandi che uso io.
Se ti possono servire dimmelo.
Tiposso fare un'altra domanda stupida? Che cosa serve/è il PROXY?
grazie.
bye by CNC
Ok ci provo, e se dico cavolate insultatemi senza problemi!!
Se è vero che "Ipse dixit" è anche vero che "Ipse" di cazzate ne ha sparate parecchie. :D
Allora... Squid è un server Proxy, che semplicemente scarica su tua richiesta le pagine HTTP da Internet e le spedisce al tuo browser attraverso la LAN. Non si preoccupa di un semplice reindirizzamento, ma apre i pacchetti e ci guarda dentro, cosa che a livello di routing non si fa, perchè in quel caso ci interessano solo le intestazioni dei pacchetti.
Il vantaggio di un server Proxy è che esso tiene in memoria i siti visitati per consentire scaricamenti più rapidi; inoltre l'IP visto dai destinatari dei nostri pacchetti non sarà il tuo, ma quello del Proxy.
Probabilmente ha anche altre funzioni che non conosco.
Nella configurazione di IE basta specificare l'IP e la porta del server ed il gioco è fatto.
Nota: gli ISP con cui ci si abbona ad internet spesso forniscono un loro server Proxy. Nel caso di Libero cliccate qui:
http://internet.libero.it/aiuto/conf_parametri.phtml
Se vuoi, ti allego i comandi che uso io.
Se ti possono servire dimmelo.
Magari!! :)
Ecco i comandi che uso io....
In sintesi alla base c'è:
dato che non hai un rooter (se ho capito bene) e quindi fai come me usando un modem adsl e tutti i pc (compreso il modem) collegati allo switch....
devi dare come gateway al pc che ti farà da SERVER il numero IP del modem.
mentre agli altri PC collegati alla rete dovrai dare come gateway l'IP del PC server.
Questo vale anche per rete windows.
Sul server devi dare:
/sbin/modprobe iptable_nat
/sbin/modprobe ip_conntrack
/sbin/modprobe ip_conntrack_ftp
/sbin/modprobe ip_nat_ftp
/sbin/modprobe ipt_MASQUERADE
/sbin/iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -j MASQUERADE
#con questa riga attivi il NAT ed imposti il mascheramento degli IP dei PC collegati alla rete.
echo "1" > /proc/sys/net/ipv4/ip_forward
#con questa riga ATTIVI il forward....altrimenti anche se dai le opzioni di forwarding non funzionano
/sbin/iptables -A FORWARD -s 192.168.0.0/24 -j ACCEPT
/sbin/iptables -A FORWARD -d 192.168.0.0/24 -j ACCEPT
/sbin/iptables -A FORWARD -j DROP
#con queste righe gli dici a chi mandare i pacchetti mascherati...e se accettarli.
Logicamente tutto questo prevedere una rete con mask: 255.255.255.0
e IP statici sulle schede di rete.... 192.168.0.X di questo tipo.
Così funziona benissimo la rete, la posta...tutto su tute le macchine sia linux che windows....
ricorda di mettere su TUTTI i PC i numeri di DNS.
bye by CNC.
P.S: Sai mica attivare l'uscita audio digitale della sbaudigy con driver ALSA?
Grazie!! Proverò appena posso!! :)
Originally posted by "cnc76"
Ciao...io non sono certo un esperto...
però anche io ho fatto una rete simile....
con 2 pc linux e uno winxp.
Uno fa da server ed è il pc linux....
grazie al mascherate di NAT sono riuscito a far andare anche gli altri in internet.
Siccome sto sempre imparando ti volevo chiedere:
che cosa è squid?
Io con winxp nonho dovuto fare altro che dargli i DNS e assegnargli il gateway l'IP del pc server.
Per la posta lo stesso....funziona benissimo....anche quella.
La cosa fondamentale...è il NAT masquerate....ed il forward dei pacchetti.
Se vuoi, ti allego i comandi che uso io.
Se ti possono servire dimmelo.
Tiposso fare un'altra domanda stupida? Che cosa serve/è il PROXY?
grazie.
bye by CNC
squid è un proxy che si installa in linux ed è molto utile per bloccare tutte le porte che volete per estranei ecc...
Molto utile in reti gorsse dove si vuole limitare anche a fascie orarie la navigazione....provare per credere
Allora... sono riuscito a far funzionare la rete per un po', ma solo per caso!
Esattamente quali IP devo mettere come DNS per i client?
192.168.0.1 (IP del server)?
192.168.0.138 (IP dell'Alcatel Speed Touch Home modificato)?
IP del DNS nei settaggi di Infostrada?
Altro?
P.S: Sai mica attivare l'uscita audio digitale della sbaudigy con driver ALSA?
Purtroppo non lo so. :(
P.S.: purtroppo sono ancora alle prime armi, scusate il disturbo! :muro:
Originally posted by "Mic"
Allora... sono riuscito a far funzionare la rete per un po', ma solo per caso!
Esattamente quali IP devo mettere come DNS per i client?
192.168.0.1 (IP del server)?
192.168.0.138 (IP dell'Alcatel Speed Touch Home modificato)?
IP del DNS nei settaggi di Infostrada?
Altro?
Purtroppo non lo so. :(
P.S.: purtroppo sono ancora alle prime armi, scusate il disturbo! :muro:
Allora...come IP del server io ho letto che sconsigliano di usare 192.168.0.1 cmq, io uso 192.168.0.10
Come gateway per il server, gli devi dare IP del modem......ora non so che IP abbia il tuo modem..... controlla.
Coem DNS metti su tutti i pc...quelli che ti da il tuo provider...e così vai tranquillo.
bye by CNC.
Originally posted by "cnc76"
Allora...come IP del server io ho letto che sconsigliano di usare 192.168.0.1 cmq, io uso 192.168.0.10
Come gateway per il server, gli devi dare IP del modem......ora non so che IP abbia il tuo modem..... controlla.
Coem DNS metti su tutti i pc...quelli che ti da il tuo provider...e così vai tranquillo.
bye by CNC.
esatto
metti il server sempre 192.168.0.1
Perfetto! Ora funziona! Grazie ancora! :D
vBulletin® v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.