Différences
Ci-dessous, les différences entre deux révisions de la page.
| Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente | ||
| musee:tutoriels:proxy_squid [13/10/2018 00:59] – ↷ Page déplacée de tutoriels:proxy_squid à musee:tutoriels:proxy_squid pnahoum | musee:tutoriels:proxy_squid [21/11/2024 17:15] (Version actuelle) – alouradou | ||
|---|---|---|---|
| Ligne 1: | Ligne 1: | ||
| + | ====== Proxy Squid pour les containers ====== | ||
| + | ===== Introduction ===== | ||
| + | |||
| + | Il peut être utile de connecter nos machines virtuelles à internet. De base, celles ci n'y ont pas accès. | ||
| + | |||
| + | Dans ce tutoriel, on verra comment mettre en place un proxy afin que nos machine puisse surfer et se mettre à jours. | ||
| + | |||
| + | Nous avons choisi d' | ||
| + | |||
| + | -> le proxy permet de faire du caching et d' | ||
| + | |||
| + | -> il permet de logger tout le trafic, ce qui peut être utile en cas de hack | ||
| + | |||
| + | ===== Installer et paramétrer le serveur Squid ===== | ||
| + | |||
| + | ==== Configuration de base ==== | ||
| + | |||
| + | On va installer le proxy sur Bor. Notez que Bor dispose de l' | ||
| + | |||
| + | On commence par installer squid et par sauver son fichier de config par défaut : | ||
| + | |||
| + | $> sudo apt-get install squid | ||
| + | $> sudo cd /etc/squid | ||
| + | $> sudo mv squid.conf squid.conf.default | ||
| + | |||
| + | On crée ensuite un nouveau fichier de configuration : | ||
| + | |||
| + | $> sudo nano squid.conf | ||
| + | |||
| + | <file bash / | ||
| + | # Squid a besoin de savoir le nom de la machine, notre machine s’appelle ginfo-bor, donc : | ||
| + | visible_hostname bor-ginfo | ||
| + | |||
| + | # Par défaut le proxy écoute sur ses deux interfaces, pour des soucis de sécurité il faut donc le | ||
| + | # restreindre à écouter sur l’interface du réseau local (DMZ) | ||
| + | http_port 10.61.15.1: | ||
| + | http_port 10.61.16.10: | ||
| + | |||
| + | # Changer la taille du cache de squid, changer la valeur 100 par ce que vous voulez (valeur en Mo) | ||
| + | cache_dir ufs / | ||
| + | |||
| + | #################################### | ||
| + | |||
| + | acl all src all # ACL pour autoriser/ | ||
| + | acl lan src 10.61.16.0/ | ||
| + | acl lan src 10.61.15.0/ | ||
| + | acl Safe_ports port 80 # Port HTTP = Port ' | ||
| + | acl Safe_ports port 443 # Port HTTPS = Port ' | ||
| + | acl Safe_ports port 21 # Port FTP = Port ' | ||
| + | |||
| + | ############################################################################ | ||
| + | ########################## | ||
| + | |||
| + | |||
| + | # Désactiver tous les protocoles sauf les ports sures | ||
| + | http_access deny !Safe_ports | ||
| + | |||
| + | # Désactiver l' | ||
| + | # deny = refuser ; ! = sauf ; lan = nom de l’ACL à laquelle on fait référence. | ||
| + | |||
| + | http_access deny !lan | ||
| + | |||
| + | |||
| + | # Port utilisé par le Proxy : | ||
| + | # Le port indiqué ici, devra être celui qui est précisé dans votre navigateur. | ||
| + | http_port 3128 | ||
| + | |||
| + | # On déclare le programme qui gère l' | ||
| + | auth_param basic program / | ||
| + | |||
| + | # Grâce à cette ACL, le Proxy demandera une authentification | ||
| + | # Cet acl specifie tous les utilisateurs du htpasswd (le required les prends tous) | ||
| + | acl utilisateurs proxy_auth REQUIRED | ||
| + | |||
| + | # Refuser l' | ||
| + | http_access deny !utilisateurs | ||
| + | |||
| + | #Cette acl est fait pour la limitation de bande passante de lutilisateur LXC | ||
| + | #On cree un acl lxcs qui ne contient que lutilisateur lxc | ||
| + | acl lxcs proxy_auth lxc | ||
| + | delay_pools 1 | ||
| + | delay_class 1 1 | ||
| + | delay_parameters 1 320000/ | ||
| + | delay_access 1 allow lxcs | ||
| + | delay_access 1 deny all | ||
| + | |||
| + | </ | ||
| + | |||
| + | Squid utilise la méthode htpasswd disponible avec le paquet apache2-utils, | ||
| + | |||
| + | $> sudo apt-get install apache2-utils | ||
| + | |||
| + | Ensuite, il faut créer un fichier où seront déclarés les utilisateurs et leur mot de passe : | ||
| + | |||
| + | $> sudo nano / | ||
| + | |||
| + | On peut désormais déclarer des utilisateurs dans ce fichier grâce à la commande suivante : | ||
| + | |||
| + | $> sudo htpasswd / | ||
| + | | ||
| + | On crée bien l' | ||
| + | |||
| + | Puis on redémarre le service : | ||
| + | |||
| + | $> sudo service squid restart | ||
| + | ===== Utiliser et se connecter au proxy ===== | ||
| + | |||
| + | |||
| + | Pour connecter le LXC au proxy, il suffit de taper dans son shell la commande suivante : | ||
| + | |||
| + | $> export http_proxy=http:// | ||
| + | $> export https_proxy=https:// | ||
| + | |||
| + | (pour le mettre au démarrage du LXC mettre ces lignes dans ''/ | ||
| + | |||
| + | Normalement, | ||
| + | |||
| + | Pour les '' | ||
| + | |||
| + | <file bash / | ||
| + | Acquire:: | ||
| + | Acquire:: | ||
| + | </ | ||
| + | ===== Les logs ===== | ||
| + | |||
| + | En ce qui concerne les logs du serveur Proxy, ils sont enregistrés dans le fichier access.log se trouvant dans / | ||
| + | |||
| + | ===== Dépannage ===== | ||
| + | |||
| + | Si le proxy renvoie des erreurs dans le Wordpress du type : | ||
| + | |||
| + | '' | ||
| + | |||
| + | Il faut suivre les instructions du démarrage de Bor (c'est à dire retirer puis remettre le réseau '' | ||
| + | |||
| + | [[https:// | ||
| + | |||
| + | ===== Sources ===== | ||
| + | Cet article est un copier-coller adapté de la source suivante : | ||
| + | [[https:// | ||