View Full Version : Proxy - Senza intervenire sui Client
cagnaluia
10-12-2008, 09:30
Ciao,
leggevo questi giorni sull installazione e configurazione di macchine linux + proxy (squid e dansguardian nello specifico...).
Ma tutte fanno riferimento al fatto di dover sistemare le configurazioni sul browser per impostare la porta e l'ip di chi fa da proxy.
Come posso fare per omettere queste info, che sia ovviamente tutto di default, senza intervenire in nessun modo sui client.
un DHCP gia mi indicherebbe la macchina linux come GW... fine.
DigitalKiller
10-12-2008, 10:18
Ciao,
leggevo questi giorni sull installazione e configurazione di macchine linux + proxy (squid e dansguardian nello specifico...).
Ma tutte fanno riferimento al fatto di dover sistemare le configurazioni sul browser per impostare la porta e l'ip di chi fa da proxy.
Come posso fare per omettere queste info, che sia ovviamente tutto di default, senza intervenire in nessun modo sui client.
un DHCP gia mi indicherebbe la macchina linux come GW... fine.
Quello che cerchi è un transparent proxy! Si tratta in pratica di un server (con squid, dansguardian, ecc) installato tra router e switch di rete (dev'essere quindi dotato di due schede di rete) e configurato in modo tale che tutte le richieste ricevute sulla porta 80 vengano girate verso la porta di squid (o dansguardian).
Questo in parole molto ma molto semplici:D
cagnaluia
10-12-2008, 13:41
si, penso di si...
ma... l'intervento va fatto sulla config di squid? dove?
ho gia un PC con due schede di rete... ma nn saprei come procedere..
Suppongo sia sufficiente usare iptables con redirect.
DigitalKiller
10-12-2008, 15:21
si, penso di si...
ma... l'intervento va fatto sulla config di squid? dove?
ho gia un PC con due schede di rete... ma nn saprei come procedere..
Le due schede di rete devono essere configurate in modo tale che puntino una verso il router e l'altra verso la lan. Fatto questo, tramite iptables, inoltri tutti i pacchetti ricevuti sulla porta 80 da eth1 (l'interfaccia della lan) verso la porta 3128 (quella di squid) che, a sua volta, li smisterà verso eth0 (l'interfaccia che punta al router).
Nel file di configurazione di squid, devi solo indicare di agire come trasnparent proxy, aggiungendo la direttiva
http_port 3128 transparent
fbcyborg
06-05-2009, 16:44
Salve,
cercando guide in merito al problema che sto per esporvi, ho trovato questo post. Spero che qualcuno possa darmi una mano.
Ho un server Gentoo con squid+dansguardian+iptables, e nonostante ci siano diverse guide in giro ancora non ne sono venuto a capo.
Prima necessità: far funzionare squid in transparent mode. Solo in seguito vorrei che funzionasse anche dansguardian. Vorrei quindi andare per passi.
Premetto che la mia situazione è la seguente:
eth1: indirizzo IP acquisito da router/modem tramite DHCP 192.168.1.104.
Utilizzando questa interfaccia accedo a internet.
eth0: indirizzo IP fisso: 10.0.0.1/8.
Sul server c'è installato un server DHCP che rilascia indirizzi IP sui client che ne fanno richiesta tramite eth0, e qui funziona tutto.
Ora il problema è che anche avendo configurato (evidentemente male) squid, non riesco a navigare dai client del tipo 10.0.0.X.
Vorrei appunto che non fosse necessario configurare l'utilizzo di alcun proxy nei rispettivi browser.
Quello che non capisco è se si debba creare un bridge fra eth0 e eth1, o fare qualcos'altro.
Per quanto riguarda iptables, sono alle prime armi, quindi sto cercando anche qualche direttiva da parte vostra, per favore.
Vi ringrazio in anticipo se potrete darmi una mano.
absinth84
11-05-2009, 18:20
Prova a usare pfsense è una distro firewall basata su freebsd gestibile da interfaccia web con la possibilità di installare squid e squid guardian con la possibilità di abilitare trasparent proxy, molto semplice da configurare e richiede un misero hardware
fbcyborg
11-05-2009, 18:26
Grazie ma non posso!
Altrimenti per firewall avrei messo ipcop.
Comunque dopo vari smanettamenti ho fatto in modo di redirigere tutte le richieste sulla porta 80 del server, verso la 3128. Così la navigazione avviene via proxy in modo trasparente ai client. Però vorrei poter filtrare anche le pagine https, nel senso che se volessi impedire l'accesso ad un determinato sito https, vorrei poterlo fare, tramite squidguard.
Ma siccome non riesco a far andare https dietro squid.. non so come fare, per ora.
cagnaluia
11-05-2009, 18:52
Le due schede di rete devono essere configurate in modo tale che puntino una verso il router e l'altra verso la lan. Fatto questo, tramite iptables, inoltri tutti i pacchetti ricevuti sulla porta 80 da eth1 (l'interfaccia della lan) verso la porta 3128 (quella di squid) che, a sua volta, li smisterà verso eth0 (l'interfaccia che punta al router).
Nel file di configurazione di squid, devi solo indicare di agire come trasnparent proxy, aggiungendo la direttiva
http_port 3128 transparent
domanda: e per tutti gli altri pacchetti? intendo pop3, smtp, telnet, rd, etcetc.. . come imposto una regola: passa tutto il resto dall altra parte? oppure analizza anche il resto (loggalo) e poi fallo passare?
fbcyborg
11-05-2009, 18:57
Io ho risolto così:
abilito il nat tramite iptables e ip_forward lo metto a 1 fisso.
Poi le richieste sulla porta 80 le inoltro alla 3128. Così tutto il traffico http passa sul filtro di squid(Guard).
Quindi di conseguenza funziona anche tutto il resto, pop3, smtp e quant'altro.
Ora vorrei filtrare anche https ma non so come fare... redirigo il traffico sulla 443 verso la 3128, e poi??? So già che https non passa su squid! Anche se ho messo qualche impostazione che in teoria dovrebbe farlo passare (e non cachare).
DigitalKiller
12-05-2009, 08:44
domanda: e per tutti gli altri pacchetti? intendo pop3, smtp, telnet, rd, etcetc.. . come imposto una regola: passa tutto il resto dall altra parte? oppure analizza anche il resto (loggalo) e poi fallo passare?
Squid filtra solo il traffico http; per tutti gli altri protocolli dovrebbero esserci dei proxy specifici. In ufficio, ad esempio, sempre sulla macchina che mi fa da proxy, ho installato p3scan, un proxy pop3 che filtra la posta in ingresso:D
fbcyborg
12-05-2009, 09:09
E a che scopo si filtra la posta in ingresso?
Antispam?
Invece per https? Come fai?
DigitalKiller
12-05-2009, 10:17
E a che scopo si filtra la posta in ingresso?
Antispam?
Invece per https? Come fai?
Si, utilizzo p3scan per passare la posta in ingresso a spamassassin ed eliminare tutto lo spam.
Le connessioni https, invece, al momento non vengono loggate in quanto, finora, non si è presentata l'esigenza
fbcyborg
12-05-2009, 10:20
Il fatto è che vorrei usare squidguard per poter eventualmente bloccare siti https.
Per caso hai una lista di regole iptables da potermi fornire per quanto riguarda i blocchi delle porte più comuni, per impedire chat e quanto possa essere di più inutile in ambito lavorativo?
DigitalKiller
12-05-2009, 10:57
Il fatto è che vorrei usare squidguard per poter eventualmente bloccare siti https.
Per caso hai una lista di regole iptables da potermi fornire per quanto riguarda i blocchi delle porte più comuni, per impedire chat e quanto possa essere di più inutile in ambito lavorativo?
Io ho fatto una cosa simile in alcuni negozi dove ho attivato una linea adsl.
Ho installato squid e configurato in modo tale che blocchi la porta 80 e permetta l'accesso solo a determinati siti memorizzati in un file di testo.
Non ho mai provato, ma credo che una cosa simile si potrebbe fare anche con https.
Poi magari, potresti installare dansguardian per bloccare l'accesso a determinati siti in blacklist e per bloccare il download di determinati file.
Riguardo le chat, ti basta una semplice ricerca su google.;)
fbcyborg
12-05-2009, 11:15
Grazie.
Dansguardian l'ho abbandonato per squidguard.
Con squidGuard ho adottato una politica inversa, invece di definire i siti da poter visitare definisco quelli bloccati, grazie anche a delle blacklist già pronte e scaricabili.
DigitalKiller
12-05-2009, 11:28
Grazie.
Dansguardian l'ho abbandonato per squidguard.
Con squidGuard ho adottato una politica inversa, invece di definire i siti da poter visitare definisco quelli bloccati, grazie anche a delle blacklist già pronte e scaricabili.
Si, naturalmente il tutto dipende dal numero di siti da abilitare/disabilitare. Dato che io dovevo bloccare tutti i siti ho optato per la soluzione opposta alla tua:D
fbcyborg
12-05-2009, 11:57
Secondo te, questa (http://lists.netfilter.org/pipermail/netfilter/2003-June/045102.html) lista di comandi iptables è ancora valida?
DigitalKiller
12-05-2009, 12:54
Secondo te, questa (http://lists.netfilter.org/pipermail/netfilter/2003-June/045102.html) lista di comandi iptables è ancora valida?
Non ne ho idea:( La discussione è datata 2003, mi sembra un po' vecchiotta. Se non l'hai già fatto, prova ad analizzare il traffico generato da msn & co. tramite iptraf
fbcyborg
12-05-2009, 12:54
Il fatto è che non ho un account msn e non ho nemmeno il tempo di provare tutti i programmi di chat della terra! :p
DigitalKiller
12-05-2009, 13:18
Il fatto è che non ho un account msn e non ho nemmeno il tempo di provare tutti i programmi di chat della terra! :p
Non hai emmessenne? :mbe: :confused: E che campi a fare?!
Scherzi a parte:D :sofico:
Per queste cose, purtroppo bisogna perdere molto tempo e, credimi, gli utonti trovano sempre il modo di aggirare le restrizioni imposte
Una soluzione possibile, sarebbe quella di configurare iptables in modo tale da bloccare tutto il traffico in uscita, permettendo solo quello espressamente autorizzato
fbcyborg
12-05-2009, 13:38
Non hai emmessenne? :mbe: :confused: E che campi a fare?! NO!!! Lo odio con tutto me stesso. :)
Scherzi a parte:D :sofico:
Per queste cose, purtroppo bisogna perdere molto tempo e, credimi, gli utonti trovano sempre il modo di aggirare le restrizioni imposte
Una soluzione possibile, sarebbe quella di configurare iptables in modo tale da bloccare tutto il traffico in uscita, permettendo solo quello espressamente autorizzato
Anche questa mi sembra una buona idea, anche se le persone in questione non mi sembra che conoscano il concetto di "porta" (almeno nel campo dell'informatica!!) :oink:
fbcyborg
12-05-2009, 18:26
Ho notato un problema.
Grazie a squidguard riesco ad impedire gli utenti di andare (ad esempio) su www.youtube.it.
Il problema è che se digitano questo URL, ci vanno lo stesso!!!
http://208.65.153.238/ !!
Ho trovato una cosa che dovrebbe impedire la navigazione tramite IP direttamente, ma non funziona!!!
acl numeric_IPs urlpath_regex ^[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+
http_access deny numeric_IPs all
EDIT:
Messo questo e ora va!
acl justip url_regex http://[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+
http_access deny justip
cagnaluia
12-05-2009, 19:41
ho caricato pfsense sulla mia alix 2d3
http://www.pcengines.ch/alix2d3.htm
Lo sto studiando un pò, mi pare abbia funzioni di trasparent proxy..
però funzioni come squidguard.. etc.. mi pare siano disponibili solo per le versione pfsense installate su disco.. e non embedded.
ipcop + copfilter non fa al caso vostro??
fbcyborg
12-05-2009, 20:26
No perché (almeno io) sto configurando un unico server fisico, e non ho a disposizione (e non prevedo di usarlo) un PC per mettere su una distro-firewall.
ma la legge sulla privacy non vieta (chiedo perchè interessa anche a me) di
- poter guardare chi va su quale sito?
- controllare i messaggi che si passano?
e consente di usare risultati statistici anonimi?
Per la serie ti crei un report con le statistiche dei siti più utilizzati (ed eventualmente quanto tempo ci si perde) e confrontarli con black list già pronte e in base a quello scegli se bannare o no (ovviamente dipende dalla politica adottata dalla dirigenza)......
cagnaluia
13-05-2009, 07:21
ma la legge sulla privacy non vieta (chiedo perchè interessa anche a me) di
- poter guardare chi va su quale sito?
- controllare i messaggi che si passano?
e consente di usare risultati statistici anonimi?
Per la serie ti crei un report con le statistiche dei siti più utilizzati (ed eventualmente quanto tempo ci si perde) e confrontarli con black list già pronte e in base a quello scegli se bannare o no (ovviamente dipende dalla politica adottata dalla dirigenza)......
io catalogo tutto con websense...
E' per sicurezza.
Dovesse capitare qualsiasi cosa, ho data, ora, minuto, secondo, quanto tempo, IP di origine, nome utente, e decine di altre informazioni per ogni trasmissione sul web.
Poi che per la privacy non si possa leggere, questa è un altra cosa..
DigitalKiller
13-05-2009, 07:47
io catalogo tutto con websense...
E' per sicurezza.
Dovesse capitare qualsiasi cosa, ho data, ora, minuto, secondo, quanto tempo, IP di origine, nome utente, e decine di altre informazioni per ogni trasmissione sul web.
Poi che per la privacy non si possa leggere, questa è un altra cosa..
Oppure ci si può far firmare dai colleghi una lettera nella quale li si avvisa che la navigazione web è loggata per questioni di sicurezza aziendale. Se qualcuno rifiutasse questa politica, si può impedire che il computer esca su internet:D
cagnaluia
13-05-2009, 09:04
Oppure ci si può far firmare dai colleghi una lettera nella quale li si avvisa che la navigazione web è loggata per questioni di sicurezza aziendale. Se qualcuno rifiutasse questa politica, si può impedire che il computer esca su internet:D
ho tentato di impedire tante cose su internet.. ma, erano più le telefonate, le mail, le skypate, per dire apri questo, apri quest altro... che alla fin fine... loggo tutto, e chiudo solo il porno, i siti malevoli e poco altro di realmente non consono al lavoro di tutti i giorni.
Giornali, forum, sport, socialnetworking e compagnia bella è praticamente tutto aperto, qualcosa sta sotto quota-time, in maniera che, impostati 50 minuti al giorno per sessioni di 4minuti, si possa accedere un pò dove si desidera.
fbcyborg
13-05-2009, 12:02
websense non lo trovo nel mio gestore di pacchetti... non è open source e per Linux?
cagnaluia
13-05-2009, 12:06
websense non lo trovo nel mio gestore di pacchetti... non è open source e per Linux?
no, no..
è commerciale.
fbcyborg
13-05-2009, 12:07
Ah, ecco! :)
E qualche alternativa oss?
cagnaluia
13-05-2009, 13:26
Ah, ecco! :)
E qualche alternativa oss?
boh.. credo si tratti di squidguard, dansguardian etc, le alternative open.
no?
fbcyborg
13-05-2009, 13:46
Sì in effetti nel log di squid, qualche cosa si può vedere.
DigitalKiller
13-05-2009, 15:38
Ah, ecco! :)
E qualche alternativa oss?
Per generare report dai log di squid puoi utilizzare SARG
fbcyborg
13-05-2009, 17:48
Ti ringrazio!
Molto utile.
fbcyborg
18-06-2009, 12:36
Sul mio proxy server squid ho impostato la seguente regola:
acl justip url_regex http://[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+
http_access deny justip
Così i client non possono navigare tramite indirizzo IP.
Il problema è che c'è un utente al quale la navigazione tramite IP dovrei abilitarla.
Qualcuno sa come si fa ad escluderlo da questo blocco?
vBulletin® v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.