TUTO: Installer le proxy web SQUID sur une VM Freebox delta

Échangez autour du hardware et des fonctionnalités du boitier Server de la Freebox Delta
  • Bonjour à tous,

    Voici un petit tuto pour Installer le proxy web SQUID sur une VM Freebox delta.
    Désolé pour la présentation austère, les BBCodes sont désactivés...
    J'ai fait le même post avec une meilleure mise en forme sur Univers Freebox, mais je me suis fait recevoir comme un malpropre aussi je reposte le sujet ici, en espérant qu'il profitera au plus grand nombre.

    1. Création d’une VM

    Choisir une VM Debian 10, par exemple en suivant le tuto qui permet de créer une VM Pi-Hole : https://www.youtube.com/watch?v=IqGdnGjhQqE
    Cela complètera d’ailleurs utilement votre Proxy en bloquant les requêtes vers les sites de publicité inutiles. Votre navigation Internet s’en trouvera ainsi optimisée.
    Une fois la VM créée et Pi-hole configuré, vous disposez d’une VM opérationnelle sur laquelle vous pourrez ajouter le proxy Squid. Le proxy Squid et Pi-hole cohabitent parfaitement sur une seule VM Linux Debian car ils n’utilisent pas les mêmes ports et consomment peu de ressources mémoire ou CPU.

    2. Installation de squid:
    Ouvrir une console sur la VM créée précédemment.
    Installer Squid en tapant les commandes suivantes (bien attendre la fin de l’exécution de chaque commande avant d’enchaîner la suivante) :

    :~$ sudo apt update
    :~$ sudo apt install squid
    :~$ sudo systemctl status squid

    Installer maintenant le gestionnaire du cache de Squid:

    :~$ sudo apt install squid-cgi

    Personnalisation de la configuration de Squid

    La configuration se fait en modifiant le fichier squid.conf, par exemple avec l’éditeur nano. Par précaution il vaut mieux sauvegarder l’original.

    :~$ sudo cp /etc/squid/squid.conf /etc/squid/squid.conf.save
    :~$ sudo nano /etc/squid/squid.conf

    Changer le port d’écoute
    Par défaut Squid écoute sur le port 3128
    - Pour le changer modifier la variable http_port IP_ADDR:
    http_port IP_ADDR:<Nouveau port>

    Autoriser les connexions de vos ordinateurs, tablettes, etc.

    Par défaut Squid est configuré pour n’accepter aucune connexion (oui c’est dommage pour un proxy…). Pour autoriser vos ordinateurs, tablettes et autres smartphones à utiliser le proxy, il faut donc :
    - Soit remplacer la ligne http_access deny all par http_access allow all
    Vous autoriserez ainsi la connexion de tout le monde
    - Soit ajouter la ligne http_access allow localnet AVANT http_access deny all
    http_access allow localnet
    http_access deny all

    Vous autoriserez ainsi seulement les machines du réseau local. La plupart du temps, cela revient au même puisque toutes les machines connectées au proxy sont sur votre réseau local géré par la Freebox.
    PS : Squid interprète les directives de la configuration comme un firewall, c'est-à-dire dans l’ordre des lignes. Ainsi la directive deny all s’applique à toutes les connexions, sauf celles autorisées dans les lignes précédentes comme http_access allow localnet

    Sauvegarder les modifications

    taper <Ctrl>+O (sauvegarde des modifications)
    taper <Ctrl>+X ( sortie de l’éditeur nano)

    Astuce : Taper Ctrl-C si vous perdez l'affichage dans la console, cela arrive parfois. Surtout ne tapez pas <Ctrl>+W, cela fermerait la console !

    Re-démarrer Squid:

    :~$ sudo systemctl restart squid

    Pour administrer Squid (et même toute la VM) plus facilement, vous pouvez installer webmin, qui propose une interface web d’administration des services installés sur la VM

    3. Installation de webmin

    Ouvrir une console sur la VM.
    Se placer dans le dossier /tmp:

    :~$ sudo cd /tmp

    Télécharger le package de webmin pour Debian:

    :~$ wget https://prdownloads.sourceforge.net/web ... 83_all.deb

    Installer les outils PGP gnupg1:

    :~$ sudo apt install gnupg1

    Télécharger et installer la clé PGP nécessaire à l'installation de webmin ( ignorer le message de warning):

    :~$ wget http://www.webmin.com/jcameron-key.asc
    :~$ sudo apt-key add jcameron-key.asc

    Mettre à jour la liste des packages d'installation:

    :~$ sudo apt update

    Lancer enfin l'installation du package de webmin que vous avez téléchargé:

    :~$ dpkg -i webmin_1.983_all.deb

    Au bout d'un certain temps vous obtiendrez des messages d'erreur concernant des librairies Perl.
    Il faut alors lancer les commandes qui permettent de résoudre les dépendances et d'installer tout ce qui manque encore:

    :~$ apt-get -f install perl libnet-ssleay-perl openssl libauthen-pam-perl libpam-runtime libio-pty-perl apt-show-versions python

    :~$ apt-get -f install

    Et voilà, webmin est installé!


    Connexion à webmin :
    Pour s'y connecter, ouvrez un nouvel onglet dans votre navigateur et entrez l'url:
    https://<adresse ip de la VM>:10000/sysinfo.cgi?xnavigation=1
    Exemple : https://192.168.1.20:10000/sysinfo.cgi?xnavigation=1
    PS : Vous obtiendrez une erreur de certificat, passez outre et vous arriverez sur l'écran de login.
    Entrez l'identifiant/mot de passe que vous utilisez pour vous connecter dans la console de la VM.
    Vous arriverez en principe sur l'écran principal de webmin.


    Attention : Il est probable que le proxy squid ne soit pas présent dans la liste des "Servers" (c’est dû au fait que webmin recherche squid dans le répertoire squid3 au lieu de squid et c’est dommage car on a installé webmin surtout pour cela).
    Vous le trouverez alors dans celle des "Un-used modules".
    Quand vous cliquerez dessus, webmin vous dira qu'il ne trouve pas squid.
    Mais webmin vous propose de modifier la configuration du module . Cliquez sur le lien, sélectionnez la configuration système puis remplacer squid3 par squid dans tous les paramètres où il est présent.


    Et voilà, en principe tout est OK, vous pouvez administrer Squid via l'interface de webmin, après un petit re-démarrage.
    Par exemple vous pourrez utiliser la fonction Cache Manager Statistics pour regarder qui est connecté et ce qui se trouve dans le cache de Squid.
  • Merci beaucoup pour ce tuto absolument parfait en tout point, ni trop verbeux ni pas assez :idea:

    Tout s'est bien déroulé comme prévu ;)
  • Retourner vers « [Matériel] Le boitier Server Freebox Delta »

    Idees CadeauxBoostez votre Freebox
    Testé et approuvé 👍
    Retrouvez une sélection de composants conseillés et utilisés par les Membres du forum
    💨 Pack Boost Freebox Delta
    - 1 barrette mémoire 16Go (ou 8Go)
    - 1 à 4 disques-durs Seagate 2To
    On en parle ici : disque-dur / mémoire
    💨 Pack Boost 10Gbit/s chez soi
    - Câble SFP+ & Carte Réseau PCIE
    - ou Jarretière, Convertisseur, Switch
    On en parle ici : Fibre 10G à la maison