Installation de SQUID sur Centos
Version de l’OS: 6.8 (minimal version)
Version de SQUID: 3 4
Pré-requis
Voir l’article Préparation d’une machine Centos 6.x
Installation des paquets suivants :
1 |
$ sudo yum install bind-utils ntp vim |
Synchronisation du ntp
Commenter les serveurs pools par défaut
1 |
$ sudo vim /etc/ntp.conf |
1 2 3 4 |
#server 0.centos.pool.ntp.org iburst #server 1.centos.pool.ntp.org iburst #server 2.centos.pool.ntp.org iburst #server 3.centos.pool.ntp.org iburst |
Ajouter notre serveur de temps avec la commande « echo » puis on implémente le fichier avec « >> »
1 |
$ sudo echo "server NOMouADRESSEIPduSERVEURAD" >> /etc/ntp.conf |
On synchronise
1 |
$ sudo ntpdate NOMouADRESSEIPduSERVEURAD |
Puis on démarre le service et on le met en automatique.
1 |
$ sudo service ntpd start && chkconfig ntpd on |
Installation du paquet Squid et des pré-requis.
1 |
$ sudo yum install krb5-workstation samba-common <del>samba-winbind</del> <del>authconfig</del> squid |
Connexion à l’AD, attention sensible à la case. Bien respecter les majuscules.
1 |
$ sudo ADSERVER=nomducontrolleur.<b>DOMAINE</b>.tld |
1 |
$ sudo DOMAIN=<b>DOMAINE</b>.tld |
1 |
$ sudo WORKGROUP=<b>DOMAINE</b> |
1 |
$ sudo authconfig --enableshadow --enablemd5 --passalgo=md5 --krb5kdc=$ADSERVER --krb5realm=$DOMAIN --smbservers=$ADSERVER --smbworkgroup=$WORKGROUP --enablewinbind --enablewinbindauth --smbsecurity=ads --smbrealm=$DOMAIN --smbidmapuid="16777216-33554431" --smbidmapgid="16777216-33554431" --winbindseparator="+" --winbindtemplateshell="/bin/false" --enablewinbindusedefaultdomain --disablewinbindoffline --winbindjoin=Administrator --disablewins --disablecache --enablelocauthorize --updateall |
1 |
$ sudo service winbind restart && chkconfig winbind on |
Donner des autorisations a squid pour utiliser Winbind
1 |
$ sudo usermod -G wbpriv squid |
Puis interroger le serveur en utilisant les commandes suivantes, il devra renvoyer les utilisateurs et les groupes
1 |
$ sudo wbinfo -u |
1 |
$ sudo wbinfo -g |
Configuration du Squid
éditer le fichier /etc/squid/squid.conf et commenter http_access allow localnet
Puis rajouter les lignes ci dessous
1 2 3 4 5 6 7 8 9 |
acl whitelist dstdom_regex -i "/etc/squid/whitelist" http_access allow whitelist auth_param ntlm program /usr/bin/ntlm_auth --helper-protocol=squid-2.5-ntlmssp auth_param ntlm children 5 auth_param ntlm keep_alive on acl our_networks src 192.168.0.0/16 acl ntlm proxy_auth REQUIRED http_access allow our_networks ntlm authenticate_ip_ttl 900 seconds |
Puis il reste a créer le fichier de liste blanche, pour inclure les serveurs délivrant des mise a jour comme Microsoft, antivirus, firewall … ceci n’auront pas besoin d’authentification pour etre consulter
1 |
$ sudo vim /etc/squid/whitelist |
et ajouter
1 2 |
\.microsoft\.com ^microsoft\.com |
Il n’y a plus qu’a démarrer le service Squid et le mettre en automatique
1 |
$ sudo chkconfig squid on && service squid start |
/!\ Penser a réactivé et mettre le service en auto Iptables et autorisé le port par défaut de Squid 3128
1 |
$ sudo iptables -I INPUT -m tcp -p tcp --dport 3128 -j ACCEPT |