Que sont xhost et xhost + si?

12

Que fait ce script?

#!/bin/bash
xhost +local:
xhost +si:localuser:root

Quelle est la liste par défaut de xhost?

srinuab4u
la source

Réponses:

16

xhost +SI:localuser:rootpermet à l' rootutilisateur d'accéder au serveur X en cours d'exécution. Le serveur X actuel est indiqué par la DISPLAYvariable d'environnement. xhost +local:fait la même chose pour chaque utilisateur, donc la rootligne n'est pas très utile.


La page de manuel contient des explications raisonnablement bonnes:

   [+]name The given name (the plus sign is optional) is added to the list
           allowed to connect to the X server.  The name  can  be  a  host
           name or a complete name (See NAMES for more details).
...
NAMES
   A complete name has the syntax ``family:name'' where the  families  are
   as follows:
...
   local     contains only one name, the empty string
   si        Server Interpreted
...
   The  local family specifies all the local connections at once. However,
   the server interpreted address "si:localuser:username" can be  used  to
   specify a single local user. (See the Xsecurity(7) manual page for more
   details.)

Et la Xsecuritypage de manuel dit:

SERVER INTERPRETED ACCESS TYPES
   The  sample  implementation   includes   several   Server   Interpreted
   mechanisms:
       IPv6                          IPv6 literal addresses
       hostname                      Network host name
       localuser                     Local connection user id
       localgroup                    Local connection group id

Avec un peu de contexte: il existe deux façons couramment utilisées pour autoriser l'accès à un serveur X. L'un se fait via un Xauthorityfichier, qui est partagé par les clients, et ne nécessite aucune autre configuration côté serveur. L'autre est via la xhostliste, où la configuration est effectuée sur le serveur lors de l' exécution (ce n'est donc pas un changement permanent).

Donc, localuserest un mot clé à conserver tel quel ( rootest le nom d'utilisateur ici). C'est un peu comme ajouter à un groupe, dans la mesure où les groupes sont dans la compréhension du serveur de l'autorisation. Cependant, aucun groupe de système ou utilisateur n'est affecté. Seule la configuration d'exécution du serveur X est modifiée.


Le comportement par défaut xhostlors de l'exécution sans arguments consiste à imprimer la liste, comme le dit la page de manuel:

nothing If no command line arguments are given,  a  message  indicating
        whether  or not access control is currently enabled is printed,
        followed by the list of those allowed to connect.  

Par exemple:

$ xhost
access control enabled, only authorized clients can connect
SI:localuser:muru

( muruest mon nom d'utilisateur.)

(De mon post sur Unix et Linux )

muru
la source