Publié le 03 janvier 2019
Ça c’est du titre qui en impose ! Personne n’a rien compris, y compris moi.
Je vais vous expliquer ma problématique. On m’a fourni un serveur de test sous Ubuntu 18.04. Je dois y installer l’applicatif Zabbix via les dépôts et faire quelques tests pour valider une procédure. Le problème est que ce serveur n’a pas accès à internet, ni a aucune autre connexion sortantes. Seules les connexions entrantes depuis une petite plage d’IP (dont la mienne) sont autorisées. Un schéma pour mieux visualiser la situation :
Dans ces conditions, impossible d’installer Zabbix via les dépôts, puisque l’accès internet n’est pas possible. J’ai donc installé Squid sur mon ordinateur (un Ubuntu 18.04 lui aussi), pour qu’il serve de proxy entre le serveur et internet : apt-get install squid
Ensuite je me suis connecté en SSH au serveur, en montant au passage
un tunnel SSH inverse pour permettre la communication serveur →
ordinateur : ssh -R 3128:localhost:3128 root@1.2.3.4
1.2.3.4
est l’IP du serveur et 3128
est le
port Squid par défaut. Avec cette commande, le port 3128
sur le serveur sera automatiquement redirigé vers le port
3128
de mon ordinateur. C’est un peu comme si Squid avait
été installé en local sur le serveur mais avait quand même accès à
internet.
En pratique, les données vers internet vont suivre ce trajet :
Il ne reste plus qu’à modifier la configuration de Aptitude pour
qu’il utilise le proxy Squid. Il faut créer le fichier
/etc/apt/apt.conf
et mettre dedans :
Acquire::http {
Proxy "http://127.0.0.1:3128";
};