Введение

программа под названием "X Display Manager"

В системе X Window System, X display manager – это графический менеджер входа в систему, который запускает сеанс входа на X-сервере с того же или другого компьютера. Менеджер дисплеев предоставляет пользователю экран входа в систему. Сеанс начинается, когда пользователь успешно вводит верную комбинацию имени пользователя и пароля. Когда менеджер дисплеев запускается на компьютере пользователя, он запускает X-сервер перед отображением экрана входа, с возможностью повторного запуска при выходе пользователя из системы. В этом случае DM реализует в X Window System функциональность команд `login` и `getty` на символьных терминалах. Когда менеджер дисплеев запускается на удаленном компьютере, он действует как сервер telnet, запрашивая имя пользователя и пароль и запуская удаленную сессию. X11 Release 3 представил менеджеры дисплеев в октябре 1988 года с целью поддержки автономных X-терминалов, которые только начинали появляться на рынке. Различные менеджеры дисплеев продолжают широко использоваться для обеспечения графического запроса имени пользователя и пароля на автономных компьютерных рабочих станциях, работающих под управлением X. X11R4 представил протокол управления X Display Manager (XDMCP) в декабре 1989 года для устранения проблем в реализации X11R3.

История

XDM (X Window Display Manager) возник в X11R3. Эта первая версия, написанная Китом Паккардом из MIT X Consortium, имела несколько ограничений, наиболее заметным из которых было то, что она не могла обнаруживать, когда пользователи выключали и включали терминалы X. В X11R3 XDM знал о терминале X только по его записи в файле, но XDM обращался к этому файлу только при запуске. Таким образом, каждый раз, когда пользователь выключал и включал терминал, системному администратору приходилось отправлять сигнал SIGHUP в XDM, чтобы указать ему повторно просканировать файл. XDMCP появился с выпуском X11R4 (декабрь 1989 года). При использовании XDMCP сервер X должен активно запрашивать соединение с менеджером отображения у хоста. Следовательно, сервер X, использующий XDMCP, больше не требует записи в файле .

X Протокол управления дисплеем

Протокол управления X Display Manager (XDMCP) использует UDP-порт 177. X-сервер запрашивает запуск сессии у менеджера отображения, отправляя запрос (Query packet). Если менеджер отображения разрешает доступ этому X-серверу, он отвечает, отправляя пакет Willing обратно на X-сервер. (X-сервер также может отправлять пакеты BroadcastQuery или IndirectQuery для начала сессии – этот механизм запроса сессии аналогичен использованию DHCP для получения IP-адреса.) Менеджер отображения должен аутентифицироваться на сервере. Для этого X-сервер отправляет пакет Request менеджеру отображения, который возвращает пакет Accept. Если пакет Accept содержит ожидаемый X-сервером ответ, менеджер отображения считается аутентифицированным. Для формирования правильного ответа менеджеру отображения может потребоваться, например, доступ к секретному ключу. В случае успешной аутентификации X-сервер отправляет пакет Manage, чтобы уведомить об этом менеджер отображения. Затем менеджер отображения отображает экран входа, подключаясь к X-серверу как обычный X-клиент. В ходе сессии сервер может периодически отправлять пакеты KeepAlive менеджеру отображения. Если менеджер отображения не отвечает пакетом Alive в течение определенного времени, X-сервер предполагает, что менеджер отображения перестал работать, и может разорвать соединение.

Безопасность

Одна из проблем XDMCP заключается в том, что, подобно telnet, аутентификация происходит без шифрования. Если возможно перехват трафика, это делает систему уязвимой для атак. Использовать SSH-туннель для X-трафика более безопасно.