Dans ce tutoriel, nous allons vous montrer comment installer Squid Proxy sur Debian 10. Pour ceux d'entre vous qui ne le savaient pas, Squid est un proxy de mise en cache pour le Web prenant en charge HTTP, HTTPS, FTP, et bien d'autres. Il peut être utilisé pour améliorer les performances du serveur Web en mettant en cache les requêtes répétées, en filtrant le trafic Web et en accédant au contenu géo-restreint.
Cet article suppose que vous avez au moins des connaissances de base sur Linux, que vous savez utiliser le shell et, plus important encore, que vous hébergez votre site sur votre propre VPS. L'installation est assez simple et suppose que vous s'exécutent dans le compte root, sinon vous devrez peut-être ajouter 'sudo
‘ aux commandes pour obtenir les privilèges root. Je vais vous montrer étape par étape l'installation de Squid Proxy Server sur une Debian 10 (Buster).
Prérequis
- Un serveur exécutant l'un des systèmes d'exploitation suivants :Debian 10 (Buster).
- Il est recommandé d'utiliser une nouvelle installation du système d'exploitation pour éviter tout problème potentiel.
- Un
non-root sudo user
ou l'accès à l'root user
. Nous vous recommandons d'agir en tant qu'non-root sudo user
, cependant, car vous pouvez endommager votre système si vous ne faites pas attention lorsque vous agissez en tant que root.
Installer le proxy Squid sur Debian 10 Buster
Étape 1. Avant d'installer un logiciel, il est important de s'assurer que votre système est à jour en exécutant le suivant apt
commandes dans le terminal :
sudo apt update sudo apt upgrade
Étape 2. Installer Squid Proxy sur Debian 10.
Le paquet squid est inclus dans la norme sur les référentiels Debian 10. Exécutez la commande suivante pour installer Squid sur le système Debian :
sudo apt install squid
Étape 3. Configurez le serveur proxy Squid.
Allez maintenant au fichier de configuration principal du serveur proxy Squid situé dans /etc/squid/squid.conf
.
sudo nano /etc/squid/squid.conf
Ajoutez les lignes suivantes :
sudo nano /etc/squid/squid.conf
# Recommended minimum configuration: auth_param basic program /usr/lib/squid3/basic_ncsa_auth /etc/squid/squid_passwd acl ncsa_users proxy_auth REQUIRED http_access allow ncsa_users acl manager proto cache_object acl localhost src 127.0.0.1/32 acl to_localhost dst 127.0.0.0/8 0.0.0.0/32 acl SSL_ports port 443 acl Safe_ports port 80 # http acl Safe_ports port 21 # ftp acl Safe_ports port 443 # https acl Safe_ports port 1025-65535 # unregistered ports acl Safe_ports port 280 # http-mgmt acl Safe_ports port 488 # gss-http acl Safe_ports port 591 # filemaker acl Safe_ports port 777 # multiling http acl SSL_ports port 9001 # webmin acl CONNECT method CONNECT http_access allow manager localhost http_access deny manager http_access deny !Safe_ports http_access deny CONNECT !SSL_ports http_access deny all http_port 3128 # Squid normally listens to port 3128 forwarded_for off request_header_access Allow allow all request_header_access Authorization allow all request_header_access Proxy-Authorization allow all request_header_access Proxy-Authenticate allow all request_header_access Cache-Control allow all request_header_access Content-Encoding allow all request_header_access Content-Length allow all request_header_access Content-Type allow all request_header_access Date allow all request_header_access Expires allow all request_header_access Host allow all request_header_access If-Modified-Since allow all request_header_access Last-Modified allow all request_header_access Location allow all request_header_access Pragma allow all request_header_access Accept allow all request_header_access Accept-Charset allow all request_header_access Accept-Encoding allow all request_header_access Accept-Language allow all request_header_access Content-Language allow all request_header_access Mime-Version allow all request_header_access Retry-After allow all request_header_access Title allow all request_header_access Connection allow all request_header_access Proxy-Connection allow all request_header_access User-Agent allow all request_header_access Cookie allow all request_header_access All deny all visible_hostname idroot.us
Chaque fois que vous apportez des modifications au fichier de configuration, vous devez redémarrer le service Squid pour que les modifications prennent effet :
sudo systemctl restart squid
Étape 4. Configurez l'authentification Squid.
Nous créons maintenant notre fichier d'authentification que Squid peut utiliser pour vérifier les authentifications des utilisateurs :
$ htpasswd -b /etc/squid/squid_passwd username password
Exemple de création d'authentification Squid :
$ htpasswd -b -c /etc/squid/squid_passwd ranty ratna
Après avoir apporté des modifications au fichier de configuration, enregistrez le fichier et redémarrez le service du serveur squid pour appliquer les modifications à l'aide de la commande suivante entrée à l'invite du terminal :
sudo systemctl restart squid
Étape 5. Configurez le pare-feu.
Les utilisateurs UFW peuvent ouvrir le port 3128
en activant le profil "Squid":
sudo ufw allow 'Squid'
Étape 6. Configurez le client pour le serveur proxy Squid.
Faisons un simple test de proxy avec le navigateur Web Firefox. Allez simplement dans Menu> Préférences> Paramètres réseau> Paramètres. Cochez pour utiliser ce serveur proxy pour tous les protocoles .
Félicitations ! Vous avez installé Squid avec succès. Merci d'avoir utilisé ce didacticiel pour installer la dernière version de Squid Proxy sur Debian 10 Buster. Pour obtenir de l'aide supplémentaire ou des informations utiles, nous vous recommandons de consulter le Site Web de Squid.