Visualizzazione dei risultati da 1 a 7 su 7
  1. #1

    Regola Iptables per forwardare accesso internet ad un client?

    La mia situazione è questa:
    Aula scolastica con un server (ubuntu server 12.04) e 10 clients (ip fissi).
    Il server ha due schede di rete dove una (la eth0) è collegata ad un router adsl per l'accesso internet, con ip 94.x.x.185 e gateway 94.x.x.181, mentre l'altra scheda è cablata ad un hub switch che collega i vari clients, con ip 192.x.x.33.
    I clients accedono ad internet tramite proxyserver squid3 del server e non hanno gateway configurato (quindi accesso ad internet solo tramite porta 3128 del proxy).
    Quello che cerco di fare è riuscire a forwardare la connessione diretta ad internet del server ad uno specifico client tramite apposita regola su Iptables.
    Facendo ricerche ho trovato questo:

    http://forum.html.it/forum/showthrea...readid=1398343

    che però sembra essere dedicato ad una sola porta (io volevo far passare tutto internet); non l'ho comunque provata. Ho invece provato un'altra guida che pero' non mi ha funzionato:

    http://www.linuxguide.it/linux/tutor...te-remota.html

    Non mi è stata chiara la parte:
    (assicuriamoci prima che sia in grado di riconoscere la nostra rete di provenienza "10.10.20.0", altrimenti il pacchetto non ritornerà indietro)
    poiché non è indicato come fare, ed infatti non ha funzionato.
    Sapete suggerirmi una regola per iptables da applicare al server in modo da condividere internet da eth0 solamente ad uno specifico client collegato ad eth1?
    Grazie in anticipo.

  2. #2
    Guest
    Registrato dal
    Jun 2012
    residenza
    Espoo, Finland
    Messaggi
    286
    Assicurati che il forwarding sia attivato: echo 1 > /proc/sys/net/ipv4/ip_forward

    Poi forse qualcosa del genere per fare forwarding del traffico da eth0 a eth1 - aggiungi l'ip del client se non vuoi che tutti i clients siano collegati ad internet direttamente

    iptables -t nat -A POSTROUTING -o eth1 -j MASQUERADE
    iptables -A FORWARD -i eth1 -o eth0 -m state --state RELATED,ESTABLISHED -j ACCEPT
    iptables -A FORWARD -i eth0 -o eth1 -j ACCEPT

    Ti avviso, e' stata una giornata lunga

  3. #3
    Purtroppo non mi funziona, ho fatto una prima prova abilitando tutti e poi impostando un client con gateway l'ip del server, ma niente...
    non va.

  4. #4
    Ho pensato di poter risolvere anche così:

    Esiste una regola ACL per Squid3 dove, specificando l'IP della macchina da non filtrare, questa venga abilitata al traffico diretto della rete internet?

  5. #5
    Utente di HTML.it L'avatar di pilovis
    Registrato dal
    Mar 2001
    Messaggi
    3,273
    io per una scuola molto grossa, dove i ragazzi sono molto smaliziati e buoni hackers , ho proceduto nel seguente modo:

    Il server linux gateway prende dal router gli indirizzi IP pubblici (5), ne smista 4 verso i server interni (posta, webserver, remote desktop, ecc.) e uno lo usa per la navigazione della scuola facendo un NAT verso la rete locale.
    Questo gateway fa anche da firewall (IPTABLES) e da proxy trasparente (Squid), i logs del proxy vengono analizzati con SARG.

    Innanzitutto ho creato tre classi di utenti: alunni/visitatori, insegnanti e segreteria/direzione.

    - Gli alunni/visitatori hanno la navigazione limitata e possibile solo in orario di scuola (no peer2peer, no SMTP/POP/IMAP/FTP/SSH, no facebook/twitter, no IM, Skype o chat, no video, audio musicali o download di files, no siti con rated per adulti, ecc.)
    - Gli insegnanti hanno la navigazione in parte limitata e possibile solo in orario di scuola.
    - La segreteria/Direzione non ha nessuna limitazione nella navigazione.

    Le regole di navigazione sono dettate da ACL settate su Squid e da regole Iptables sul server gateway/firewall.

    C'e' poi un server DHCP che di default assegna indirizzi IP dinamici in un range predefinito che corrisponde su Squid alla ACL degli alunni/visitatori.
    Quindi i PC delle sale computers, oppure i PC portatili che si collegano in WiFi ottengono sempre un IP locale dinamico nella classe "alunni/visitatori".

    Gli insegnanti e la segreteria/direzione ottengono invece dal server DHCP un indirizzo IP statico, per far questo il server DHCP riconosce il MAC address dei loro PC (preventivamente inserito in un database dall'amministratore della rete) e divide quindi gli IP statici assegnati in due classi (professori o direzione) in modo che ognuno abbia la sua regola ACL.

    Esempio:

    da 10.0.0.10 a 10.0.1.250 range alunni/visitatori (nessuna autenticazione necessaria)
    da 10.2.0.10 a 10.2.0.100 range professori (con autenticazione automatica tramite MAC Address scheda di rete)
    da 10.3.0.10. a 10.3.0.50 range segreteria/direzione (con autenticazione automatica tramite MAC Address scheda di rete)

    netmask per gli alunni 255.255.0.0
    netmask per professiori e direzione 255.0.0.0

    Gli alunni/visitatori hanno una netmask piu' ristretta in modo da non poter vedere o sniffare il traffico dei PC dei professori e della direzione.

    Ovviamente i ranges indicati qui sopra sono solo di esempio.
    Ultima modifica di pilovis; 24-10-2013 a 16:15
    Progettista elettronico, appassionato di informatica dal 1982, sistemista Linux dal 2002, sono consulente tecnico del Giudice per le indagini preliminari, valuto richieste di consulenza, in ambito Voip/Telefonia anche con grado di sicurezza militare.

  6. #6
    Utente di HTML.it L'avatar di pilovis
    Registrato dal
    Mar 2001
    Messaggi
    3,273
    Se poi si vuole esagerare, si possono creare delle interfacce virtuali sulla scheda di rete del gateway/firewall che da sulla LAN, in modo da gestire tre reti sepate su classi totalmente diverse, es: 10.0.0.0, 192.168.0.0, 172.16.0.0, con tre gateways virtuali e tra loro indipendenti.
    Il server DHCP decide sempre a quale rete appartiene ogni PC, le due reti professori e direzione accettano solo i PC autorizzati con autenticazione tramite mac address, la rete limitata degli alunni viene assegnata per tutti gli altri ed e' pubblica e accessibile da chiunque si colleghi in wifi alla rete della scuola.

    Nota: il proxy e' sempre meglio sia trasparente (porta 80) cosi' non si obbliga chi si connette alla rete di dover settare il browswer per l'utilizzo di un proxy, in questo modo chiunque arriva e collega un PC, via cavo di rete o tramite WiFi, e' subito connesso senza necessita' di fare settaggi.
    Ultima modifica di pilovis; 24-10-2013 a 17:04
    Progettista elettronico, appassionato di informatica dal 1982, sistemista Linux dal 2002, sono consulente tecnico del Giudice per le indagini preliminari, valuto richieste di consulenza, in ambito Voip/Telefonia anche con grado di sicurezza militare.

  7. #7
    Eccomi qua, dopo vari impegni tra orientamento scolastico (mostre e relativi preparativi) ed ampliamento rete (ora sono cablati due laboratori) torno sul problema, sperando di riuscire a configurare il tutto nel miglior modo possibile.
    Allora: la configurazione che proponi è interessante, purtroppo attualmente non ho le conoscenze tecniche per riuscire ad attuare il tutto.
    Ho installato nel server Dansguardian (a valle di Squid) per un miglior filtraggio di siti dannosi.
    Non posso quindi fornire servizio squid trasparente (in quanto il proxy è accessibile da Dansgurdian; si può mettere trasparente anche quest'ultimo?).

    Paragonando con la tua soluzione:
    Il server linux gateway prende dal router gli indirizzi IP pubblici (5), ne smista 4 verso i server interni (posta, webserver, remote desktop, ecc.) e uno lo usa per la navigazione della scuola facendo un NAT verso la rete locale.
    Questo gateway fa anche da firewall (IPTABLES) e da proxy trasparente (Squid), i logs del proxy vengono analizzati con SARG.
    Ho un unico indirizzo ip pubblico (94.x.x.185) e quindi devo gestire tutto da unico server; il mio intento era quello di dare accesso diretto ad un pc fisso (da usare come controllo posta e manutenzione) quindi dargli anche un gateway, mentre a tutti gli altri dare accesso filtrato (con alcuni portatili da sbloccare in caso di convegni o lezione in classe).

    Innanzitutto ho creato tre classi di utenti: alunni/visitatori, insegnanti e segreteria/direzione.
    - Gli alunni/visitatori hanno la navigazione limitata e possibile solo in orario di scuola (no peer2peer, no SMTP/POP/IMAP/FTP/SSH, no facebook/twitter, no IM, Skype o chat, no video, audio musicali o download di files, no siti con rated per adulti, ecc.)
    - Gli insegnanti hanno la navigazione in parte limitata e possibile solo in orario di scuola.
    - La segreteria/Direzione non ha nessuna limitazione nella navigazione.
    Nel mio caso gli alunni non devono usare la wifi (solo i docenti, ma filtrati) e la segreteria non c'e' (siamo sede decentrata), quindi i privilegi di segreteria li darei al pc fisso di manutenzione.
    Le regole di navigazione sono dettate da ACL settate su Squid e da regole Iptables sul server gateway/firewall.
    Non ho idea delle regole via iptables-squid per bloccare tutto quello che hai indicato, attualmente riesco a filtrare solo per contenuto di parole (dansg) e per tipo di file (estensione: sia da squid che dansg), oltre ad alcuni siti in blacklist indicati da un file testo locale.
    C'e' poi un server DHCP che di default assegna indirizzi IP dinamici in un range predefinito che corrisponde su Squid alla ACL degli alunni/visitatori.
    Ho già impostato nel server il servizio dhcp che assegna gli ip ai portatili dei docenti collegati via wireless in base ai mac address (prima erano manuali).
    Quindi i PC delle sale computers, oppure i PC portatili che si collegano in WiFi ottengono sempre un IP locale dinamico nella classe "alunni/visitatori".
    Per i pc fissi dei lab ho assegnato manualmente un ip fisso in quanto, se qualche ragazzo fa uno sgarro da una certa macchina, sapendo data-ora analizzando i log posso risalire alla macchina ed al laboratorio e quindi alla classe che era presente.
    Gli insegnanti e la segreteria/direzione ottengono invece dal server DHCP un indirizzo IP statico, per far questo il server DHCP riconosce il MAC address dei loro PC (preventivamente inserito in un database dall'amministratore della rete) e divide quindi gli IP statici assegnati in due classi (professori o direzione) in modo che ognuno abbia la sua regola ACL.
    Questo l'ho fatto, solo per gli insegnanti.
    netmask per gli alunni 255.255.0.0
    netmask per professiori e direzione 255.0.0.0
    Gli alunni/visitatori hanno una netmask piu' ristretta in modo da non poter vedere o sniffare il traffico dei PC dei professori e della direzione.
    Interessante, questo non lo sapevo.
    Se poi si vuole esagerare, si possono creare delle interfacce virtuali sulla scheda di rete del gateway/firewall che da sulla LAN, in modo da gestire tre reti sepate su classi totalmente diverse, es: 10.0.0.0, 192.168.0.0, 172.16.0.0, con tre gateways virtuali e tra loro indipendenti.
    Qui per me è fantascienza... :-)

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.