|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | ||
|
Membre habitué
![]() Inscription : avril 2003 Messages : 290 ![]() |
Bonjour à tous
Je ne sais pas si ma question est bien placée, ni même si elle est intelligente (ce qui est plus embêtant ...) Je souhaite créer un utilisateur qui n'aurait le droit d'exécuter qu'une seule commande. est-ce possible ? Cette commande serait qq chose du genre : Code :
jb |
||
|
|
00
|
|
|
#2 |
![]() ![]() R&D en systemes informatiques bas niveau Unix/Linux Inscription : mai 2004 Messages : 5 497 ![]() |
Bonjour,
A ce que j'en sais, il n'est pas possible d'être si restreint que ca ! Par contre, si tu expliques un peu le pourquoi du comment, il existe peut-être une solution à laquelle tu n'as pas pensé (comme sudo par exemple). |
|
|
00
|
|
|
#3 |
|
Membre Expert
![]() ![]() Inscription : décembre 2002 Messages : 1 423 ![]() |
Si l'utilisateur n'a le droit de lancé qu'une seule commande, il n'aura pas d'interface graphique ni quoi que se soit d'autre car ce sont aussi des commandes. Si c'est celà que tu veux, mets l'ensemble de ta commande dans un fichier /usr/bin/macommande.sh et rend la exécutable 'chmod +x /usr/bin/macommande.sh'. Puis ouvre le fichier /etc/passwd et recherche la ligne de ton utilisateur. Remplace la dernière section (le lancement d'un shell normalement) par /usr/bin/macommande.sh. Ainsi, à chaque fois qu'il essayera de se loguer, la commande sera exécuté et il ne se connectera pas
__________________
Reportage d'Arte sur Linux |
|
|
00
|
|
|
#4 |
![]() ![]() Bernard SIAUDEnseignant Inscription : novembre 2003 Messages : 4 400 ![]() |
narmataru : j'avais vu qu'il fallait avant définir ton script comme faisant parti des shell possible. À moins que ce ne soit uniquement pour les indiquer comme shell dans la commande adduser ?
__________________
Modérateur Mandriva Linux Amicalement VOOotre Troumad Alias Bernard SIAUD à découvrir sur http://troumad.org Mes tutoriels |
|
|
00
|
|
|
#5 | |
|
Membre Expert
![]() ![]() Inscription : décembre 2002 Messages : 1 423 ![]() |
Citation:
Je ne savais même pas qu'on pouvait définir une liste de shell utilisable. Comment fais-tu ?
__________________
Reportage d'Arte sur Linux |
|
|
|
00
|
|
|
#6 | |
|
Inactif
Inscription : mars 2006 Messages : 852 ![]() |
Citation:
Bon, en tous cas, ce n'est pas un init standard dans ce cas (parce qu'il n'y a que init qui aurait techniquement le moyen d'interdire l'execution d'un shell). A moins qu'il n'y ait confusion avec un tout autre élément. |
|
|
|
00
|
|
|
#7 | ||||
![]() ![]() Bernard SIAUDEnseignant Inscription : novembre 2003 Messages : 4 400 ![]() |
Voici la liste sous Mandriva Hangzhou ( http://forum.club.mandriva.com/viewt...cc866918dae7e6 , cooker dernier cri) :
Code :
Code :
__________________
Modérateur Mandriva Linux Amicalement VOOotre Troumad Alias Bernard SIAUD à découvrir sur http://troumad.org Mes tutoriels |
||||
|
|
00
|
|
|
#8 | ||
|
Inactif
Inscription : mars 2006 Messages : 852 ![]() |
C'est interessant ça Troumad
Citation:
Citation:
Mais ça m'a l'air assez facile à contourner... isn't it ? |
||
|
|
00
|
|
|
#9 | |
|
Membre habitué
![]() Inscription : avril 2003 Messages : 290 ![]() |
Citation:
J'ai donc créé un utilisateur, un fichier .sh qui exécute une commande (le script fonctionne, il est bien executable, etc ...). Je me connecte sur mon serveur, me logue avec ce compte fictif et malheureusement, j'ai à peine le temps d'apercevoir "last login at ...." que la console efface tout et me propose de me loguer ... Soit je fais qqchose de mal, soit cette solution n'est pas fonctionnelle ... |
|
|
|
00
|
|
|
#10 | ||||||
|
Membre habitué
![]() Inscription : avril 2003 Messages : 290 ![]() |
Je viens de m'apercevoir de ceci ...
Code :
Code :
Code :
|
||||||
|
|
00
|
|
|
#11 |
|
Membre émérite
![]() Inscription : janvier 2004 Messages : 990 ![]() |
Hibou57, je pense qu'il n'est pas possible de contourner la vérification de /etc/shells par chsh. Car le but final est d'écrire dans le fichier /etc/passwd, ce qui nécessite les droits root.
Il y a bien sûr moyen d'utiliser un autre shell en le lançant par le .bashrc (ou autre) mais là on n'a rien contourné du tout.
__________________
Les vaches ne peuvent PAS voler, quoi qu'elles aient pu vous raconter. |
|
|
00
|
|
|
#12 |
|
Membre éclairé
![]() Inscription : juin 2002 Messages : 376 ![]() |
Une idée juste comme ça :
supprimer le path par defaut et en définir un comme : PATH=/etc/fichier_de_path non accessible en ecriture copier les qq commandes et les bibliothèque necessaire dans le répertoire indiqué dans /etc/fichier_de_path et c'est tout. En gros la méthode du chroot appliquée à quelques commandes de base :p
__________________
www.kywyxy.net |
|
|
00
|
|
|
#13 |
|
Membre émérite
![]() Inscription : janvier 2004 Messages : 990 ![]() |
Ça n'empêchera pas l'utilisateur d'indiquer le chemin complet du binaire à exécuter, et d'exécuter n'importe quelle commande.
Cela dit, un vrai chroot n'est peut-être pas plus mal.
__________________
Les vaches ne peuvent PAS voler, quoi qu'elles aient pu vous raconter. |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com