SYSTEMD-ASK-PASSWORD(1)

NOM
systemd-ask-password – Demander à l’utilisateur un mot de passe du système

SYNOPSIS

systemd-ask-password [OPTIONS...] [MESSAGE]

DESCRIPTION

systemd-ask-password peut être utilisé pour demander interactivement un mot de passe ou une phrase secrète en spécifiant une question sur l’invite de commande. Lorsqu’un TTY est utilisé, un mot de passe y est demandé et affiché sur la sortie standard. Lorsque utilisé sans TTY ou avec l’option --no-tty, il utilise un mécanisme de requête basé sur un agent pour tout le système ou pour un utilisateur particulier, et qui permet aux utilisateurs actifs de répondre à l’aide de plusieurs agents listés ci-après.

Le but de cet outil est de demander des mots de passe pour tout le système ou pour un utilisateur particulier — dans le premier cas, cela peut être des mots de passe non associés à un utilisateur particulier. Cela peut être par exemple le déverrouillage d’un disque dur chiffré lorsqu’il est branché ou, au démarrage, la saisie d’une phrase secrète de certificat SSL pour le web ou des serveurs VPN.

Les agents possibles au niveau système sont :

    • un agent de mot de passe à l’amorçage demandant à l’utilisateur un mot de passe en utilisant plymouth(8) ;

    • un agent de mot de passe à l’amorçage interrogeant l’utilisateur directement sur la console — systemd-ask-password-console.service(8) ;

    • un agent demandant la saisie d’un mot de passe à travers un message de wall(1) — systemd-ask-password-wall.service(8) ;

    • un agent TTY engendré temporairement lors d’invocations de systemctl(1) ;

    • un agent en ligne de commande pouvant être démarré temporairement pour traiter une file d’attente de requêtes de mot de passe — systemd-tty-ask-password-agent --query.

La demande de mot de passe pour tout le système est une opération demandant des privilèges, de là tous les agents listés ci-dessus (excepté le dernier) sont exécutés en tant que services du système avec privilèges. Le dernier demande des privilèges plus élevés, aussi doit-il être exécuté à travers run0(1) ou similaire.

D’autres agents peuvent être mis en œuvre en suivant la spécification d’agent de mot de passe de systemd[1].

Si un mot de passe est demandé sur un TTY, l’utilisateur peut presser la touche TAB pour cacher les astérisques normalement affichés pour chaque caractère saisi. Un appui sur la touche Retour Arrière comme première touche a le même effet.

OPTIONS

Les options suivantes sont comprises :

--icon=
    Indiquer un nom d’icône à côté de la demande de mot de passe, qui peut être utilisé par tous les agents gérant une interface graphique. Le nom d’icône doit suivre la spécification de nommage d’icône d’XDG[2].

--id=
    Indiquer un identifiant pour cette demande de mot de passe. L’identifiant est choisi librement et permet de reconnaitre les demandes des agents impliqués. Il doit inclure le sous-système réalisant la requête et l’objet spécifique de destination. Exemple : « --id=cryptsetup:/dev/sda5 ».

    Ajouté dans la version 227.

--keyname=
    Configurer le nom d’une clé du trousseau du noyau à utiliser comme cache pour le mot de passe. Si cette option est activée, l’outil tentera d’enregistrer tous les mots de passe collectés dans le trousseau du noyau du superutilisateur, sous la forme d'une clé portant le nom spécifié. Si elle est combinée avec l’option --accept-cached, cette option tentera également de récupérer ces mots de passe mis en cache à partir de la clé du trousseau du noyau au lieu d’interroger immédiatement l’utilisateur. En utilisant cette option, le trousseau du noyau peut servir de cache efficace pour éviter de demander sans cesse des mots de passe aux utilisateurs, s’il existe plusieurs objets pouvant être déverrouillés avec le même mot de passe. La clé mise en cache aura un délai d’expiration de 2,5 min, après quoi elle sera supprimée du trousseau du noyau. Notez qu’il est possible de mettre en cache plusieurs mots de passe sous le même nom de clé ; dans ce cas, ils seront stockés sous forme de liste de mots de passe séparés par NULL. keyctl(1) permet d’accéder à la clé mise en cache directement à l’aide du trousseau de clés du noyau. Exemple : « --keyname=cryptsetup »

    Ajouté dans la version 227.

--credential=
    Configurer les identifiants pour pouvoir y lire le mot de passe, s’il existe. Cette option peut être utilisée conjointement avec les réglages ImportCredential=, LoadCredential= et SetCredential= dans les fichiers d’unité. Consulter systemd.exec(5) pour plus de détails. S’il n’y est pas indiqué, c’est « password » par défaut. Cette option n’a aucun effet si aucun répertoire d’identifiants n’est passé au programme (c’est-à-dire $CREDENTIALS_DIRECTORY n’est pas définie) ou si aucun identifiant pour le nom indiqué n’existe.

    Ajouté dans la version 249.

--timeout=
    Indiquer le délai d’attente de requête en seconde. Par défaut, 90 s. Un délai de zéro conduit à un temps d’attente infini.

--echo=yes|no|masked
    Contrôler si la saisie de l’utilisateur doit être affichée. Cette option prend un booléen ou la chaine spéciale « masked » (valeur par défaut). Si activée, les caractères saisis sont affichés littéralement, ce qui est utile pour une invite de nom d’utilisateur ou d’autres données non protégées. Si désactivée, les caractères saisis ne sont en aucune façon affichés, l’utilisateur n’aura aucun retour de sa saisie. Si définie à « masked », un astérisque (*) est affiché pour chaque caractère saisi. Dans ce mode, si l’utilisateur frappe la touche de tabulation (↹), l’affichage est supprimé. De même, si l’utilisateur frappe la touche Retour Arrière (⌫) tandis qu’aucune donnée n’a été saisie autrement, l’affichage est aussi supprimé.

    Ajouté dans la version 249.

--echo, -e
    Équivalent à --echo=yes, voir ci-avant.

    Ajouté dans la version 217.

--emoji=yes|no|auto
    Contrôler s’il faut préfixer la requête avec une émoticône de verrou et clé (🔐), si les réglages du TTY le permettent. La valeur par défaut est « auto » qui par défaut est « yes », à moins que --echo=yes ne soit indiquée.

    Ajouté dans la version 249.

--no-tty
    Ne jamais demander de mot de passe sur le TTY actuel même s’il en existe un disponible. Toujours utiliser le système d’agents.

--accept-cached
    Si indiquée, accepter les mots de passe mis en cache, c’est-à-dire des mots de passe saisis auparavant.

--multiple
    Utilisée conjointement avec l’option --accept-cached, accepter plusieurs mots de passe. Cette option affiche un mot de passe par ligne.

--no-output
    Ne pas afficher les mots de passe sur la sortie standard. C’est utile pour stocker un mot de passe dans le trousseau de clés du noyau avec l’option --keyname=, sans affichage sur l’écran ou dans des journaux.

    Ajouté dans la version 230.

-n
    Par défaut, quand le mot de passe obtenu est écrit sur la sortie standard, il est suffixé d’un caractère de nouvelle ligne. Cela peut être désactivé avec le commutateur -n, de la même manière que celui du même nom de la commande echo(1).

    Ajouté dans la version 249.

--user, --system
    Contrôler s’il faut demander les agents de mot de passe pour le système entier ou celui propre à l’utilisateur. Par défaut, si l'opération est effectuée avec des privilèges, les agents pour tout le système sont interrogés, sinon, ce sont ceux propres à chaque utilisateur. Ces options permettent d’outrepasser ce comportement automatique.

    Ajouté dans la version 257.

-h, --help
    Afficher un aide-mémoire succinct et quitter.

CODE DE RETOUR

En cas de succès, 0 est renvoyé, autrement, un code d'échec différent de zéro est renvoyé.

VOIR AUSSI

systemd(1), systemd-ask-password-console.service(8), systemd-tty-ask-password-agent(1), keyctl(1), plymouth(8), wall(1)

NOTES

1.  Spécification d’agent de mot de passe de systemd
    https://systemd.io/PASSWORD_AGENTS/

2.  Spécification de nommage d’icône d’XDG
    https://standards.freedesktop.org/icon-naming-spec/icon-naming-spec-latest.html

TRADUCTION
La traduction française de cette page de manuel a été créée par Jean-Paul Guillonneau <guillonneau.jeanpaul@free.fr>

Cette traduction est une documentation libre ; veuillez vous reporter à la GNU General Public License version 3 (https://www.gnu.org/licenses/gpl-3.0.html) concernant les conditions de copie et de distribution. Il n'y a aucune RESPONSABILITÉ LÉGALE.

Si vous découvrez un bogue dans la traduction de cette page de manuel, veuillez envoyer un message à debian-l10n-french@lists.debian.org.