Чтение онлайн

на главную - закладки

Жанры

Сетевые средства Linux

Смит Родерик В.

Шрифт:

3. Введите команду

extract имя_файла имя_дисплея
. Здесь имя файла может быть любым, а имя дисплея — это имя, которое вы выяснили на предыдущем шаге процедуры. Например, вы можете задать команду
extract xfer-auth term.threeroomco.com:0
. В результате запись файла
.Xauthority
для дисплея будет скопирована в указанный файл. Файл используется для передачи ключа на клиентский компьютер.

4. Введите команду

exit
, чтобы завершить работу с программой
xauth
.

5. Скопируйте файл, созданный при выполнении команды

extract
, да клиентский компьютер (удаленный компьютер, на котором расположена программа, предназначенная для выполнения). Сделать это можно различными способами: использовать средства FTP или NFS, перенести файл на дискете и т.д.

6. Зарегистрируйтесь на компьютере, выполняющем функции X-клиента.

7. Задайте команду

xauth
, чтобы запустить утилиту
xauth
на клиентской машине.

8. Введите команду

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

9. Задайте команду

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

10. Введите команду

exit
, чтобы завершить работу
xauth
и сохранить внесенные изменения. (Заметьте, что в
xauth
также предусмотрена команда
quit
, которая не сохраняет изменения. Команду
quit
надо использовать в том случае, если при выполнении данной процедуры были допущены ошибки.)

Если на обоих компьютерах инсталлированы средства SSH, вы можете вместо описанной выше процедуры выполнить единственную команду.

# xauth list x_сервер:0 | sed -e 's/^ /add /' | ssh \

 x_клиент– х xauth

В данном случае

xauth
вызывается в командной строке,
sed
используется для включения команды
add
в начало выходных данных, кроме того, утилита
xauth
запускается также на стороне X-клиента. При вызове данной команды необходимо учитывать следующее.

• Вместо

x_сервер
надо указать имя компьютера, за которым вы работаете, а вместо
x_клиент
— имя компьютера, на котором должна выполняться клиент-программа.

• Между

add
и последующей косой чертой (
/
) должен быть пробел. Эта команда передается утилите
xauth
на клиентском компьютере, и пробел должен отделять
add
от имени дисплея.

• Если конфигурация SSH предполагает ввод пароля либо фразы пароля, вам придется ввести соответствующие данные.

С этого момента X-сервер будет принимать обращения от X-клиентов, но, чтобы эти программы могли работать совместно, вам придется установить на клиентском компьютере опцию, позволяющую взаимодействовать с X-сервером (этот вопрос будет подробнее рассмотрен в следующем разделе). При установлении соединения клиент X Window обратится к файлу

.Xauthorit
y за ключом, соответствующим серверу.

Поскольку работа

xauth
основана на применении ключа, который известен только серверу и авторизованному клиенту, она обеспечивает более высокий уровень защиты, чем
xhost
. Кроме того, при использовании
xauth
доступ к серверу предоставляется только отдельным пользователям. X-сервер становится более устойчивым к атакам, осуществляемым путем подмены IP-адреса. Недостатком данного способа является передача ключей в незакодированном виде. Если локальная сеть не обеспечивает безопасность передаваемых данных либо если клиент с сервером взаимодействуют по Internet, ключ может быть похищен и злоумышленник получит доступ к X-серверу. Если при обмене данными в системе X Window необходимо обеспечить высокий уровень защиты, надо использовать SSH-соединение. Вопросы поддержки X-взаимодействия посредством SSH будут подробно рассмотрены в следующем разделе.

На заметку

Не все X-серверы сконфигурированы для работы с

xauth
. Соответствующая опция обычно устанавливается в том случае, когда X-сервер запускается посредством XDM, GDM или KDM. Если вы запускаете X-сервер с помощью
startx
, поддержка
xauth
в ряде систем будет отсутствовать. В некоторых случаях вам придется отредактировать сценарий
startx
(он обычно располагается в каталоге
/usr/X11R6/bin
) так, чтобы в нем присутствовала опция
– auth файл_авторизации
; в качестве файла авторизации обычно указывается файл
.Xauthority
, находящийся в рабочем каталоге. Часто в редактировании
startx
нет необходимости.

Настройка X-клиента для работы с Х-сервером

Независимо от того, используете ли вы

xhost
или
xauth
, вы должны сконфигурировать клиентскую систему для работы с нужным X-сервером. Если, например, вы работаете за компьютером
term.threeroomco.com
, зарегистрировались на узле
biggie.threeroomco.com
и хотите, чтобы программа использовала компьютер
wrongone.threeroomco.com
в качестве X-терминала, вам не удастся сделать это. По умолчанию многие версии Linux сконфигурированы так, что даже если пользователь зарегистрировался с внешнего узла, они будут работать с локальным X-сервером.

При запуске X-программа читает значение переменной окружения

DISPLAY
и определяет, какой X-сервер следует использовать. Чтобы определить текущее значение этой переменной, надо на компьютере, выполняющем роль X-клиента, вызвать следующую команду:

$ echo $DISPLAY

biggie.threeroomco.com:0.0

Если отображаемая с помощью этой команды строка (в данном случае

biggie.threeroomco.com:0.0
) соответствует вашему серверу, вам не надо предпринимать никаких действий. (Первый дисплей обычно имеет номер 0 или 0.0; эти два значения эквивалентны.) Если же значение переменной
DISPLAY
указывает на X-клиент или другую систему либо если оно вовсе не определено, вам надо задать новое значение данной переменной. Необходимая для этого команда выглядит следующим образом:

$ export DISPLAY=term.threeroomco.com:0

Очевидно, что имя узла должно определять ваш X-сервер. При последующих запусках X-программа будет пытаться взаимодействовать с указанным сервером. Чтобы эти попытки были успешными, вам надо настроить X-сервер для работы с X-клиентом, т.е. запустить программу

xhost
, или создать запись
xauth
для клиента.

Туннелирование X-соединений через SSH

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

telnet
. Во-вторых, после установления соединения вы инициируете взаимодействие X-клиента с X-сервером. Выполнив основные действия по установке соединений, вы можете вызвать на своем компьютере любую команду, например
xclock
, и соответствующая программа (в данном случае
xclock
) будет выполняться на удаленном компьютере. Данная конфигурация подходит для решения многих задач, но при ее использовании могут возникать проблемы. Одна из этих проблем связана с тем, что в сеансе X-взаимодействия данные передаются в незакодированном виде и могут быть перехвачены. Тот факт, что на каждом из взаимодействующих компьютеров должен выполняться сервер, также можно считать недостатком. Если эти компьютеры разделены брандмауэром или маршрутизатором, осуществляющим маскировку пакетов, эти программы должны быть сконфигурированы специальным образом, иначе обмен по протоколу X Window станет невозможным. Одно из возможных решений обеих проблем состоит в использовании протокола SSH. Этот протокол может применяться как для установления начального соединения между X-клиентом и X-сервером, так и для туннелирования данных, передаваемых в рамках этого соединения.

Поделиться:
Популярные книги

Путь Шедара

Кораблев Родион
4. Другая сторона
Фантастика:
боевая фантастика
6.83
рейтинг книги
Путь Шедара

Двойник Короля 6

Скабер Артемий
6. Двойник Короля
Фантастика:
аниме
фэнтези
фантастика: прочее
попаданцы
5.00
рейтинг книги
Двойник Короля 6

Я все еще не князь. Книга XV

Дрейк Сириус
15. Дорогой барон!
Фантастика:
юмористическое фэнтези
попаданцы
аниме
5.00
рейтинг книги
Я все еще не князь. Книга XV

Здравствуй, 1985-й

Иванов Дмитрий
2. Девяностые
Фантастика:
альтернативная история
5.25
рейтинг книги
Здравствуй, 1985-й

Династия. Феникс

Майерс Александр
5. Династия
Фантастика:
попаданцы
аниме
5.00
рейтинг книги
Династия. Феникс

Кодекс Охотника. Книга XXXV

Винокуров Юрий
35. Кодекс Охотника
Фантастика:
аниме
фэнтези
попаданцы
5.00
рейтинг книги
Кодекс Охотника. Книга XXXV

Газлайтер. Том 6

Володин Григорий
6. История Телепата
Фантастика:
попаданцы
альтернативная история
аниме
5.00
рейтинг книги
Газлайтер. Том 6

Зеркало силы

Кас Маркус
3. Артефактор
Фантастика:
городское фэнтези
попаданцы
аниме
5.00
рейтинг книги
Зеркало силы

Идеальный мир для Лекаря 20

Сапфир Олег
20. Лекарь
Фантастика:
фэнтези
юмористическое фэнтези
аниме
5.00
рейтинг книги
Идеальный мир для Лекаря 20

Неудержимый. Книга XXVIII

Боярский Андрей
28. Неудержимый
Фантастика:
аниме
фэнтези
попаданцы
5.00
рейтинг книги
Неудержимый. Книга XXVIII

Феномен

Поселягин Владимир Геннадьевич
2. Уникум
Фантастика:
боевая фантастика
6.50
рейтинг книги
Феномен

Моров. Том 5

Кощеев Владимир
4. Моров
Фантастика:
фэнтези
попаданцы
аниме
5.00
рейтинг книги
Моров. Том 5

Маленькая женщина Большого

Зайцева Мария
5. Наша
Любовные романы:
эро литература
современные любовные романы
5.00
рейтинг книги
Маленькая женщина Большого

Древесный маг Орловского княжества 5

Павлов Игорь Васильевич
5. Орловское княжество
Фантастика:
аниме
фэнтези
попаданцы
5.00
рейтинг книги
Древесный маг Орловского княжества 5