Définir le proxy de manière permanente

Fermé
katsuo49 Messages postés 330 Date d'inscription vendredi 19 juin 2009 Statut Membre Dernière intervention 11 novembre 2014 - Modifié par katsuo49 le 2/09/2012 à 15:10
katsuo49 Messages postés 330 Date d'inscription vendredi 19 juin 2009 Statut Membre Dernière intervention 11 novembre 2014 - 4 sept. 2012 à 21:56
Bonjour,
je me déplace actuellement entre deux endroits, un étant connecté à internet par une box et l'autre par le réseau renater, du coup je suis obligé de modifier mon .bashrc à chaque fois pour changer de proxy.
Je voudrais donc savoir si c'est possible depuis un terminal de changer de proxy de manière permanente. Les commandes export et setenv ne faisant que modifier les variables pour le terminal courant.

Note: j'ai cherché un peu avant de poser la question et je ne pense pas mais sait-on jamais. Du coup je pensais écrire un script pour automodifier le .bashrc


4 réponses

tuxboy Messages postés 995 Date d'inscription lundi 23 juillet 2012 Statut Membre Dernière intervention 28 mai 2019 190
2 sept. 2012 à 19:51
Dans ton .bashrc, tu fais une fonction qui modifie ta variable de proxy :
export http_proxy="proxhtp://monproxybox:3128"

function renater () {export http_proxy="proxhtp://monproxyrenater:3128"}

Ainsi quand tu es en déplacement, tu as juste à taper :
renater
0
katsuo49 Messages postés 330 Date d'inscription vendredi 19 juin 2009 Statut Membre Dernière intervention 11 novembre 2014 25
3 sept. 2012 à 18:29
Je viens de tester mais quand je lance la fonction de changement de proxy que j'ai créé dans le .bashrc en suivant ton exemple ça change le proxy pour le terminal depuis lequel je le lance mais pas de manière global, par exemple je met pas le proxy dans le .bashrc du tout je lance chromium ça ne fonctionne pas, maintenant je met le proxy ça fonctionne. Ensuite j'indique les fonctions et quand je lance l'annulation de proxy je peux toujours me connecter sans bug avec chromium alors que c'est pas sencé être le cas.

J'ai ajouté ça à mon .bashrc à la place de ma définition de proxy:
function proxy_renater ()
{
	export http_proxy="cache.cites-u.univ-nantes.fr:3128"
	export ftp_proxy="cache.cites-u.univ-nantes.fr:3128"
	export HTTP_PROXY="cache.cites-u.univ-nantes.fr:3128"
	export FTP_PROXY="cache.cites-u.univ-nantes.fr:3128"
}
function proxy_no ()
{
	export http_proxy=""
	export ftp_proxy=""
	export HTTP_PROXY=""
	export FTP_PROXY=""
}
proxy_renater
0
tuxboy Messages postés 995 Date d'inscription lundi 23 juillet 2012 Statut Membre Dernière intervention 28 mai 2019 190
3 sept. 2012 à 23:15
Bien, tu devrais regarder non pas .bashrc mais .profile
0
katsuo49 Messages postés 330 Date d'inscription vendredi 19 juin 2009 Statut Membre Dernière intervention 11 novembre 2014 25
3 sept. 2012 à 23:24
.bash_profile tu veux dire ?
étant donné qu'il ne contient que "[[ -f ~/.bashrc ]] && . ~/.bashrc" je vois pas trop ce que je pourrais regarder --'
0
tuxboy Messages postés 995 Date d'inscription lundi 23 juillet 2012 Statut Membre Dernière intervention 28 mai 2019 190
3 sept. 2012 à 23:31
.profile, le mien contient :

#umask 022

# if running bash
if [ -n "$BASH_VERSION" ]; then
    # include .bashrc if it exists
    if [ -f "$HOME/.bashrc" ]; then
	. "$HOME/.bashrc"
    fi
fi

# set PATH so it includes user's private bin if it exists
if [ -d "$HOME/bin" ] ; then
    PATH="$HOME/bin:$PATH"
fi
0
tuxboy Messages postés 995 Date d'inscription lundi 23 juillet 2012 Statut Membre Dernière intervention 28 mai 2019 190
4 sept. 2012 à 07:57
À la fin de ton fichier .bash_profile tu peux ajouter la commande:
source ~/.bashrc


Ainsi, dès le login, ton script sera lancé.
0
katsuo49 Messages postés 330 Date d'inscription vendredi 19 juin 2009 Statut Membre Dernière intervention 11 novembre 2014 25
4 sept. 2012 à 21:56
l'inclusion est pas déjà faite avec le contenu de mon .bash_profile ? non parce que vu ce qu'il y a d'indiqué moi je lis : si .bashrc existe l'inclure.
0
salut,

il faut tester le réseau auquel tu es connecté, et, selon la réponse, lancer telle ou telle fonction.

tu utilises toujours Xwindow, ou t'arrive-t-il de te logguer en console ?

vu que tu parles de Chromium, je ne vais considérer que le premier cas.
Tu mets le test réseau et les fonctions dans un script, qui sera lancé lors du démarrage de ta session, et ça, ça dépend de ton WM, pas de ton shell.
0
katsuo49 Messages postés 330 Date d'inscription vendredi 19 juin 2009 Statut Membre Dernière intervention 11 novembre 2014 25
3 sept. 2012 à 23:52
je me connecte en console et je lance ma session graphique manuellement avec un xinit.

Sinon oui du coup je vois ce que vous me proposez mais je vois pas trop comment détecter le réseau. Faudrait que je teste avec un ping peut-être si le ping est bon je n'active pas de proxy sinon j'active le proxy. Le problème c'est que chez moi je me connecte en wifi et du coup la connexion se fait avec wicd après que Openbox soit lancé donc après le test donc le proxy sera activé tout le temps.

Ce que je comprend pas c'est que ça soit si difficile à gérer à la main alors qu'avant sous Ubuntu j'allais juste dans les paramètres et ça fonctionnait direct. pourtant ça devait là aussi juste changer les variables d'environnement non ?
0
Le problème c'est que chez moi je me connecte en wifi et du coup la connexion se fait avec wicd après que Openbox soit lancé donc après le test donc le proxy sera activé tout le temps.

Alors, je testerais que eth0 (par défaut) est up
0