Squid3 - Come farlo funzionare a dovere?
-
Salve a tutti!
Ho girato in lungo ed in largo tutto il forum (direi anche il www!) per cercare la soluzione definitiva al problema di squid3 e cioè:NON FUNZIONA IN MODALITà TRASPARENTE! >:(
Dato che il problema è ricorrente e che la soluzione farebbe piacere davvero a molti, vi chiedo cortesemente di raggruppare solo in questo post le vostre esperienze, sperando che, unendo le menti, si possa finamente arrivare ad una soluzione concreta.
Sinceramente, è un pò che ci sto sbattendo il muso e questa è l'ultima chance prima di dare fuoco a tutto…
Da parte mia posso dirvi che:
1. Se non si utilizza squid3, non è possibile fare il Load Balance (che a me serve);
2. Se imposto il proxy manualmente nel browser, tutto funziona correttamente;
3. Non è possibile editare manualmente squid.conf, perchè sembra che psfense lo ricarichi automaticamente al reboot dalle config inserite nel GUI;
4. Non è possibile fare il foward di tutte le chiamate http sulla porta 3128, va in errore;
5. Dalla Shell di pfsense non è possibile inserire manualmente comandi con IPTABLES, tipo:
iptables -t nat -A PREROUTING -i eth1 -s 192.168.1.0/24 -p tcp --dport 80 -j REDIRECT --to-port 3128
6. é possibile girare il traffico ad una seconda squid box, ma non voglio farlo (deve fare tutto PfSense >:()
7. Non è possibile nattare l'interfaccia LAN di pfsense su se stessa alla porta 3128.Offro una birra a chi sa aiutarmi! ;D
-
che tipo di errore ti da quando fai il fowarding??? potrebbe essere che la regola venga scritta male dalla gui di pfsense … gia con il pppoe ho avuto modo di imbattermici.. semplicemente il form non veniva scritto nella stringa di testo della regola..
l'unica soluzione escludendo una seconda macchina a monte che faccia il balancing e' di usare il fowarding!
attendo il tuo post, vediamo se possiamo risolvere il problema!
-
mmm…
devi scusarmi, ma l'errore al punto 4 del primo post non lo da più (non ricordo bene, l'ho visto solo un paio di volte, ma si trattava di un errore di squid, e lo dava nel nel browser nel momento in cui provavo a navigare)... forse avevo sbagliato ad inserire qualche regola...Comunque, ho resettato tutto ed inserito:
->Firewall->NAT->Port Forward
If Proto Ext. port range NAT IP Int. port range Description
LAN TCP 80 (HTTP) IP LAN pfSense 3128 Rule to Squid
(ext.: IP LAN pfSense)ed ho flaggato "Auto-add a firewall rule to permit traffic through this NAT rule"
che ha creato la seguente:Proto Source Port Destination Port Gateway Schedule
TCP * * IP LAN pfSense 3128 * NAT Rule to Squidma funge come prima descritto e cioè solo impostando a mano il proxy nel browser... :'(
Dov'è che sbaglio?!? ???
-
prova a loggare la regola e lancia una sessione http: cosa ti dicono il log? ci arrivi ??
il menagement lato lan ti funziona ancora?
http://forums.freebsd.org/archive/index.php/t-1385.html hai settato la modalita trasparente? (domanda idiota ma necessaria.)
-
Log
Ho cercato in:
Diagnostics: System logs: System - Nulla
Diagnostics: System logs: Firewall - Nulla
Diagnostics: System logs: Portal Auth - (squid[50337]: Squid Parent: child process 50339 started) almeno è partito!
/var/squid/log/access.log
1254907763.510 2178 192.168.1.74 TCP_MISS/200 39323 CONNECT pfsense:443 - DIRECT/192.168.1.254 -
1254907769.525 8070 192.168.1.74 TCP_MISS/200 40272 CONNECT pfsense:443 - DIRECT/192.168.1.254 -
1254907770.526 18846 192.168.1.74 TCP_MISS/200 501323 CONNECT pfsense:443 - DIRECT/192.168.1.254 -
1254907771.527 10076 192.168.1.74 TCP_MISS/200 13351 CONNECT pfsense:443 - DIRECT/192.168.1.254 -
1254908079.560 29523 192.168.1.74 TCP_MISS/200 2123 POST http://forum.pfsense.org/index.php? - DIRECT/69.64.6.21 text/xml
1254908315.286 1419 192.168.1.74 TCP_MISS/200 2362 POST http://forum.pfsense.org/index.php? - DIRECT/69.64.6.21 text/xml
1254908555.804 1669 192.168.1.74 TCP_MISS/200 6068 GET http://www.lagado.com/proxy-test - DIRECT/119.31.230.68 text/html
1254908556.268 449 192.168.1.74 TCP_MISS/304 229 GET http://www.lagado.com/tools/image/lagado-logo.gif - DIRECT/119.31.230.68 -
1254908556.397 578 192.168.1.74 TCP_MISS/304 336 GET http://pagead2.googlesyndication.com/pagead/show_ads.js - DIRECT/74.125.39.164 -
1254908556.494 81 192.168.1.74 TCP_MISS/304 338 GET http://pagead2.googlesyndication.com/pagead/expansion_embed.js - DIRECT/74.125.39.164 -
1254908556.946 432 192.168.1.74 TCP_MISS/304 340 GET http://googleads.g.doubleclick.net/pagead/test_domain.js - DIRECT/209.85.129.155 -
1254908557.206 249 192.168.1.74 TCP_MISS/200 5584 GET http://googleads.g.doubleclick.net/pagead/ads? - DIRECT/209.85.129.155 text/html
1254908619.903 770547 192.168.1.74 TCP_MISS/200 219397 CONNECT pfsense:443 - DIRECT/192.168.1.254 -ma solo se lo imposto manualmente, altrimenti NISBA!
L'errore che mi dava è proprio questo:
ERROR
The requested URL could not be retrieved
While trying to retrieve the URL: /
The following error was encountered:
Invalid URL
Some aspect of the requested URL is incorrect. Possible problems:
Missing or incorrect access protocol (should be `http://'' or similar)
Missing hostname
Illegal double-escape in the URL-Path
Illegal character in hostname; underscores are not allowed
Your cache administrator is webmaster.ma, ripeto, non si è più presentato…
Se per lan management intendi l'accesso al GUI lato LAN, si, tutto funziona regolarmente.
Si anche per il flag "Transparent Mode".
Ecco il mio squid.conf:
Do not edit manually !
http_port 192.168.1.254:3128
http_port 127.0.0.1:80 transparent
icp_port 0
pid_filename /var/run/squid.pid
cache_effective_user proxy
cache_effective_group proxy
error_directory /usr/local/etc/squid/errors/Italian
icon_directory /usr/local/etc/squid/icons
visible_hostname XXX
cache_mgr XXX
access_log /var/squid/log/access.log
cache_log /var/squid/log/cache.log
cache_store_log none
logfile_rotate 7
shutdown_lifetime 3 secondsAllow local network(s) on interface(s)
acl localnet src 192.168.1.0/255.255.255.0
uri_whitespace deny
cache_dir aufs /var/squid/cache 100 16 256
cache_mem 8 MB
maximum_object_size 4 KB
minimum_object_size 0 KB
cache_replacement_policy heap LFUDA
memory_replacement_policy heap GDSF
offline_mode off
dns_children 32
cache_swap_low 90
cache_swap_high 95
acl donotcache dstdomain "/var/squid/acl/donotcache.acl"
cache deny donotcacheNo redirector configured
Setup some default acls
acl localhost src 127.0.0.1/255.255.255.255
acl safeports port 21 70 80 210 280 443 488 563 591 631 777 901 3128 1025-65535
acl sslports port 443 563
acl manager proto cache_object
acl purge method PURGE
acl connect method CONNECT
acl dynamic urlpath_regex cgi-bin ?
acl whitelist dstdom_regex -i "/var/squid/acl/whitelist.acl"
cache deny dynamic
http_access allow manager localhost
http_access deny manager
http_access allow purge localhost
http_access deny purge
http_access deny !safeports
http_access deny CONNECT !sslportsAlways allow localhost connections
http_access allow localhost
quick_abort_min 0 KB
quick_abort_max 0 KB
request_body_max_size 0 KB
reply_body_max_size 0
delay_pools 1
delay_class 1 2
delay_parameters 1 -1/-1 -1/-1
delay_initial_bucket_level 100Throttle extensions matched in the url
acl throttle_exts urlpath_regex -i "/var/squid/acl/throttle_exts.acl"
delay_access 1 allow throttle_exts
delay_access 1 deny allAlways allow access to whitelist domains
http_access allow whitelist
Allow local network(s) on interface(s)
http_access allow localnet
Custom options
redirect_program /usr/local/bin/squidGuard -c /usr/local/etc/squidGuard/squidGuard.conf
redirector_bypass on
redirect_children 3Default block all to be sure
http_access deny all
Per quanto riguarda l'ultimo post del link che mi hai inviato:
bufo333
July 15th, 2009, 03:00
This problem is easy to fix, when you are using ipfw or ipfilter to redirect ports in transparent mode, you get that weird error unless you tell squid you are in transparent mode.
Add the following line to fix the problem.
http_port 3128 transparentVale quanto ho esposto nel mio 1° post al numero 3: non è possibile editare manualmente squid.conf
-
ho fatto un po di test: e' come dici te … inoltre ho scoperto che il proxy ( qualsiasi versione ) non proxa la pppoe subnet!!!!
veramente strano...
proviamo a postare nel forum in inglese specifico????
-
:'( :'( :'(
Ok, proviamo a postare….anche se credo che si debba attendere la nuove release per provare a risolvere il problema, ci sono molti nelle mie condizioni....
Tu che sei più "anziano" del forum, dove credi sia più opportuno? Forse qui?
http://forum.pfsense.org/index.php/board,21.0.html -
si credo sia giusto … un sacco di gente ha lo stesso problema:
io nelle ultime 2 settimane ho avuto 2 macchine che facevano il balancing che letteralmente tiravano giu la rete tutte e due dopo circa 2 terabyte di dati !! ogni tanto una interfaccia crollava e incasinava tutto ... ma tipo che crollavano gli switch!!
sinceramente abbandono il multiwan su pfsense per passare a vyatta:
ora usavo una configurazione con un pfsense a monte con il balancing e pppoe e uno a valle che fa il captive ma non posso permettermi di dare troppe discontinuità al servizio!
adottero una configurazione con vyatta ( che funge a meraviglia come load balancing anche con proxy ed e' per giunta simìle al cisco...) a monte e pfsense come pppoe server e captive portal... dovro tribolare un sacco per passare gli ip pubblici e le vpn!
magari con il 2.0 risolveranno tutto ma ora il multiwan non e' ancora affinato al punto giusto:
problemi con l'ftp insormontabili ( con il pppoe server proprio non va!)
con piu di 2 interfaccie wan le regole crescono esponenzialmente ( io uso 5 wan e il fail over e' un bordello! ) ....
vyatta fa tutto da solo ( failover automatico) il proxy squid 3 e' perfetto e il balancing e' pesato ( round rubin pesato....)