web-dev-qa-db-fra.com

Comment définir des serveurs proxy à l'échelle du système dans Xubuntu, Lubuntu ou Ubuntu Studio?

Je ne peux trouver les paramètres de proxy nulle part. Dois-je le configurer via terminal, via gconftools ou existe-t-il une interface graphique?

80
siddharth

Les mandataires à l'échelle du système dans Ubuntu Studio, Xubuntu et XFCE doivent être définis via des variables d'environnement.

Ubuntu Studio, comme Xubuntu, utilise l'environnement de bureau XFCE qui ne contient pas d'outil de paramètres graphiques pour définir des proxies à l'échelle du système ( contrairement à l'environnement de bureau par défaut Ubuntu, Unity ).

1. Configurez le/les mandataires pour la plupart des programmes

  • Ouvrez le fichier /etc/environment avec gksudo leafpad (ou votre éditeur favori). Ce fichier stocke les variables système initialisées au démarrage.
  • Ajoutez les lignes suivantes en les modifiant de manière appropriée. Vous devez dupliquer les majuscules et les minuscules car (malheureusement), certains 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, adresse locale, .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, adresse_local , .localdomain.com "
    

2. Configurez ensuite les serveurs proxy pour les programmes GTK3 tels que Rhythmbox:

Certains programmes GTK3 plus récents, tels que Rhythmbox, ignorent les variables d'environnement définies ci-dessus et utilisent plutôt les paramètres Gnome. Pour vous assurer qu'ils sont couverts, ouvrez un terminal et collez ce qui suit, ligne par ligne, en modifiant le cas échéant:

gsettings set org.gnome.system.proxy mode 'manual' 
gsettings set org.gnome.system.proxy.http Host 'myproxy.server.com'
gsettings set org.gnome.system.proxy.http port 8080

3. Enfin, configurez les proxies pour apt-get et Update Manager.

  • Ces programmes n'obéiront pas non plus aux variables d'environnement. Créez un fichier appelé 95proxies dans /etc/apt/apt.conf.d/ et incluez 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 prennent effet.


Sources: 1 , 2 , . Voir 1 en particulier pour obtenir une aide supplémentaire, y compris un script pour activer/désactiver rapidement les mandataires.


Scripts d'activation/désactivation du serveur proxy :

Avertissement: : Avant de continuer, sachez que j'ai déjà essayé ceci sur Lubuntu 14.04 et qu'il est IMPORTANT qu'avant de lancer les scripts mentionnés, le fichier /etc/environment ait il ne contient qu'une ligne, c'est-à-dire '$ PATH ...' et il ne devrait y avoir rien d'autre dans le fichier, sinon vous pourriez avoir besoin de modifier le code du script. Comme décrit ci-dessus, ces scripts définissent et annulent la définition du proxy, mais ils reposent sur la troncature et l'ajout d'un fichier pour modifier les fichiers /etc/environment et /etc/apt/apt.conf.d/95proxies. Alors assurez-vous que:

1) /etc/environment contient une seule ligne, à savoir '$ PATH: ...'. Et rien d'autre.

2) Le fichier /etc/apt/apt.conf.d/95proxies n'existe pas ou ne contient rien d'important.

Alors! Si vous souhaitez automatiser le processus d'activation et de désactivation du proxy sans avoir à taper attribuer. vous pouvez créer deux scripts Shell exécutables proxyon.sh et proxyoff.sh comme suit:

proxyon.sh:

if [ $(id -u) -ne 0 ]; then
  echo "This script must be run as root";
  exit 1;
fi

if [ $# -eq 2 ]
  then

  gsettings set org.gnome.system.proxy mode 'manual' ;
  gsettings set org.gnome.system.proxy.http Host '$1';
  gsettings set org.gnome.system.proxy.http port $2;


  grep PATH /etc/environment > lol.t;
  printf \
  "http_proxy=http://$1:$2/\n\
  https_proxy=http://$1:$2/\n\
  ftp_proxy=http://$1:$2/\n\
  no_proxy=\"localhost,127.0.0.1,localaddress,.localdomain.com\"\n\
  HTTP_PROXY=http://$1:$2/\n\
  HTTPS_PROXY=http://$1:$2/\n\
  FTP_PROXY=http://$1:$2/\n\
  NO_PROXY=\"localhost,127.0.0.1,localaddress,.localdomain.com\"\n" >> lol.t;

  cat lol.t > /etc/environment;


  printf \
  "Acquire::http::proxy \"http://$1:$2/\";\n\
  Acquire::ftp::proxy \"ftp://$1:$2/\";\n\
  Acquire::https::proxy \"https://$1:$2/\";\n" > /etc/apt/apt.conf.d/95proxies;

  rm -rf lol.t;

  else

  printf "Usage $0 <proxy_ip> <proxy_port>\n";

fi

proxyoff.sh:

if [ $(id -u) -ne 0 ]; then
  echo "This script must be run as root";
  exit 1;
fi

gsettings set org.gnome.system.proxy mode 'none' ;

grep PATH /etc/environment > lol.t;
cat lol.t > /etc/environment;

printf "" > /etc/apt/apt.conf.d/95proxies;

rm -rf lol.t;

Comment utiliser : Une fois que vous avez créé ces scripts, rendez-les exécutables, vous pouvez les conserver où bon vous semble. Pour activer le proxy, tout ce que vous avez à faire est de vous rendre dans le répertoire contenant le script 'proxyon.sh', puis de saisir Sudo ./proxyon.sh {Host} {port}. A titre d'exemple, considérons ceci:

 $ Sudo ./proxyon.sh 10.2.20.17 8080
 OR
 $ Sudo ./proxyon.sh myproxy.server.com 8080

Où '10 .2.20.17 'est l'adresse IP du serveur proxy - vous pouvez également saisir quelque chose comme myproxy.server.com - et' 8080 'le port. Après cela, déconnectez-vous et connectez-vous à votre compte pour vous assurer que tout est configuré. Vous pouvez commencer à utiliser Internet ou autre chose. Et quand vous voulez désactiver le proxy, allez dans le répertoire contenant 'proxyoff.sh' et tapez:

 $ Sudo ./proxyoff.sh

Cela désélectionnera tous vos serveurs mandataires. Maintenant, déconnectez-vous et reconnectez-vous pour passer en mode normal.

108
ish

il existe un outil graphique appelé UbProxy, qui définit l’ensemble du proxy système, via une interface graphique (GUI). Le seul problème pour moi était que je devais déconnecter mon utilisateur et me reconnecter pour charger la configuration. Est très simple à utiliser. https://code.google.com/p/ubproxy/

8
Sergio

J'ai quelques fonctions pour traiter cela. Appelez-les comme ça:

myProxyOn

https://Gist.github.com/fernando-basso/635204

#!/usr/bin/env bash

# gsettings list-recursively org.gnome.system.proxy

# Change de ip address and port number accordingly.
function myProxyOn() {
    gsettings set org.gnome.system.proxy mode 'manual' # ' manual / nome / automatic '
    gsettings set org.gnome.system.proxy.http Host '10.0.0.1'
    gsettings set org.gnome.system.proxy.http port 8080
    gsettings set org.gnome.system.proxy.https Host '10.0.0.1'
    gsettings set org.gnome.system.proxy.https port 8080
    gsettings set org.gnome.system.proxy.ftp Host '10.0.0.1'
    gsettings set org.gnome.system.proxy.ftp port 8080

    echo "Configuração do 'System Proxy' settada para 'manual', com Host 10.0.0.1, port 8080."
}

function myProxyOff() {
    gsettings set org.gnome.system.proxy mode 'none' # ' manual / nome / automatic '
    echo "Proxy cofigurado para 'none'."
}

function proxyOn() { # {{{
    #echo -n 'Username: '
    #read -e username
    #echo -n 'Password: '
    #read -es password
    #echo ''
    echo 'Setting variable "http_proxy"...'
    #export http_proxy="http://$username:[email protected]:8080/"
    export http_proxy="http://10.0.0.1:8080/"
    echo 'Setting variable "https_proxy..."'
    export https_proxy="https://10.0.0.1:8080/"
    echo 'Setting variable "ftp_proxy"...'
    #export ftp_proxy="http://$username:[email protected]:8080/"
    export ftp_proxy="ftp://10.0.0.1:8080/"
    echo 'Done!'
}

function proxyOff() {
    unset HTTP_PROXY
    unset http_proxy
    unset FTP_proxy
    unset ftp_proxy
    echo -e "\nProxy environment variables removed!"
}
3
Fernando Basso

Il n'est pas nécessaire de redémarrer tout le système pour apt-get Tweak via le fichier proxy95 dans /etc/apt/apt.conf.d

  • Cela fonctionne juste immédiatement après l'écriture du fichier et
  • il est parti immédiatement après la disparition du fichier.

Envisagez l’utilisation d’un script pour activer et désactiver le fichier en le renommant * .bak pour un changement rapide de proxy si nécessaire.

0
Dee