2 votes

Forcer ubuntu à accéder à internet via un proxy

J'ai mis en place un proxy squid pour mettre en cache toutes les requêtes internet. J'ai une adresse IP publique et j'ai ouvert le port 3128. Il ne me reste plus qu'à configurer mon serveur ubuntu pour forcer toutes les connexions internet à passer par ce proxy, en utilisant l'adresse ip et le numéro de port.

Je connais cette commande qui permet à ubuntu d'accéder à internet via un proxy, mais on m'a dit que ce n'était pas permanent.

export http_proxy="http://proxy.example.com:8080"

Quelle commande dois-je utiliser pour forcer ubuntu à passer par ce proxy indépendamment des redémarrages ou des sessions ?

Gracias

2voto

porto alet Points 315

La solution proposée ne peut pas fonctionner dans le cas général - elle suppose que tout reconnaîtra et utilisera la variable Environnement.

Pour que cela fonctionne pour HTTP, vous devez mettre en place un "Proxy transparent", qui nécessite généralement des règles IPTABLES nat pour capturer et rediriger le trafic. Jetez un coup d'œil aquí pour savoir comment procéder.

Il est possible de faire la même chose pour HTTPS, mais vous devrez en plus installer une autorité de certification dans SQUID et l'accepter dans la boîte Ubuntu afin qu'elle puisse intercepter le trafic.

Il se peut que cela ne soit pas pratique avec FTP (je n'ai pas essayé).

1voto

donothingloop Points 393

Vous devez définir certains paramètres dans /etc/environment pour la rendre permanente :

  • Ouvrir le /etc/environment avec vi (ou votre éditeur préféré). Ce fichier stocke les démarrage.
  • Ajouter les lignes suivantes, en les modifiant de manière appropriée. Vous devez dupliquer à la fois en majuscules et en minuscules car (malheureusement) certains programmes ne recherchent que l'une ou l'autre des lettres. programmes ne recherchent que l'un ou l'autre :

     http\_proxy=http://myproxy.server.com:8080/
    https\_proxy=http://myproxy.server.com:8080/
    ftp\_proxy=http://myproxy.server.com:8080/
    no\_proxy="localhost,127.0.0.1,localaddress,.localdomain.com"
    HTTP\_PROXY=http://myproxy.server.com:8080/
    HTTPS\_PROXY=http://myproxy.server.com:8080/
    FTP\_PROXY=http://myproxy.server.com:8080/
    NO\_PROXY="localhost,127.0.0.1,localaddress,.localdomain.com" 
  • apt-get , aptitude etc. n'obéira pas aux variables d'environnement lorsqu'il est utilisé normalement avec sudo . Il faut donc les configurer séparément, créer un appelé 95proxies において /etc/apt/apt.conf.d/ , les éléments suivants :

     Acquire::http::proxy "http://myproxy.server.com:8080/";
    Acquire::ftp::proxy "ftp://myproxy.server.com:8080/";
    Acquire::https::proxy "https://myproxy.server.com:8080/";   

Enfin, déconnectez-vous et redémarrez pour vous assurer que les modifications ont bien été prises en compte.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X