View previous topic :: View next topic |
Author |
Message |
toufou Guru

Joined: 07 Jun 2004 Posts: 326
|
Posted: Mon Nov 07, 2005 11:21 pm Post subject: [reseau] Un petit script ? (resolu) |
|
|
salut à tous
pour demarrer mon reseau, je dois en tant que root faire:
ifconfig eth0 up
dhcpcd eth0
je veux pas que ça se fasse automatiquement au démarrage
je voudrais qu'un utilisateur puisse le faire.
donc, j'ai pensé à un script.
mais si je sais créer un fichier avec les commandes et le rendre executable, je bloque sur les authorisations.
en plus, idéalement, ce script lancerai la connexion quand on l'active et la couperai quand on le desactive
et là, je sais pas faire.
alors, si vous pouviez m'en concocter un avec un peu de commentaires (pour que j'aprenne), ce serait que du bonheur.
merci d'avance
Last edited by toufou on Wed Nov 09, 2005 3:58 pm; edited 1 time in total |
|
Back to top |
|
 |
kernelsensei Bodhisattva


Joined: 22 Feb 2004 Posts: 5619 Location: Woustviller/Moselle/FRANCE (49.07°N;7.02°E)
|
Posted: Mon Nov 07, 2005 11:29 pm Post subject: |
|
|
pourquoi ne pas utiliser les init scripts ?
tu configures ton /etc/conf.d/net et roulaize !
pour le lancement et coupure de connec, je vois pas trop ce que tu veux dire ... _________________ $ ruby -e'puts " .:@BFegiklnorst".unpack("x4ax7aaX6ax5aX15ax4aax6aaX7ax2aX5aX8 \
axaX3ax8aX4ax6aX3aX6ax3ax3aX9ax4ax2aX9axaX6ax3aX2ax4ax3aX4aXaX12ax10aaX7a").join' |
|
Back to top |
|
 |
bibi.skuk Guru

Joined: 01 Aug 2005 Posts: 425
|
Posted: Mon Nov 07, 2005 11:58 pm Post subject: |
|
|
methode bourrin : met tout ca dans /etc/ini.d/ou_ca_va_bien
tu ne lemet pas a demarrer par default, et tu installe sudo avec les params qui vont bien pour autoriser ton utilisateur a executer ce script la. |
|
Back to top |
|
 |
toufou Guru

Joined: 07 Jun 2004 Posts: 326
|
Posted: Tue Nov 08, 2005 12:57 am Post subject: |
|
|
kernel_sensei wrote: | pourquoi ne pas utiliser les init scripts ?
tu configures ton /etc/conf.d/net et roulaize !
pour le lancement et coupure de connec, je vois pas trop ce que tu veux dire ... |
ben, si je clique sur mon fichier (ou raccourci, on se comprend), il lance la connexion et, si elle est deja lancée, il la coupe
suis-je assez clair ?  |
|
Back to top |
|
 |
bong Apprentice


Joined: 26 Oct 2004 Posts: 276 Location: Brest / Metz
|
Posted: Tue Nov 08, 2005 6:16 am Post subject: |
|
|
essaye avec un truc come ca:
Code: | #!/bin/bash
NETSCRIPT = "/etc/init.d/net.eth0"
LOCKFILE = "/var/lock/monreseau.lock"
if [[ -a $LOCKFILE]]
then
sudo $NETSCRIPT stop
rm $LOCKFILE
else
sudo $NETSCRIPT start
> $LOCKFILE
fi |
(Ecrit rapido ce matin et pas testé, ya surement des erreurs mais je pense que le principe est correct...)
Edit: Oula oui, j'etais pas réveillé en ecrivant ca... ==> corrections ! |
|
Back to top |
|
 |
anigel Bodhisattva


Joined: 14 Apr 2003 Posts: 1894 Location: Un petit bled pas loin de Limoges ;-)
|
Posted: Tue Nov 08, 2005 7:31 am Post subject: Re: [reseau] Un petit script ? |
|
|
Bonjour,
toufou wrote: | je veux pas que ça se fasse automatiquement au démarrage
je voudrais qu'un utilisateur puisse le faire. |
Si j'ai bien saisi ta problématique, tu voudrais que :
- la connexion ne se lance pas à chaque démarrage, mais uniquement lorsque tu en as besoin
- tu n'aies pas besoin de passer root pour lancer ce script
Si c'est bien ça que tu recherche, je te suggère de regarder du côté de sudo (emerge sudo). C'est un petit logiciel qui te permet, une fois configuré correctement (avec visudo), de lancer, en tant qu'utilisateur, des commandes normalement réservées à root.
Hypothétiquement, cela donnerait, pour démarrer ta connexion réseau : sudo /etc/init.d/net.eth0 start, et pour l'arrêter : sudo /etc/init.d/net.eth0 stop. Après, si tu veux encore raccourcir tout ça, tu peux te créer des alias, genre netstart='sudo /etc/init.d/net.eth0 start'.
Amicalement, _________________ Il y a 10 sortes d'individus en ce bas-monde : ceux qui causent binaire, et les autres. |
|
Back to top |
|
 |
spider312 Veteran


Joined: 02 Oct 2004 Posts: 1274 Location: France > Savoie > Chambery
|
Posted: Tue Nov 08, 2005 8:51 am Post subject: |
|
|
un SUID root ne serait-il pas plus approprié dans ce cas que sudo ?
Enfin, par contre, que tu veuilles ou non le lancer au démarrage, je ne comprends pas pourquoi tu ne veux pas utiliser les scritps de démarage gentoo, ils sont faits pour ça, et même très bien faits ...
Et au passage, si tu expliquais pourquoi tu ne veux pas que ce soit lancé au démarage, ce serait pas mal, on pourrait peut-être te proposer d'autres solutions, je sais qu'il existe des programmes permettant de détecter si un cable réseau est branché et démarer le réseau tout seul par exemple |
|
Back to top |
|
 |
kernelsensei Bodhisattva


Joined: 22 Feb 2004 Posts: 5619 Location: Woustviller/Moselle/FRANCE (49.07°N;7.02°E)
|
Posted: Tue Nov 08, 2005 9:27 am Post subject: |
|
|
@spider312 : Mieux vaut un sudo bien configuré qu'un SUID, surtout dans in script qui appelle des programmes externes ..
Dans le cas d'un suid n'importe quel user (appartenant a un groupe donné) pourrait executer le script .. et en modifiant quelques variables d'environement lancer un bash plutot que ifconfig (par exemple) et ainsi avoir un shell root ... _________________ $ ruby -e'puts " .:@BFegiklnorst".unpack("x4ax7aaX6ax5aX15ax4aax6aaX7ax2aX5aX8 \
axaX3ax8aX4ax6aX3aX6ax3ax3aX9ax4ax2aX9axaX6ax3aX2ax4ax3aX4aXaX12ax10aaX7a").join' |
|
Back to top |
|
 |
geekounet Bodhisattva


Joined: 11 Oct 2004 Posts: 3772
|
Posted: Tue Nov 08, 2005 11:44 am Post subject: Re: [reseau] Un petit script ? |
|
|
toufou wrote: |
en plus, idéalement, ce script lancerai la connexion quand on l'active et la couperai quand on le desactive
et là, je sais pas faire. |
Installe simplement ifplugd et ça roule tout seul, ethernet ou wifi. |
|
Back to top |
|
 |
toufou Guru

Joined: 07 Jun 2004 Posts: 326
|
Posted: Wed Nov 09, 2005 12:31 pm Post subject: Re: [reseau] Un petit script ? |
|
|
anigel wrote: | Bonjour,
Si j'ai bien saisi ta problématique, tu voudrais que :
- la connexion ne se lance pas à chaque démarrage, mais uniquement lorsque tu en as besoin
- tu n'aies pas besoin de passer root pour lancer ce script
Si c'est bien ça que tu recherche, je te suggère de regarder du côté de sudo (emerge sudo). C'est un petit logiciel qui te permet, une fois configuré correctement (avec visudo), de lancer, en tant qu'utilisateur, des commandes normalement réservées à root.
Hypothétiquement, cela donnerait, pour démarrer ta connexion réseau : sudo /etc/init.d/net.eth0 start, et pour l'arrêter : sudo /etc/init.d/net.eth0 stop. Après, si tu veux encore raccourcir tout ça, tu peux te créer des alias, genre netstart='sudo /etc/init.d/net.eth0 start'.
Amicalement, |
mes contraintes: sudo ne fonctionne pas chez moi. su oui mais pas sudo. on a jamais réussi à comprendre pourquoi.
je voudrais pouvoir le desactiver et l'activer à volonté parce que c'est un portable, que je peux changer d'environnement et que je voudrais que ce soit le plus facile possible. Enfin, je voudrais pouvoir desactiver mon wifi, par exemple, pour pouvoir gagner encore un peu plus en autonomie.
je vais voir ducôté de ifplug comme proposé (minidoc ici: http://www.gentoo.org/doc/fr/handbook/handbook-x86.xml?part=4&chap=6) |
|
Back to top |
|
 |
TGL Bodhisattva

Joined: 02 Jun 2002 Posts: 1978 Location: Rennes, France
|
Posted: Wed Nov 09, 2005 12:49 pm Post subject: Re: [reseau] Un petit script ? |
|
|
Ouais, pour un portable qui change de réseau ou qui n'en a pas tout le temps, ifplugd est effectivement très bien adapté... Y'a rien à faire, pas de question à se poser, tu branches/débranches ton cable et puis c'est tout.
Dans le même genre, en concurrence directe même, il y a aussi "netplug" qui est très bien (par contre il faut un baselayout récent). En fait maintenant c'est lui que j'utilise à la place de ifplugd, mais bon, je ne saurais pas vraiment dire pourquoi, je voulais l'essayer suite à ce post de Roy Marples, et puis je l'ai gardé depuis.
Bref, tu as au moins deux solutions confortables sous le coude  |
|
Back to top |
|
 |
geekounet Bodhisattva


Joined: 11 Oct 2004 Posts: 3772
|
Posted: Wed Nov 09, 2005 12:58 pm Post subject: |
|
|
Par contre, j'ai remarqué que ifplugd ne me connecte pas automatiquement aux réseaux wifi cryptés, parce qu'il détecte la connexion à un point d'accés puis lance le script correspondant. Or il faut la clé wep pour s'y connecter. Est-ce que netplug arrange ça ? |
|
Back to top |
|
 |
TGL Bodhisattva

Joined: 02 Jun 2002 Posts: 1978 Location: Rennes, France
|
Posted: Wed Nov 09, 2005 1:19 pm Post subject: |
|
|
pierreg wrote: | Par contre, j'ai remarqué que ifplugd ne me connecte pas automatiquement aux réseaux wifi cryptés, parce qu'il détecte la connexion à un point d'accés puis lance le script correspondant. Or il faut la clé wep pour s'y connecter. Est-ce que netplug arrange ça ? | J'en doute, puisque me semble-t-il netplug ne fonctionne que pour les réseaux filaires, contrairement à ifplugd, donc ici il ne va pas t'aider.
Mais par contre, ifplugd + wifi en WEP, il me semble bien que ça marchait la dernière fois que j'ai essayé (avec un baselayout 1.12.qqch en tout cas, ce qui fait dans ce cas une différence de taille puisque en gros c'est les scripts d'init qui gèrent ifplugd/netplug, au lieu du contraire). Faudra que je reteste... |
|
Back to top |
|
 |
toufou Guru

Joined: 07 Jun 2004 Posts: 326
|
Posted: Wed Nov 09, 2005 1:23 pm Post subject: |
|
|
la question de pierreg est interessante mais j'ai cru comprendre que netplug ne gerais pas le wifi
et moi aussi j'ai une question, ifplugd, il faut le lancer au demarrage avec rc-update ?
question subsidiaire, est-ce que je peux facilement retiré ma carte réseau pour la remplacer par une autre (par exemple, une wifi par une filaire) ? |
|
Back to top |
|
 |
TGL Bodhisattva

Joined: 02 Jun 2002 Posts: 1978 Location: Rennes, France
|
Posted: Wed Nov 09, 2005 1:57 pm Post subject: |
|
|
toufou wrote: | j'ai cru comprendre que netplug ne gerais pas le wifi |
En effet, il me semble bien que non.
toufou wrote: | et moi aussi j'ai une question, ifplugd, il faut le lancer au demarrage avec rc-update ? |
Ça dépend. Autant que je sache :
- avec baselayout 1.11.x (en stable), il faut lancer le script d'init de ifplugd, et c'est lui qui démarre/arrête les net.ethX.
- avec baselayout 1.12.x (en ~arch), c'est le contraire : tu lances les scripts d'init des cartes net.ethX, et c'est eux qui se chargent de gérer ifplugd ou netplug pour les déconnections/reconnections.
Quote: | question subsidiaire, est-ce que je peux facilement retiré ma carte réseau pour la remplacer par une autre (par exemple, une wifi par une filaire) ? | Bah, modulo que ça soit bien une carte supportée par Linux ou un driver additionnel (pas de soucis pour la plupart des filaire, mais faut faire gaffe pour les wifi), c'est pas très problématique non. Pense juste bien :
- à prévoir le coup du driver avant, parce que si t'as des trucs à télécharger pour l'installer, tu peux avoir besoin de ton réseau...
- si tu avais un "alias eth0 <ancien_driver>" dans ton /etc/modules.d/net, pense à l'ajuster pour le nouveau driver. |
|
Back to top |
|
 |
spider312 Veteran


Joined: 02 Oct 2004 Posts: 1274 Location: France > Savoie > Chambery
|
Posted: Wed Nov 09, 2005 2:09 pm Post subject: |
|
|
pierreg wrote: | Par contre, j'ai remarqué que ifplugd ne me connecte pas automatiquement aux réseaux wifi cryptés, parce qu'il détecte la connexion à un point d'accés puis lance le script correspondant. Or il faut la clé wep pour s'y connecter. Est-ce que netplug arrange ça ? |
Quote: | Have a look on waproamd if you need a facility to configure WEP keys before AP associations succeed. | ( http://0pointer.de/lennart/projects/ifplugd/#overview )
Sinon, c'est vrai que ça a l'air interessant ce machin je suppose qu'il faut que tous les modules correspondant aux cartes réseau suceptibles d'être branchées soient chargés au démarage par contre ? et qu'en est-il des scripts d'init dépendant des scripts d'init réseau, comme mpd ou netmount ? leur fonctionnement n'est pas trop perturbé ? (j'aimerais ne pas devoir me passer de musique parcequ'il n'y a pas d'AP dans le coin ) |
|
Back to top |
|
 |
geekounet Bodhisattva


Joined: 11 Oct 2004 Posts: 3772
|
Posted: Wed Nov 09, 2005 2:16 pm Post subject: |
|
|
TGL wrote: | Ça dépend. Autant que je sache :
- avec baselayout 1.11.x (en stable), il faut lancer le script d'init de ifplugd, et c'est lui qui démarre/arrête les net.ethX.
- avec baselayout 1.12.x (en ~arch), c'est le contraire : tu lances les scripts d'init des cartes net.ethX, et c'est eux qui se chargent de gérer ifplugd ou netplug pour les déconnections/reconnections. |
C'est intéressant ça, je suis avec le baselayout 1.12.qqch (une vieille prérelease, ma gentoo n'est pas à jour depuis 1 mois), je testerai une fois à la maison. |
|
Back to top |
|
 |
toufou Guru

Joined: 07 Jun 2004 Posts: 326
|
Posted: Wed Nov 09, 2005 3:04 pm Post subject: |
|
|
ca fonctionne parfaitement chez moi
le wifi n'est pas crypte
je peux changer de carte pcmcia (filaire-wifi) connecter ou deconnecter le cable et à chaque fois, j'ai le reseau
apres verification je suis en baselayout 1.11.12-r4
je prends pas trop de risque à passer à la 1.1.12 ? |
|
Back to top |
|
 |
TGL Bodhisattva

Joined: 02 Jun 2002 Posts: 1978 Location: Rennes, France
|
Posted: Wed Nov 09, 2005 3:17 pm Post subject: |
|
|
toufou wrote: | apres verification je suis en baselayout 1.11.12-r4
je prends pas trop de risque à passer à la 1.1.12 ? | Bof, des risques, probablement pas beaucoup non, mais après tout, pourquoi changer ce qui marche déjà parfaitement ? |
|
Back to top |
|
 |
toufou Guru

Joined: 07 Jun 2004 Posts: 326
|
Posted: Wed Nov 09, 2005 4:00 pm Post subject: |
|
|
TGL wrote: | Bof, des risques, probablement pas beaucoup non, mais après tout, pourquoi changer ce qui marche déjà parfaitement ? |
mais, pour avoir la derniere version, evidemment
plus serieusement, arrivera bien un jour ou je mettrais mon systeme à jour et il semble qu'entre ces deux versions, le fonctionnement de baselayout change. D'où ma question.
merci à tous pour l'aide. |
|
Back to top |
|
 |
bibi.skuk Guru

Joined: 01 Aug 2005 Posts: 425
|
Posted: Wed Nov 09, 2005 5:20 pm Post subject: |
|
|
Hem totalement hors sujet, enfin, presque...
Pourquoi sudo ne marche pas ?? qu'elle est l'erreur qu'il affiche ??
j'ai resolu un probleme de sudo par un simple `chmod 440 /etc/sudoers` |
|
Back to top |
|
 |
toufou Guru

Joined: 07 Jun 2004 Posts: 326
|
Posted: Wed Nov 09, 2005 5:31 pm Post subject: |
|
|
on est HS
pour memoire, sudo n'accepte pas mon mot de passe root
alors que avec su, pas de probleme |
|
Back to top |
|
 |
bibi.skuk Guru

Joined: 01 Aug 2005 Posts: 425
|
Posted: Wed Nov 09, 2005 5:33 pm Post subject: |
|
|
toufou wrote: | on est HS
pour memoire, sudo n'accepte pas mon mot de passe root
alors que avec su, pas de probleme |
sudo ne prend pas ton passe root, mais ton pass utilisateur...
et tu doit editer un peu ton fichier /etc/sudoers pour la config |
|
Back to top |
|
 |
spider312 Veteran


Joined: 02 Oct 2004 Posts: 1274 Location: France > Savoie > Chambery
|
Posted: Wed Nov 09, 2005 9:58 pm Post subject: |
|
|
Bon, mon bilan sur l'utilisation de ifplugd au cas ou quelqu'un ait des réponses à mes interrogations :
* J'ai mis ifplugd et viré mes net.* du runlevel default
* ifplugd se lance bien, mais n'est pas rtès verbeux
* mes scripts réseau n'affichent rien (dommage, j'aimais bien voir mon IP au boot)
* après le démarage, tous mes scripts réseau sont démarés, alors que l'ethernet n'est pas branché
* pourtant, ifplugd détecte bien tout comme il faut
Code: | # ifplugstatus
lo: link beat detected
wifi: link beat detected
gigabit: unplugged |
* du coup, ifconfig me montre l'interface ethernet comme montée, mais n'ayant pas d'IP
Bref, pas vraiment le fonctionnement normal, je n'ai pas encore essayé le branchement/débranchement à chaud, puisque je comptais essentiellement m'en servir pour ne démarer chaque interface réseau au boot que si c'était nécéssaire, et le "hotplug" n'est qu'un cadeau bonus
[edit]Ah, quelques minutes après le boot, et après avoir fait pleins de bidouilles sur les services lancés au démarage, ifconfig n'affiche plus mon interface ethernet, et le service correspondant est arrété, c'est plutôt bizare, mais bon, c'est déja mieux, reste qu'à ce que les scripts affichent leurs texte normal au boot et ce serait nickel  |
|
Back to top |
|
 |
toufou Guru

Joined: 07 Jun 2004 Posts: 326
|
Posted: Fri Nov 11, 2005 1:32 am Post subject: |
|
|
bibi.skuk wrote: |
sudo ne prend pas ton passe root, mais ton pass utilisateur...
et tu doit editer un peu ton fichier /etc/sudoers pour la config |
toujours HS
mais que veux-tu dire
si je fais
sudo mc, c'est pour lancer mc en tant que root. pourquoi est-ce qu'il me demanderait le mot de passe utilisateur ?
bon, je viens de tester c'est effectivement le cas
ça veut dire que n'importe quel utilisateur peut aller trafiquer les fichiers systeme. brr, ça fait froid dans le dos
j'ai regardé sudousers et ça ne m'a guère parlé |
|
Back to top |
|
 |
|
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
|
|