xauth - Utilitaire de fichier d'autorité X
SYNOPSIS
xauth [ -f fichier_auth ] [ -vqibn ] [ commande arg ... ]
DESCRIPTION
Le programme xauth est utilisé pour modifier et afficher les informations d'autorisation utilisées pour se connecter au serveur X. Ce programme est généralement utilisé pour extraire des enregistrements d'autorisation d'une machine et les fusionner dans une autre (comme c'est le cas lors de l'utilisation de connexions à distance ou de l'octroi d'accès à d'autres utilisateurs). Les commandes (décrites ci-dessous) peuvent être entrées de manière interactive, sur la ligne de commande xauth, ou dans des scripts. Notez que ce programme ne contacte pas le serveur X, sauf lorsque la commande generate est utilisée. Normalement, xauth n'est pas utilisé pour créer l'entrée du fichier d'autorité en premier lieu ; le programme qui démarre le serveur X (souvent xdm ou startx) le fait.
OPTIONS
Les options suivantes peuvent être utilisées avec xauth. Elles peuvent être données individuellement (par exemple, -q -i) ou combinées (par exemple, -qi).
-f fichier_auth
Cette option spécifie le nom du fichier d'autorité à utiliser. Par défaut, xauth utilisera le fichier spécifié par la variable d'environnement XAUTHORITY ou .Xauthority dans le répertoire personnel de l'utilisateur.
-q Cette option indique que xauth doit fonctionner silencieusement et ne pas afficher de messages d'état non sollicités. C'est le comportement par défaut si une commande xauth est donnée sur la ligne de commande ou si la sortie standard n'est pas dirigée vers un terminal.
-v Cette option indique que xauth doit fonctionner de manière détaillée et afficher des messages d'état indiquant les résultats de diverses opérations (par exemple, le nombre d'enregistrements lus ou écrits). C'est le comportement par défaut si xauth lit des commandes depuis son entrée standard et que sa sortie standard est dirigée vers un terminal.
-i Cette option indique que xauth doit ignorer les verrous de fichier d'autorité. Normalement, xauth refusera de lire ou de modifier les fichiers d'autorité qui ont été verrouillés par d'autres programmes (généralement xdm ou un autre xauth).
-b Cette option indique que xauth doit tenter de supprimer les verrous de fichier d'autorité avant de continuer. Utilisez cette option uniquement pour nettoyer les verrous obsolètes.
-n Cette option indique que xauth ne doit pas tenter de résoudre les noms d'hôte, mais doit simplement toujours afficher l'adresse de l'hôte telle qu'elle est stockée dans le fichier d'autorité.
-V Cette option affiche le numéro de version de l'exécutable xauth.
COMMANDES
Les commandes suivantes peuvent être utilisées pour manipuler les fichiers d'autorité :
add nom_affichage nom_protocole clé_hexadécimale
Un enregistrement d'autorisation pour l'affichage indiqué en utilisant le protocole et la clé de données donnés est ajouté au fichier d'autorisation. Les données sont spécifiées sous la forme d'une chaîne de chiffres hexadécimaux de longueur paire, chaque paire représentant un octet. Le premier chiffre de chaque paire donne les 4 bits les plus significatifs de l'octet, et le deuxième chiffre de la paire donne les 4 bits les moins significatifs. Par exemple, une clé hexadécimale de 32 caractères représenterait une valeur de 128 bits. Un nom de protocole constitué d'un seul point est traité comme une abréviation de MIT-MAGIC-COOKIE-1.
generate displayname protocolname [trusted|untrusted]
[timeout secondes] [group group-id] [data hexdata]
Cette commande est similaire à add. La principale différence est qu'au lieu d'exiger que l'utilisateur fournisse les données de clé, elle se connecte au serveur spécifié dans displayname et utilise l'extension SECURITY afin d'obtenir les données de clé à stocker dans le fichier d'autorisation. Si le serveur ne peut pas être contacté ou s'il ne prend pas en charge l'extension SECURITY, la commande échoue. Sinon, une entrée d'autorisation pour l'affichage indiqué en utilisant le protocole donné est ajoutée au fichier d'autorisation. Un nom de protocole constitué d'un simple point est traité comme une abréviation de MIT-MAGIC-COOKIE-1.
Si l'option trusted est utilisée, les clients qui se connectent en utilisant cette autorisation auront un accès complet à l'affichage, comme d'habitude. Si untrusted est utilisé, les clients qui se connectent en utilisant cette autorisation seront considérés comme non fiables et il leur sera interdit de voler ou de falsifier les données appartenant aux clients de confiance. Voir la spécification de l'extension SECURITY pour plus de détails sur les restrictions imposées aux clients non fiables. La valeur par défaut est untrusted.
L'option timeout spécifie la durée en secondes pendant laquelle cette autorisation sera valable. Si l'autorisation reste inutilisée (aucun client n'y est connecté) pendant plus longtemps que cette période, le serveur purge l'autorisation, et les tentatives ultérieures de connexion en utilisant cette dernière échoueront. Notez que la purge effectuée par le serveur ne supprime pas l'entrée d'autorisation du fichier d'autorisation. La durée d'attente par défaut est de 60 secondes.
L'option group spécifie le groupe d'applications auquel les clients se connectant avec cette autorisation devraient appartenir. Voir la spécification de l'extension du groupe d'applications pour plus de détails. La valeur par défaut est de ne pas appartenir à un groupe d'applications.
L'option data spécifie les données que le serveur doit utiliser pour générer l'autorisation. Notez que ce ne sont pas les mêmes données qui sont écrites dans le fichier d'autorisation. L'interprétation de ces données dépend du protocole d'autorisation. Les hexadécimales sont dans le même format que le hexkey décrit dans la commande add. La valeur par défaut est de ne pas envoyer de données.
[n]extract nomfichier displayname...
Les entrées d'autorisation pour chacun des affichages spécifiés sont écrites dans le fichier indiqué. Si la commande nextract est utilisée, les entrées sont écrites dans un format numérique adapté à la transmission non binaire (par exemple, par courrier électronique sécurisé). Les entrées extraites peuvent être relues à l'aide des commandes merge et nmerge. Si le nom du fichier ne contient qu'un simple tiret, les entrées seront écrites sur la sortie standard.
[n]list [displayname...]
Les entrées d'autorisation pour chacun des écrans spécifiés (ou pour tous les écrans si aucun n'est nommé) sont affichées sur la sortie standard. Si la commande nlist est utilisée, les entrées seront affichées dans le format numérique utilisé par la commande nextract ; sinon, elles sont affichées dans un format texte. Les données clés sont toujours affichées dans le format hexadécimal indiqué dans la description de la commande add.
[n]merge [filename...]
Les entrées d'autorisation sont lues à partir des fichiers spécifiés et sont fusionnées dans la base de données d'autorisation, en remplaçant toutes les entrées existantes correspondantes. Si la commande nmerge est utilisée, le format numérique indiqué dans la description de la commande extract est utilisé. Si un nom de fichier ne contient qu'un seul tiret, l'entrée standard sera lue si elle n'a pas déjà été lue.
remove displayname...
Les entrées d'autorisation correspondant aux écrans spécifiés sont supprimées du fichier d'autorité.
source filename
Le fichier spécifié est traité comme un script contenant des commandes xauth à exécuter. Les lignes vides et les lignes commençant par un signe dièse (#) sont ignorées. Un seul tiret peut être utilisé pour indiquer l'entrée standard, si elle n'a pas déjà été lue.
info Des informations décrivant le fichier d'autorisation, que des modifications aient été apportées ou non, et d'où proviennent les commandes xauth, sont affichées sur la sortie standard.
exit Si des modifications ont été apportées, le fichier d'autorité est écrit (si autorisé), et le programme se termine. La fin du fichier est traitée comme une commande exit implicite.
quit Le programme se termine, en ignorant les modifications. Cela peut également être accompli en appuyant sur le caractère d'interruption.
version Cette commande affiche le numéro de version de l'exécutable xauth.
help [string]
Une description de toutes les commandes qui commencent par la chaîne donnée (ou de toutes les commandes si aucune chaîne n'est donnée) est affichée sur la sortie standard.
? Une liste abrégée des commandes valides est affichée sur la sortie standard.
NOMS D'ÉCRANS
Les noms d'écrans pour les commandes add, [n]extract, [n]list, [n]merge et remove utilisent le même format que la variable d'environnement DISPLAY et l'argument de ligne de commande -display courant. Les informations spécifiques à l'écran (telles que le numéro de l'écran) ne sont pas nécessaires et seront ignorées. Les connexions sur la même machine (telles que les sockets local-host, la mémoire partagée et le nom d'hôte du protocole Internet localhost) sont appelées hostname/unix:displaynumber afin que les entrées locales pour différentes machines puissent être stockées dans un seul fichier d'autorité.
EXEMPLE
L'utilisation la plus courante de xauth consiste à extraire l'entrée pour l'écran actuel, à la copier sur une autre machine et à la fusionner dans le fichier d'autorité de l'utilisateur sur la machine distante :
% xauth extract - $DISPLAY | ssh otherhost xauth merge
La commande suivante contacte le serveur :0 pour créer une autorisation en utilisant le protocole MIT-MAGICCOOKIE-1. Les clients qui se connectent avec cette autorisation ne seront pas de confiance. % xauth generate :0 .
ENVIRONNEMENT
Ce programme xauth utilise les variables d'environnement suivantes :
XAUTHORITY
pour obtenir le nom du fichier d'autorité à utiliser si l'option -f n'est pas utilisée.
HOME pour obtenir le répertoire personnel de l'utilisateur si XAUTHORITY n'est pas défini.
FICHIERS
$HOME/.Xauthority
fichier d'autorité par défaut si XAUTHORITY n'est pas défini.
VOIR AUSSI
X(7), Xsecurity(7), xhost(1), Xserver(1), xdm(1), startx(1), Xau(3).
BUGS
Les utilisateurs qui utilisent des réseaux non sécurisés doivent veiller à utiliser des mécanismes de transfert de fichiers cryptés pour copier les entrées d'autorisation entre les machines. De même, le protocole MIT-MAGIC-COOKIE-1 n'est pas très utile dans les environnements non sécurisés. Les sites qui souhaitent une sécurité accrue peuvent devoir utiliser des mécanismes d'autorisation cryptés tels que Kerberos.
Les espaces ne sont pas autorisés dans le nom du protocole. Des guillemets pourraient être ajoutés pour les cas les plus extrêmes.
AUTEUR
Jim Fulton, MIT X Consortium