Доступом удаленных компьютеров XDM управляет основной конфигурационный файл /etc/X11/xdm/xdm-config
. В большинстве дистрибутивных пакетов в составе этого файла содержится следующая строка:
DisplayManager.requestPort: 0
Данная запись указывает XDM на то, что он не должен принимать обращения через UDP-порт 177. Если вы хотите, чтобы пользователи с других компьютеров могли регистрироваться посредством XDMCP, вам надо закомментировать данную строку (включить в ее начало символ #
).
Помимо редактирования файла xdm-config
, вам, возможно придется внести изменения в файл /etc/X11/xdm/Xaccess
. В этом файле указаны компьютеры, которым разрешен доступ к серверу XDM. Данный файл состоит из набора записей, каждая из которых занимает одну строку. В составе записи указываются имя узла и тип доступа, разрешенный для него. (Символ #
в начале строки является признаком комментариев.) Если тип доступа не указан, клиенту разрешены непосредственные обращения к серверу. Значение CHOOSER
определяет действия сервера при получении косвенного запроса от клиента, а значение BROADCAST
, которое чаще всего используется в сочетании с CHOOSER
, указывает на то, что при получении косвенного запроса он должен передаваться остальным серверам XDMCP в широковещательном режиме. Если вместо имени узла указан символ *
, это означает, что любой клиент имеет право устанавливать соединение с сервером XDM. Например, приведенные ниже записи позволяют любому клиенту обращаться к серверу непосредственно или использовать его для передачи косвенного запроса.
*
* CHOOSER BROADCAST
Если вы хотите, чтобы право обращаться к серверу имели лишь некоторые узлы сети, вам надо вместо символа *
задавать конкретные имена компьютеров. Данный символ может использоваться в составе имени; в этом случае право доступа к серверу получают все компьютеры, принадлежащие к указанному домену. Например, приведенные ниже записи разрешают доступ к серверу всем компьютерам домена threeroomco.com
, а также двум внешним узлам. Кроме того, указанные здесь внешние узлы имеют право передавать косвенные запросы.
*.threeroomco.com
bronto.pangaea.edu
stego.pangaea.edu
bronto.pangaea.edu CHOOSER BROADCAST
stego.pangaea.edu CHOOSER BROADCAST
Ограничить доступ к XDMCP можно не только средствами, предусмотренными в конфигурационном файле XDM. Блокировать обращения к серверу может также брандмауэр.
В файле /etc/X11/xdm/xservers
указывается список устройств, которыми может управлять сервер XDM. При запуске XDM пытается непосредственно обратиться к этим дисплеям и вывести окно регистрации. По умолчанию в данный файл помещается следующая строка (в зависимости от особенностей системы конкретная запись может несколько отличаться от приведенной ниже):
:0 local /usr/X11R6/bin/X
Данная запись указывает на то, что сервер должен управлять локальным дисплеем (:0). При необходимости XDM запускает локальный X-сервер. Если вы хотите, чтобы XDM непосредственно управлял отображением на удаленных машинах, без использования окна регистрации, вы должны указать требуемые системы следующим образом:
term.threeroomco.com:0 foreign
В этом примере foreign
указывает на то, что заданная система является удаленной. Система может быть сконфигурирована так, что соединение с сервером XDMCP и отображение окна регистрации будет разрешено. Редактируя файл Xservers
, вы можете также удалить включенную по умолчанию запись local
. Если вы сделаете это, компьютер не будет загружать локальный X-сервер при запуске XDM. Такая конфигурация может потребоваться, если вы организуете работу с мощным центральным компьютером через X-терминалы. В таком случае на компьютере будет выполняться много X-программ, но ни одна из них не будет взаимодействовать с локальным X-сервером.
Задавать управление устройством отображения следует в том случае, если X-сервер должен взаимодействовать только с компьютером, на котором выполняется XDM. В частности, данный подход применяется тогда, когда X-терминал соединяется лишь с одним узлом сети.