_____ _ _____ _____ _____ _____ _____ _ _ _____ _____
| _ ||_|| _ || _ || _ || ___|| _ || \| ||_ _|| ___|
| |_| | _ | |_| || |_| || | | || |__ | |_| || | | | | |__
| ___|| || ___|| ___|| | | || __| | _ || |\ | | | | __|
| | | || | | | | |_| || | | | | || | | | | | | |___
|_| |_||_| |_| |_____||_| |_| |_||_| |_| |_| |_____|
|
| scripta about home |
| Squid e autenticazione su Active Directory 2008.07.24 14:58 |
|
È giunto il momento di rifare il proxy aziendale - ovviamente Squid - e con l'occasione cambio il metodo di autenticazione appoggiandomi al dominio: una password in meno per gli utenti e controllo più centralizzato. Le condizioni al contorno sono sempre quelle: Debian come guest su VMware ESX così aumentiamo la percentuale di virtualizzazione con tutti i pro (ma anche i contro). La macchina deve essere in dominio, e consento inoltre l'accesso al Web solo agli utenti appartenenti al gruppo 'web'. # wbinfo -n web S-1-5-01-0123456789-012345678-01234567-0123 Domain Group (2) # apt-get install apache2-utils squid +--8<--+[ /etc/squid/squid.conf ]+----8<--------8<----------------8<-----------+ #auth_param ntlm program /usr/bin/ntlm_auth --helper-protocol=squid-2.5-ntlmssp #### tutto su UNA RIGA #### auth_param ntlm program /usr/bin/ntlm_auth --helper-protocol=squid-2.5-ntlmssp --require-membership-of=S-1-5-01-0123456789-012345678-01234567-0123 auth_param ntlm children 5 auth_param ntlm keep_alive on auth_param basic program /usr/lib/squid/ncsa_auth /etc/squid/htpasswd auth_param basic children 5 auth_param basic realm Squid proxy-caching web server auth_param basic credentialsttl 2 hours auth_param basic casesensitive off acl password proxy_auth REQUIRED acl free src 192.168.0.1 #acl our_networks src 192.168.0.0/24 172.16.0.0/16 http_access allow free http_access allow password #http_access allow our_networks http_access deny all +----------->8---------------->8-------->8----+[ /etc/squid/squid.conf ]+-->8--+ Consiglio di configurare e provare il proxy senza alcun tipo di autenticazione (via le righe ^auth_param e correlate), quindi aggiungere/togliere a piacimento. Ho anche previsto un'autenticazione basic (auth_param basic) e un computer che può uscire libero (acl free). # htpasswd -c -m /etc/squid/htpasswd user1 # htpasswd -m /etc/squid/htpasswd user2 # chgrp -v proxy /etc/squid/htpasswd # chmod -v 640 /etc/squid/htpasswd # chgrp -v proxy /var/run/samba/winbindd_privileged # /etc/init.d/squid reload Et voila! Ma non posso fare a meno di controllare l'utilizzo di Squid: i log non sono human-friendly, quindi # apt-get install sarg webalizer # cp -v /etc/cron.daily/sarg /etc/cron.hourly/sarg +--8<--+[ /etc/webalizer/squid.conf ]+----8<--------8<----------------8<-------+ LogFile /var/log/squid/access.log LogType squid +------->8---------------->8-------->8----+[ /etc/webalizer/squid.conf ]+-->8--+ +--8<--+[ /etc/cron.hourly/sarg ]+----8<--------8<----------------8<-----------+ /usr/sbin/sarg-reports today +----------->8---------------->8-------->8----+[ /etc/cron.hourly/sarg ]+-->8--+ |
| pippofante.it by Federico Mion |