Что такое xhost и xhost + si?

12

Что делает этот скрипт?

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

Что такое список по умолчанию xhost?

srinuab4u
источник

Ответы:

16

xhost +SI:localuser:rootпозволяет rootпользователю получить доступ к работающему X-серверу. Текущий X-сервер обозначен DISPLAYпеременной среды. xhost +local:делает то же самое для каждого пользователя, поэтому rootлиния не очень полезна.


Страница руководства имеет достаточно хорошие объяснения:

   [+]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.)

И на Xsecurityстранице написано:

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

Немного контекста: есть два широко используемых способа предоставления доступа к X-серверу. Один из них - через Xauthorityфайл, который используется клиентами и не требует дальнейшей настройки на стороне сервера. Другой - через xhostсписок, где конфигурация выполняется на сервере во время выполнения (так что это не постоянное изменение).

Итак, localuserключевое слово должно быть сохранено как есть ( rootздесь имя пользователя). Это похоже на добавление в группу, поскольку группы понимают авторизацию на сервере. Тем не менее, никакие системные группы или пользователи не затрагиваются. Изменена только конфигурация времени выполнения X-сервера.


Поведение по умолчанию xhostпри запуске без аргументов заключается в печати списка, как говорится на man-странице:

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.  

Например:

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

( muruэто мое имя пользователя.)

(Из моего поста по Unix и Linux )

Мур
источник