Настройка XDM

В этом разделе описывается настройка XDM для выполнений функций, описанных в предыдущей главе.

В каждом случае нижеописанная конфигурация - это необходимый для достижения цели минимум. В большинстве случаев эта конфигурация плохо защищена. Для того, чтобы усилить безопасность ваших X-терминалов и серверов приложений, читайте документацию, список которой приведен в разделе Разд. Ссылки.

Конфигурационные файлы

Ниже описана следующая схема конфигурационных файлов XDM:

Эта схема применяется в (Debian 2.1. Mandrake 7.0.2, RedHat 6.2) :
      /etc/X11/xdm
      
или (SuSE 6.4) :
      /usr/X11R6/lib/X11/xdm
      

xdm-config

В этом файле задается местоположение других конфигурационных файлов и базовые права доступа. Во всех дистрибутивах, которые использовались при написании этого документа, имена всех конфигурационных файлов были одинаковы (правда иногда различалось их местоположение).

В этом файле также задаются файлы скриптов, запускаемые при смене состояния X-сессии (запуск системы и т.п.). Вам не надо это изменять, так как все дистрибутивы идут уже с готовыми настройками.

Xaccess

В нем задается список машин, которые могут соединяться c XDM на этой машине - т.е., какие машины могут посылать XDMCP-запросы на этото сервер.

Xservers

Содержит список машин, с которыми будет связываться XDM для автоматической выдачи на их экран приглашения ко входу в систему (т.е. список машин, на которых уже работает X-сервер, но они хотели бы получить приглашение ко входу именно от этой машины).

Xresources

Содержит детальное описание свойств X, используемых мастерами XDM (таких, как размер окна с приглашением ко входу, его цвет, фон, и т.п.)

Настройка XDM для управления X-серверами

Для каждой машины, на которой XDM будет автоматически выдавать на ее экран приглашение ко входу в сервер приложений, необходимо задать строку в файле Xservers. Туда могут войти как локальная машина, так и список удаленных машин.

Пример
      # Сначала локальная машина
      :0 local /usr/bin/X11/X vt7
      #
      # Затем удаленные
      emma:0 foreign
      alex:0 foreign
      

Это позволит XDM запуститься на локальной машине и заодно выдать приглашение ко входу на машинах 'emma' и 'alex' (преполагая, что права на этих машинах настроены так, что нашему XDM можно с ними связываться).

Заметьте также, что в этом файле можно задавать не только имя машины, но и номер дисплея (:0, :1, и т.п.), если это необходимо (например, если вы используете несколько X-серверов на одной машине и т.п.)

Настройка XDM для обработки запросов

В файле Xaccess задается список машин, которым разрешено посылать запросы на получение приглашения ко входу от XDM.

Пример
      # Первая строка для прямых запросов
      *
      # Следующая строка для косвенных запросов
      * CHOOSER BROADCAST
      

Это означает, что напрямую к этому XDM можно подключиться с любой машины (первая строка с "*"). Строка с опцией "CHOOSER" позволяет другим машинам посылать этому XDM косвенные запросы (с получением списка машин, к которым можно подключиться).

'BROADCAST' означает, что программа "chooser" на этой машине получает список доступных XDM-серверов при помощи широковещательных сетевых запросов. Я поговорю об этой программе чуть позже.

В этом файле можно задавать имена машин. Существуют и другие виды косвенных запросов (без "chooser"), но я не буду здесь это описывать. Если вам это интересно, читайте документацию, список которой приведен в главе Разд. Ссылки.

Запуск X

Способ запуска самого X-сервера зависит от того, с каким XDM вы хотите работать - с локальным или удаленным.

Рабочая станция X: XDM и локальный X-сервер

XDM будет нормально запускать X-сервер автоматически, и сам XDM запускается обычно в процессе запуска X (в инициализационных скриптах).

X-Терминал : Удаленный XDM

Просто запустите X без клиентских программ, с такими правами, чтобы удаленный XDM мог связаться с вашим X-сервером. Ниже приведена команда запуска X без контроля доступа:
          /usr/X11R6/bin/X -ac
          

X-терминал : Запрос на удаленный XDM

Напоминаю, что существуют 3 вида запросов: прямой, косвенный и широковещательный (прямой для одной машины, широковещательный для первой машины, ответившей на запрос):
          # Прямой запрос
          /usr/X11R6/bin/X -query удаленная.машина
          # Широковещательный запрос
          /usr/X11R6/bin/X -broadcast
          # Косвенный запрос
          /usr/X11R6/bin/X -indirect удаленная.машина
          

В каждом случае X должен быть запущен пользователем root. Запуск X можно настроить в инициализационных скриптах загрузки системы (если это необходимо).

Программа Chooser

Когда XDM получает косвенный запрос (предполагаем, что в файле Xaccess задана опция запуска программы "chooser"), он может предоставить в ответ список других XDM-серверов, которые ему известны.

В этом режиме пользователь вместо обычного приглашения ко входу получит на экране окно программы "chooser", которая позволит выбрать ему одну из найденных в сети машин с XDM-сервером.

Когда я впервые испытывал "chooser", я обнаружил, что размер окна этой программы, описанный в файле Xresources, поставляемом в комплекте с моими дистрибутивами SuSE и Debian, слишком велик. Исправьте следующим образом строку в файле Xresources:
      Chooser*geometry:      700x500+300+200
      

Программа "chooser" получает список машин двумя способами: