Commande pour trouver le user connecté
Hello,
Une petite question aux spécialistes.
Je me connecte sur une machine Red Hat avec moba xterm.
Pour se faire, je m'identifie avec mon user (exemple : dupond), puis, avec ce user dupond, je fais un sudo su - sur le user batch (exemple : monbatch).
J'aimerais savoir s'il y a une commande qui me permet, lorsque je suis connecté en tant que monbatch, de retrouver avec quel user je suis connecté ? (ici, dupond) ?
J'aimerai utiliser cette variable dans un script, mais impossible de trouver.
Le who me ressort la liste des users connectés sur ma machine, et je ne connais pas tellement d'autres commandes.
Merci et bonne soirée !
digression : contresens de `sudo su -'
Bonjour,
on (je) le répète souvent sur ce forum : sudo su - est un contresens diffusé par des sites peu scrupuleux.
sudo -i !!!
RE: digression : contresens de `sudo su -'
Citation:
Envoyé par
N_BaH
non.
mais ça m'énerve de voir se diffuser des contresens.
il vous en prie. :)
ça ne fonctionne pas comment ?
il y a un message d'erreur ?
... ?
Bah, faut dire que sudo -i n'est pas la même chose que sudo su - :aie:
On peut très bien avoir les autorisations depuis sudo d'utiliser su, mais pas le droit à d'autres commandes...
RE: digression : contresens de `sudo su -'
Citation:
Envoyé par man sudo
-i, --login [...]
If no command is specified, an interactive shell is executed.
[...]
dans sudo -i, il n'y a pas de commande.
je sais qu'on restreindre les capacités d'exécution d'un utilisateur/groupe, c'est-à-dire n'autoriser l'emploi que de quelques commandes, excluant ainsi toutes les autres.
il pourrait y avoir une option de /etc/sudoers qui interdirait de se connecter en exécutant un shell interactif ? ou qui interdirait l'emploi de certaines commandes, et autoriserait toutes les autres ?
EDIT: je viens de comprendre ta phrase : en autorisant su, on interdit les autres.
reste : mais si aucune commande n'est indiquée, ça interdirait aussi d'exécuter le shell de connexion ?
RE: digression : contresens de `sudo su -'
Oui, car implicitement, si aucune commande n'est passée en paramètre, c'est exactement comme si tu lui avais passé le shell de connection de l'utilisateur, et donc si par exemple celui-ci est /bin/bash, tu aurais:
Code:
1 2 3
| $ sudo -i
[sudo] password for toto:
Sorry, user toto is not allowed to execute '/bin/bash' as root on localhost.localdomain. |
Et dans l'exemple que je donne, cet user à la droit de faire un /bin/su:
Code:
1 2
| # cat /etc/sudoers.d/toto-sudoer
toto ALL=NOPASSWD: /bin/su |
RE: digression : contresens de `sudo su -'
:ccool:
mais je ne désarme pas :
d'abord, sudo -i (ou sudo -s comme l'indique ggnore (la différence se fait au niveau de l'environnement d'exécution, comme su - et su)),
puis, SI ça ne fonctionne pas à cause de l'interdiction implicite d'exécuter le $SHELL : sudo su-. :evilred: