J'utilise le serveur Ubuntu 10.04 LTS, avec le modèle de sécurité par défaut (root verrouillé, utilisant sudo
pour élever les privilèges). J'apprécie de temps en temps de l'utiliser sudo -i
lorsque je devrai exécuter une série de commandes avec des privilèges élevés, ou quand je devrai fouiller dans des répertoires avec des privilèges root uniquement.
Parfois, lors de la configuration d'un logiciel qui s'exécutera comme son propre compte système non privilégié ( adduser --system --group --no-create-home --disabled-login some-daemon-user
), je trouve que j'ai besoin d'exécuter une séquence de commandes en tant qu'utilisateur , plutôt que moi-même ou root. J'ai essayé d'utiliser sudo -i -u some-daemon-user
, mais il renvoie simplement un 1
état sans aucun message d'erreur.
Je l' ai vérifié le syslog
, messages
, auth
, et debug
fichiers journaux /var/log
et aucun d'entre eux comprennent des messages référence sudo
ou le compte en question.
Alors, est-il possible de devenir un autre utilisateur non root, de type sudo sans simplement définir un mot de passe et se connecter (comme eux)? Mon système est-il «cassé» d'une manière ou d'une autre?
la source
sudo
pour exécuter un shell en tant qu'utilisateur, comme Florian le suggère ci-dessus?passwd
fichier, et non d' exécuter un shell en tant qu'utilisateur. Je t'ai eu!sudo -i
exécute le shell spécifié par l'entrée de la base de données de mots de passe de l'utilisateur cible, qui est/bin/false
destinée à votre utilisateur système.Utilisation
ou
si vous souhaitez définir la variable d'environnement $ HOME définie pour l'utilisateur cible.
la source