installer et configurer squid (sous debian)
Table des matières:
- Installer Squid sur Debian
- Configuration de Squid
- Authentification Squid
- Configuration du pare-feu
- Configuration de votre navigateur pour utiliser le proxy
- Firefox
- Google Chrome
- Conclusion
Squid est un proxy de mise en cache complet prenant en charge les protocoles réseau populaires tels que HTTP, HTTPS, FTP, etc. Il peut être utilisé pour améliorer les performances du serveur Web en mettant en cache les demandes répétées, en filtrant le trafic Web et en accédant au contenu géo-restreint.
Dans ce tutoriel, nous expliquerons comment configurer un proxy Squid sur Debian Buster. Nous vous montrerons également comment configurer les navigateurs Web Firefox et Google Chrome pour l'utiliser.
Installer Squid sur Debian
Le paquet Squid est inclus dans la norme sur les référentiels Debian 10. Exécutez les commandes suivantes en tant qu'utilisateur sudo pour installer Squid:
sudo apt update
sudo apt install squid
Une fois l'installation terminée, le service Squid démarre automatiquement.
Vérifiez que l'installation a réussi et que le service Squid est en cours d'exécution en vérifiant l'état du service Squid:
sudo systemctl status squid
● squid.service - LSB: Squid HTTP Proxy version 3.x Loaded: loaded (/etc/init.d/squid; generated) Active: active (running) since Sat 2019-08-03 08:52:47 PDT; 3s ago…
Configuration de Squid
Squid peut être configuré en modifiant le fichier de configuration
/etc/squid/squid.conf
. Des fichiers de configuration distincts peuvent être inclus à l'aide de la directive «include».
Le fichier de configuration
squid.conf
comprend des commentaires décrivant ce que fait chaque option de configuration.
Avant d'apporter des modifications, il est toujours judicieux de sauvegarder le fichier d'origine:
sudo cp /etc/squid/squid.conf{,.orginal}
Pour modifier la configuration, ouvrez le fichier dans votre éditeur de texte:
sudo nano /etc/squid/squid.conf
Par défaut, Squid écoute sur le port
3128
sur toutes les interfaces réseau.
# Squid normally listens to port 3128 http_port IP_ADDR:PORT
L'exécution de Squid sur toutes les interfaces et sur le port par défaut devrait convenir à la plupart des utilisateurs.
Les listes de contrôle d'accès (ACL) vous permettent de contrôler la façon dont les clients peuvent accéder aux ressources Web. Par défaut, Squid autorise l'accès uniquement à partir de l'hôte local.
Si tous les clients qui utiliseront le proxy ont une adresse IP statique, l'option la plus simple consiste à créer une liste de contrôle d'accès qui inclura les adresses IP autorisées.
Au lieu d'ajouter les adresses IP dans le fichier de configuration principal, nous allons créer un nouveau fichier include qui stockera les adresses IP:
/etc/squid/allowed_ips.txt
192.168.33.1 # All other allowed IPs
Une fois terminé, ouvrez le fichier de configuration principal et créez une nouvelle ACL nommée
allowed_ips
(première ligne en surbrillance) et autorisez l'accès à cette ACL en utilisant la directive
http_access
(deuxième ligne en surbrillance):
#… acl allowed_ips src "/etc/squid/allowed_ips.txt" #… #http_access allow localnet http_access allow localhost http_access allow allowed_ips # And finally deny all other access to this proxy http_access deny all
L'ordre des règles
http_access
est important. Assurez-vous d'ajouter la ligne avant que
http_access deny all
.
La directive
http_access
fonctionne de la même manière que les règles de pare-feu. Squid lit les règles de haut en bas et lorsqu'une règle correspond, les règles ci-dessous ne sont pas traitées.
Chaque fois que vous apportez des modifications au fichier de configuration, vous devez redémarrer le service Squid pour que les modifications prennent effet:
Authentification Squid
Squid peut utiliser différents back-end, y compris l'authentification de base Samba, LDAP et HTTP pour les utilisateurs authentifiés.
Dans cet exemple, nous allons configurer Squid pour utiliser l'authentification de base. Il s'agit d'une méthode d'authentification simple intégrée au protocole
Nous utiliserons l'utilitaire
openssl
pour générer les mots de passe et ajouter la paire
username:password
au fichier
/etc/squid/htpasswd
avec la commande
tee
comme indiqué ci-dessous:
printf "USERNAME:$(openssl passwd -crypt PASSWORD)\n" | sudo tee -a /etc/squid/htpasswd
Créons un utilisateur nommé "buster" avec le mot de passe "
Sz$Zdg69
":
printf "buster:$(openssl passwd -crypt 'Sz$Zdg69')\n" | sudo tee -a /etc/squid/htpasswd
buster:RrvgO7NxY86VM
L'étape suivante consiste à activer l'authentification de base HTTP. Ouvrez la configuration principale et ajoutez les éléments suivants:
/etc/squid/squid.conf
#… auth_param basic program /usr/lib/squid3/basic_ncsa_auth /etc/squid/htpasswd auth_param basic realm proxy acl authenticated proxy_auth REQUIRED #… #http_access allow localnet http_access allow localhost http_access allow authenticated # And finally deny all other access to this proxy http_access deny all
Les trois premières lignes en surbrillance créent une nouvelle liste de contrôle d'accès nommée
authenticated
et la dernière ligne en surbrillance permet l'accès aux utilisateurs authentifiés.
Redémarrez le service Squid:
Configuration du pare-feu
Les utilisateurs UFW peuvent ouvrir le port
3128
en activant le profil 'Squid':
sudo ufw allow 'Squid'
sudo nft add rule inet filter input tcp dport 3128 ct state new, established counter accept
Si Squid s'exécute sur un autre port autre que celui par défaut, vous devrez autoriser le trafic sur ce port.
Configuration de votre navigateur pour utiliser le proxy
Dans cette section, montrez bien comment configurer votre navigateur pour utiliser le proxy Squid.
Firefox
Les étapes ci-dessous sont les mêmes pour Windows, macOS et Linux.
-
Dans le coin supérieur droit, cliquez sur l'icône hamburger
☰
pour ouvrir le menu de Firefox:Cliquez sur le lien
⚙ Preferences
.Faites défiler jusqu'à la section
Network Settings
et cliquez sur le boutonSettings…
Une nouvelle fenêtre s'ouvrira.
- Sélectionnez le bouton radio
Manual proxy configuration
l'adresse IP de votre serveur Squid dans le champHTTP Host
et3128
dans le champ Port.Sélectionnez la caseUse this proxy server for all protocols
sur le boutonOK
pour enregistrer les paramètres.
- Sélectionnez le bouton radio
À ce stade, votre Firefox est configuré et vous pouvez naviguer sur Internet via le proxy Squid. Pour le vérifier, ouvrez
google.com
, tapez "quelle est mon adresse IP" et vous devriez voir l'adresse IP de votre serveur Squid.
Pour revenir aux paramètres par défaut, accédez à
Network Settings
, sélectionnez le bouton radio
Use system proxy settings
et enregistrez les paramètres.
Il existe également plusieurs plugins qui peuvent vous aider à configurer les paramètres de proxy de Firefox tels que FoxyProxy.
Google Chrome
Google Chrome utilise les paramètres de proxy système par défaut. Au lieu de modifier les paramètres de proxy de votre système d'exploitation, vous pouvez utiliser un module complémentaire tel que SwitchyOmega ou démarrer le navigateur Web Chrome à partir de la ligne de commande.
Pour lancer Chrome à l'aide d'un nouveau profil et vous connecter au serveur Squid, utilisez la commande suivante:
Linux:
/usr/bin/google-chrome \ --user-data-dir="$HOME/proxy-profile" \ --proxy-server="http://SQUID_IP:3128"
macOS:
"/Applications/Google Chrome.app/Contents/MacOS/Google Chrome" \ --user-data-dir="$HOME/proxy-profile" \ --proxy-server="http://SQUID_IP:3128"
Les fenêtres:
"C:\Program Files (x86)\Google\Chrome\Application\chrome.exe" ^ --user-data-dir="%USERPROFILE%\proxy-profile" ^ --proxy-server="http://SQUID_IP:3128"
Le profil sera créé automatiquement s'il n'existe pas. De cette façon, vous pouvez exécuter plusieurs instances de Chrome en même temps.
Pour confirmer que le serveur proxy fonctionne correctement, ouvrez
google.com
et saisissez «quelle est mon adresse IP». L'IP affichée dans votre navigateur doit être l'adresse IP de votre serveur.
Conclusion
Nous avons couvert les bases de l'installation de Squid sur Debian 10 et de la configuration de votre navigateur pour l'utiliser.
Squid est l'un des serveurs de mise en cache de proxy les plus populaires. Il améliore la vitesse du serveur Web et peut vous aider à restreindre l'accès des utilisateurs à Internet.
proxy DebianComment installer et configurer Redis sur Debian 10 Linux
Dans ce tutoriel, nous verrons comment installer et configurer Redis sur un Debian 10, Buster. Redis est un magasin de données de valeurs-clés en mémoire libre.
Comment installer et configurer le proxy Squid sur Centos 7
Squid est un proxy de mise en cache complet prenant en charge les protocoles réseau populaires tels que HTTP, HTTPS, FTP, etc. Ce tutoriel explique comment configurer Squid sur CentOS 7
Comment installer et configurer le proxy Squid sur Ubuntu 18.04
Squid est un proxy de mise en cache complet prenant en charge les protocoles réseau populaires tels que HTTP, HTTPS, FTP, etc. Ce tutoriel vous guidera à travers le processus de configuration d'un proxy Squid sur Ubuntu 18.04.