GNU/Linux >> Tutoriels Linux >  >> Ubuntu

Comment installer et configurer Squid Proxy sur Ubuntu 20.04

Squid est un proxy de mise en cache pour le Web prenant en charge HTTP, HTTPS, FTP, etc. Il réduit la bande passante et améliore les temps de réponse en mettant en cache et en réutilisant les pages Web fréquemment demandées. Squid dispose de contrôles d'accès étendus et constitue un excellent accélérateur de serveur. Il fonctionne sur la plupart des systèmes d'exploitation disponibles.

Le proxy inverse Squids est un service situé entre Internet et le serveur Web (généralement au sein d'un réseau privé) qui redirige les demandes entrantes des clients vers un serveur où les données sont stockées pour une récupération plus facile. Si le serveur de mise en cache (proxy) ne dispose pas des données mises en cache, il transmet alors la demande au serveur Web sur lequel les données sont réellement stockées. Ce type de mise en cache permet de collecter des données et de reproduire les valeurs de données d'origine stockées dans un emplacement différent pour faciliter l'accès.

Un proxy inverse fournit généralement une couche de contrôle supplémentaire pour lisser le flux du trafic réseau entrant entre vos clients et le serveur Web.

Lors de la sélection d'un système informatique à utiliser comme serveur proxy de mise en cache Squid dédié, de nombreux utilisateurs s'assurent qu'il est configuré avec une grande quantité de mémoire physique (RAM) car Squid maintient un cache en mémoire pour des performances accrues.

Contenu connexe :

  • Comment installer et configurer Squid Proxy sur Debian 11

Prérequis

  • Un serveur Ubuntu 20.04 mis à jour avec au moins 1 Go de RAM
  • Accès root au serveur ou utilisateur avec accès sudo
  • Accès à Internet depuis le serveur

Table des matières

  1. S'assurer que le serveur est à jour
  2. Installation du serveur proxy Squid
  3. Démarrer et activer le service squid
  4. Configuration de votre navigateur Web
  5. Configurer squid
  6. Utilisation de la liste de contrôle d'accès (ACL) du proxy Squid
  7. Utiliser Squid pour mettre en cache des pages Web

1. S'assurer que le serveur est à jour

Avant de continuer, assurons-nous que notre serveur a mis à jour les packages. Utilisez cette commande pour y parvenir :

sudo apt update
sudo apt upgrade -y

2. Installation du serveur proxy Squid

Les packages fournissant le serveur proxy squid sont disponibles dans les référentiels Ubuntu par défaut. Installez-le à l'aide de cette commande :

sudo apt install -y squid

Confirmez que le package a été installé comme prévu

$ apt-cache policy squid
squid:
  Installed: 4.10-1ubuntu1.5
  Candidate: 4.10-1ubuntu1.5
  Version table:
 *** 4.10-1ubuntu1.5 500
        500 http://us-west-2.ec2.archive.ubuntu.com/ubuntu focal-updates/main amd64 Packages
        500 http://security.ubuntu.com/ubuntu focal-security/main amd64 Packages
        100 /var/lib/dpkg/status
     4.10-1ubuntu1 500
        500 http://us-west-2.ec2.archive.ubuntu.com/ubuntu focal/main amd64 Packages

3. Démarrage et activation du service squid

Le serveur proxy squid sera démarré par défaut dans notre système Ubuntu. Pour vérifier l'état, lancez cette commande :

$ sudo systemctl status squid
● squid.service - Squid Web Proxy Server
     Loaded: loaded (/lib/systemd/system/squid.service; enabled; vendor preset: enabled)
     Active: active (running) since Mon 2022-01-03 06:44:10 UTC; 15s ago
       Docs: man:squid(8)
    Process: 48771 ExecStartPre=/usr/sbin/squid --foreground -z (code=exited, status=0/SUCCESS)
    Process: 48774 ExecStart=/usr/sbin/squid -sYC (code=exited, status=0/SUCCESS)
   Main PID: 48776 (squid)
      Tasks: 4 (limit: 4631)
     Memory: 15.5M
     CGroup: /system.slice/squid.service
             ├─48776 /usr/sbin/squid -sYC
             ├─48778 (squid-1) --kid squid-1 -sYC
             ├─48779 (logfile-daemon) /var/log/squid/access.log
             └─48780 (pinger)

Jan 03 06:44:10 ubuntusrv.citizix.com squid[48778]: Max Swap size: 0 KB
Jan 03 06:44:10 ubuntusrv.citizix.com squid[48778]: Using Least Load store dir selection
Jan 03 06:44:10 ubuntusrv.citizix.com squid[48778]: Set Current Directory to /var/spool/squid
Jan 03 06:44:10 ubuntusrv.citizix.com squid[48778]: Finished loading MIME types and icons.
Jan 03 06:44:10 ubuntusrv.citizix.com squid[48778]: HTCP Disabled.
Jan 03 06:44:10 ubuntusrv.citizix.com squid[48778]: Pinger socket opened on FD 14
Jan 03 06:44:10 ubuntusrv.citizix.com squid[48778]: Squid plugin modules loaded: 0
Jan 03 06:44:10 ubuntusrv.citizix.com squid[48778]: Adaptation support is off.
Jan 03 06:44:10 ubuntusrv.citizix.com squid[48778]: Accepting HTTP Socket connections at local=[::]:3128 remote=[::] FD 12 flags=9
Jan 03 06:44:11 ubuntusrv.citizix.com squid[48778]: storeLateRelease: released 0 objects

Nous pouvons confirmer que le service est en cours d'exécution à partir de la commande ci-dessus. Pour vous assurer que le service démarre au démarrage, utilisez la commande enable :

sudo systemctl enable squid

4. Configuration de votre navigateur Web

Avant d'apporter des modifications au fichier de configuration de squid, vous devez modifier certains paramètres de votre navigateur Web. Alors, ouvrez votre navigateur Web et ouvrez "paramètres réseau", puis passez aux "paramètres proxy". Cliquez sur la configuration "proxy manuel", puis écrivez la adresse_IP  de votre serveur proxy squid dans la barre de proxy HTTP et numéro de port  (par défaut, le port proxy squid est 3128). Maintenant, le proxy squid passera par votre IP_Address. Vous pouvez le vérifier en tapant n'importe quelle URL dans votre navigateur Web; cela vous donnera une erreur indiquant que l'accès est refusé, et pour autoriser l'accès, nous devons apporter des modifications au fichier de configuration de squid.

5. Configuration de Squid

Le fichier de configuration Squid par défaut se trouve dans /etc/squid/ et le fichier de configuration principal s'appelle squid.conf . Ce fichier contient l'essentiel des directives de configuration qui peuvent être modifiées pour modifier le comportement de Squid. Les lignes qui commencent par un # , sont mis en commentaire ou non lus par le fichier. Ces commentaires sont fournis pour expliquer la signification des paramètres de configuration associés.

Pour modifier le fichier de configuration, commençons par effectuer une sauvegarde du fichier d'origine, au cas où nous devions annuler les modifications en cas de problème ou l'utiliser pour comparer les nouvelles configurations de fichiers.

sudo cp /etc/squid/squid.conf /etc/squid/squid.conf.bak

Maintenant qu'une copie a été faite en tant que fichier de sauvegarde, nous pouvons apporter des modifications au fichier "squid.conf".

Pour ouvrir le fichier "squid.conf" dans vim, tapez cette commande :

sudo vim /etc/squid/squid.conf

Aller à la ligne

http_access deny all

Changez-le en :

http_access allow all

Vous devrez redémarrer le serveur proxy squid pour que les modifications s'appliquent. Utilisez cette commande :

sudo systemctl restart squid

Maintenant, vérifiez à nouveau votre navigateur Web, tapez n'importe quelle URL et cela devrait fonctionner.

6. Utilisation du proxy squid ACL (liste de contrôle d'accès)

Nous pouvons également utiliser Squid pour contrôler l'accès à différents sites Web (trafic Web) en les autorisant ou en les bloquant. Pour cela, allez sur la ligne acl CONNECT method CONNECT .

Et sous cette ligne, écrivez l'ACL (liste de contrôle d'accès) pour bloquer les sites Web que vous voulez.

acl block_websites dstdomain .facebook.com .youtube.com .instagram.com

Ensuite, niez la déclaration.

http_access deny block_websites

Enregistrez les modifications et pour vérifier si vos sites Web bloqués sont bloqués ou non, redémarrez votre service squid et vérifiez l'URL dans votre navigateur Web.

Vous pouvez également empêcher un utilisateur de télécharger des fichiers spécifiques, tels que des fichiers audio et vidéo, à l'aide de ACL. .

acl  media_files  urlpath_regex -i  \.(mp3|mp4|FLV|AVI|MKV)

Cela empêchera l'utilisateur de télécharger des fichiers audio ou vidéo avec des extensions telles que mp3, mp4, FLV, etc. Ajoutez toute extension de fichier que vous souhaitez empêcher le téléchargement. Maintenant, sous cette ligne, écrivez la déclaration de refus.

http_access deny media_files

Le téléchargement des fichiers multimédias sera alors bloqué.

7. Utilisation de Squid pour mettre en cache des pages Web

Les serveurs proxy sont également utilisés pour améliorer les performances du réseau en chargeant la page Web plus rapidement en mettant en cache les données du site Web. Vous pouvez également modifier l'emplacement du répertoire dans lequel les données mises en cache doivent être stockées. De plus, vous pouvez également modifier la taille du fichier cache et non. de répertoires dans lesquels les données seraient enregistrées.

Pour apporter des modifications, ouvrez squid.conf fichier et allez à la ligne suivante :

#chache_dir ufs /opt/squid/var/cache/squid 100 16 256

Cette ligne sera commentée par défaut, donc décommentez cette ligne en supprimant le # signe.

Dans la ligne ci-dessus, il y a une phrase "100 16 256 ”. Les 100 affiche la taille du fichier cache, et vous pouvez la modifier à n'importe quelle taille comme 300. 16 indique le nombre de répertoires dans lesquels le fichier cache est enregistré. 256  affiche le non. de sous-répertoires.

chache_dir ufs /opt/squid/var/cache/squid 300 20 260

Vous pouvez également modifier la taille du fichier cache en ajoutant la ligne suivante dans le fichier « squid.conf » :

cache_mem 300 MB

Si vous souhaitez modifier le chemin du répertoire du fichier cache, créez une nouvelle structure de répertoire à l'aide de cette commande :

sudo mkdir -p /path/where/you/want/to/place/file

Pour changer la propriété du répertoire cache en proxy squid, vous devez exécuter cette commande :

sudo chown -R proxy:proxy /path/where/you/want/to/place/file

Maintenant, arrêtez le service squid en utilisant cette commande :

sudo systemctl stop squid

Et puis exécutez la commande avec cette commande pour créer les répertoires de cache manquants dans le nouveau répertoire de cache :

sudo squid -z

Maintenant, redémarrez le service squid en utilisant la commande ci-dessous :

sudo systemctl start squid

Conclusion

Nous avons réussi à installer et à configurer le serveur proxy squid dans ce guide. Le proxy Squid est un très bon outil qui peut être utilisé dans les organisations ou par les petits fournisseurs de services Internet pour contrôler le trafic Web et l'accès à Internet. Il accélère la vitesse de navigation Web et fournit des mécanismes de sécurité pour le trafic Web.


Ubuntu
  1. Comment configurer et installer le serveur proxy Squid sur Ubuntu 18.04

  2. Comment installer et configurer un serveur NFS sur Ubuntu 20.04

  3. Comment installer et configurer le serveur DHCP sur Ubuntu 20.04

  4. Comment installer et configurer le serveur Redis dans Ubuntu

  5. Comment installer et configurer Squid Proxy sur Debian 11

Comment installer et configurer Squid Proxy dans Ubuntu, Linux Mint

Comment configurer Squid Proxy Server sur Ubuntu 20.04 LTS

Comment installer et configurer le serveur LAMP sur Ubuntu

Comment installer et configurer le serveur OpenLDAP sur Ubuntu 16.04

Comment installer et configurer VNC sur Ubuntu Server 20.04

Comment installer le serveur proxy Squid sur Ubuntu 18.04