[ Страница назад | Страница вперед | Содержание | Индекс | Библиотека | Юридическая информация | Поиск ]

Руководство по управлению системой: Сети и средства связи


Обзор BNU

Основные сетевые утилиты (BNU) - это группа программ, каталогов и файлов, которые можно применять для подключения к любой системе UNIX, в которой применяется любая версия Программы копирования UNIX-UNIX (UUCP). BNU входят в группу программ Extended Services, устанавливаемых по желанию заказчика вместе с базовой операционной системой.

В состав BNU входит группа команд, относящихся к программе UUCP, а также сама программа UUCP, разработанная фирмой AT&T и модифицированная как часть программного обеспечения Berkeley Software Distribution (BSD). Утилиты BNU предоставляют команды, процессы и базу данных для установления соединений с локальными и удаленными системами. Для локального соединения систем применяются сети Token-Ring и Ethernet. Соединение между локальной сетью и удаленной системой осуществляется напрямую по кабелю или по телефонной линии с помощью модема. После установления соединения локальная сеть и удаленная система могут обмениваться командами и файлами.

В этом разделе рассмотрены следующие вопросы:

Перед началом работы с командами и программами BNU необходимо установить и настроить утилиты BNU.

Управление BNU осуществляется с помощью файлов конфигурации, которые определяют, какие удаленные системы могут подключаться к локальной системе, и какие действия они могут выполнять после этого. Эти файлы конфигурации необходимо настроить в соответствии с требованиями, предъявляемыми к системе, и имеющимися ресурсами.

Обслуживая BNU, вы должны периодически просматривать и удалять файлы протоколов, а также проверять содержимое очередей BNU, чтобы убедиться в правильности передачи заданий в удаленные системы. Кроме того, вам необходимо время от времени обновлять файлы конфигурации, отражая изменения, произошедшие в вашей и удаленных системах.

Дополнительная информация приведена в следующих разделах:

Как работают утилиты BNU

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

За исключением команд удаленного входа в систему, все операции BNU выполняются в пакетном режиме. Когда пользователь запрашивает отправку задания в удаленную систему, BNU сохраняет информацию, необходимую для выполнения задания. Это называется постановкой задания в очередь. В запланированные моменты времени или по команде пользователя BNU обращается к различным удаленным системам, передает накопившиеся в очереди задания и принимает поступившие задания. Эти операции регулируются с помощью файлов конфигурации, находящихся в вашей и удаленных системах.

Поддержка национальных языков в командах BNU

Все команды BNU, кроме uucpadm, можно использовать с функцией Поддержки национальных языков. Имена пользователей не обязательно указывать символами ASCII. Однако все системные имена должны быть заданы символами ASCII. Если пользователь попытается запланировать передачу информации или выполнение удаленной команды с использованием не-ASCII символов в системных именах, BNU возвратит сообщение об ошибке.

Структура файлов и каталогов BNU

Информация об операциях, выполняемых BNU, отражена в каталогах и файлах BNU. Состав этой структуры приведен ниже:

Большинство каталогов BNU создается во время установки. Некоторые административные каталоги и файлы создаются программами BNU во время выполнения.

Общие каталоги BNU

Если задан общий каталог BNU (/var/spool/uucppublic), то в нем хранятся файлы, полученные локальной системой от других систем. Эти файлы находятся в общем каталоге до тех пор, пока пользователи не затребуют. Общий каталог создается при установке BNU. Кроме того, в общем каталоге создается подкаталог для каждой удаленной системы, отправляющей файлы в локальную систему.

Файлы конфигурации BNU

Файлы конфигурации BNU, называемые также базой данных поддержки BNU, хранятся в каталоге /etc/uucp. Эти файлы необходимо специально настроить для конкретной системы. Они принадлежат пользователю uucp и могут быть изменены только пользователем с правами доступа root. Файлы конфигурации содержат информацию о следующих объектах и значениях:

Кроме того, в некоторых файлах конфигурации заданы ограничения на операции BNU, предохраняющие систему от перегрузки.

Ниже приведен список файлов конфигурации BNU:

Devices Содержит информацию о доступных устройствах, включая как модемы, так и кабели для прямого подключения.
Dialcodes Содержит коды набора номера, позволяющие указывать сокращенные номера телефонов в файле Systems.
Dialers Задает синтаксис команды вызова для конкретного типа модема ("программу набора номера").
Maxuuscheds Ограничивает число одновременно запланированных заданий.
Maxuuxqts Ограничивает число одновременно выполняемых удаленных команд.
Permissions Содержит коды прав доступа. Этот файл играет основную роль при работе с защитой в BNU.
Poll Указывает, когда программа BNU должна опрашивать удаленные системы на предмет инициализации задач.
Sysfiles Содержит список файлов, применяемых вместо файлов Systems, Devices и Dialers в конфигурации BNU. Если этот файл не используется, то по умолчанию применяются файлы /etc/uucp/Systems, /etc/uucp/Devices и /etc/uucp/Dialers.
Systems Содержит список доступных удаленных систем и информацию, необходимую для установления соединения с ними, в частности, применяемое устройство, имя пользователя и пароль для входа в удаленную систему. Кроме того, в этом файле указаны моменты времени, когда можно обращаться к системам.

При работе BNU файлы конфигурации ссылаются друг на друга. Например:

Записи в файлах конфигурации BNU зависят от того, какие типы соединений применяются для связи между локальной и удаленными системами. Например, для соединений Протокола управления передачей/Протокола Internet (TCP/IP) и для прямых соединений создаются специальные записи. Если для обращения к другим системам применяются модемы, то они должны быть определены в файле Dialers.

Для установления соединений с удаленными системами с помощью BNU, необходимо настроить файлы Systems, Devices и Permissions. Остальные файлы конфигурации позволяют вам пользоваться возможностями BNU, например, функцией автоматического опроса. Многие файлы конфигурации необходимо периодически обновлять с целью отразить в них изменения, произошедшие в вашей системе, и в системах, к которым вы обращаетесь. В файле Sysfiles можно указать файлы, которые будут применяться вместо файлов по умолчанию: Systems, Devices и Dialers.

Административные каталоги и файлы BNU

Административные каталоги и файлы BNU расположены в подкаталогах каталога /var/spool/uucp. Эти каталоги и файлы содержат информацию двух типов:

В каталоге /var/spool/uucp BNU создает следующие подкаталоги:

.Admin Содержит четыре административных файла:

В этих файлах хранятся протоколы и информация об ошибках BNU.

.Corrupt Содержит копии файлов, которые не может обработать программа BNU.
.Log и .Old Содержит файлы протоколов транзакций BNU.
.Status Указывает, когда в последний раз демон uucico пытался установить связь с удаленными системами.
.Workspace Хранит временные файлы, применяемые программами передачи файлов.
.Xqtdir Содержит выполняемые файлы со списками команд, доступных в удаленных системах.
SystemName Содержит файлы, применяемые программами передачи. Это следующие файлы:

BNU создает каталог Имя-системы для каждой удаленной системы, с которой было установлено соединение.

Каталоги, имена которых начинаются с точки, являются скрытыми. Они не показываются командами ls и li, если не указан флаг -a . При запуске демона uucico из подкаталогов каталога /var/spool/uucp передаются все рабочие файлы, не являющиеся скрытыми. Демону uucico доступен только каталог SystemName, но не остальные административные каталоги.

Файлы в скрытых каталогах принадлежат пользователю uucp. Они доступны только пользователю с правами доступа root, а также пользователю с UID 5.

Дополнительная информация об обслуживании административных каталогов BNU приведена в разделе Обслуживание BNU.

Файлы блокировки BNU

Файлы блокировки BNU хранятся в каталоге /var/locks. Когда BNU обращается к устройству для подключения к удаленному компьютеру, он помещает файл блокировки для этого устройства в каталог /var/locks. Если другой программе BNU или любой другой программе необходимо это устройство, то она проверяет наличие соответствующего файла блокировки в каталоге /var/locks. Если файл блокировки существует, то программа ждет, пока устройство не освободится, или использует для связи другое устройство.

Кроме того, демон uucico помещает в каталог /var/locks файлы блокировки для удаленных систем. Перед обращением к удаленной системе демон uucico проверяет наличие соответствующего файла блокировки в каталоге /var/locks. Описанный механизм предотвращает создание нескольких соединений с одной и той же удаленной системой различными экземплярами демона uucico.

Примечание: Каталог /var/locks используется и другими программными средствами, в том числе Асинхронной эмуляцией терминала (ATE) и протоколом TCP/IP.

Защита в BNU

Поскольку другие системы устанавливают связь с вашей системой, передают в нее файлы и выполняют в ней команды, в BNU предусмотрен механизм защиты. Он позволяет ограничить набор действий, которые пользователи удаленных систем могут выполнять в локальной системе (в свою очередь, пользователи удаленных систем могут ограничить набор действий, разрешенных вам в их системах). Защитные действия выполняются несколькими демонами BNU, которые хранят необходимые им файлы в административных каталогах. Кроме того, в BNU ведется протокол выполняемых операций.

Защита в BNU реализована на нескольких уровнях. При настройке BNU вы можете задать следующие параметры:

ИД пользователя uucp

При установке BNU все файлы конфигурации и демоны, а также многие команды и процедуры оболочки принадлежат пользователю uucp. ИД пользователя uucp соответствует ИД пользователя 5 и ИД группы 5. Демон cron считывает содержимое файла /var/spool/cron/crontabs/uucp и на его основе планирует автоматическое выполнение заданий BNU.

Обычно вход в систему с именем uucp запрещен. Для изменения файлов, принадлежащих пользователю uucp, войдите в систему с правами доступа root.

Внимание: Разрешая удаленным пользователям входить в локальную систему с ИД uucp, вы создаете серьезную угрозу безопасности локальной системы. Пользователи удаленных систем, вошедшие в локальную систему с ИД uucp, могут просматривать и, возможно, изменять локальные файлы Systems и Permissions, в зависимости от других прав доступа, указанных в записи LOGNAME. Настоятельно рекомендуется создать в BNU другие ИД пользователей для удаленных систем, зарезервировав ИД uucp для администратора BNU локальной системы. Оптимальным с точки зрения защиты будет вариант, при котором каждой удаленной системе, устанавливающей связь с локальной системой, выделен свой уникальный ИД входа в систему с уникальным номером ИД пользователя.

Операционная система предоставляет ИД входа в систему по умолчанию nuucp для передачи файлов.

Идентификаторы входа в систему BNU

Начальной оболочкой для пользователей BNU является демон uucico (/usr/sbin/uucp/uucico). Когда удаленные системы обращаются к вашей системе, они автоматически запускают в ней демон uucico. Пользователям BNU присвоен ИД группы uucp 5.

Идентификаторам входа в систему, применяемым удаленными системами, необходимы пароли. Для того чтобы у нового пользователя BNU из удаленной системы при входе в вашу систему не запрашивался новый пароль, вы должны задать пароль сразу после создания учетной записи. Для этого введите команду passwd, а затем команду pwdadm. Например, для того чтобы задать пароль для пользователя nuucp, войдите в систему с именем root и введите следующие команды:

passwd nuucp

pwadm -f NOCHECK 
nuucp

Появится приглашение указать пароль для пользователя nuucp. После того как это будет сделано, удаленная система сможет установить связь с вашей системой без необходимости немедленно указывать новый пароль (работающий в пакетном режиме пользователь nuucp просто не сможет это сделать).

Создав ИД пользователя для удаленной системы, сообщите ИД и пароль администратору BNU этой удаленной системы.

Создание администратора BNU

Пользователь root может задать ИД администратора BNU. Это полезно, если вы хотите предоставить функции администратора BNU пользователю без прав доступа root. У административного пользователя BNU должен быть пароль, ИД пользователя 5 и ИД группы uucp 5. Начальной оболочкой для административного пользователя должна быть программа /usr/bin/sh (а не демон uucico). ИД пользователя 5 предоставляет пользователю BNU такие же права доступа, что и у ИД пользователя uucp. По этой причине, удаленным системам не следует разрешать входить в систему с ИД администратора BNU, иначе может произойти нарушение защиты.

Защита данных, файлы Systems и remote.unknown

В большинстве систем BNU входить в локальную систему могут только удаленные системы, перечисленные в файле /etc/uucp/Systems или в заменяющем его файле, указанном в Sysfiles. Если к локальной системе обращается неизвестная система, то во всех случаях выполняется сценарий /usr/sbin/uucp/remote.unknown. Этот сценарий отказывает неизвестной системе в доступе и создает в файле /var/spool/uucp/.Admin/Foreign запись, в которой указано время попытки входа в систему.

Пользователь root или администратор BNU может изменить сценарий remote.unknown для сохранения большего объема информации или для записи этой информации в другой файл. Например, вы можете сделать так, чтобы при каждой попытке неизвестной системы установить связь с вашей системой процедура оболочки отправляла сообщение администратору BNU.

Если вы запретите выполнение процедуры remote.unknown, то неизвестные компьютеры смогут подключаться к вашей системе. В этом случае вам следует добавить запись MACHINE=OTHER в файл /etc/uucp/Permissions, задав права доступа для неизвестных компьютеров.

Ваша система может устанавливать связь только с удаленными системами, перечисленными в файле Systems. Это позволяет предотвратить подключение пользователей вашей системы к неизвестным системам.

Защита данных и файл Permissions

Файл /etc/uucp/Permissions определяет следующие параметры:

Файл /etc/uucp/Permissions содержит записи двух типов:

LOGNAME Задает пользователей, которым разрешен вход в систему, и предоставляемые им права доступа. Записи LOGNAME применяются в тот момент, когда удаленная система вызывает локальную систему и пытается в нее войти.
MACHINE Определяет имена компьютеров и предоставляемые им права доступа. Записи MACHINE применяются в тот момент, когда удаленная система пытается выполнить команды в локальной системе.

Опции файла Permissions позволяют устанавливать различные уровни защиты для каждой удаленной системы. Например, если несколько удаленных систем используют один и тот же ИД для входа в локальную систему, то с помощью опции VALIDATE вы можете указать, что каждая удаленная система должна применять уникальный ИД входа в систему. Опции SENDFILES, REQUEST и CALLBACK указывают, какая система является управляющей, и с их помощью можно при необходимости передать управление транзакциями локальной системе.

Опции READ, WRITE, NOREAD и NOWRITE определяют доступ к конкретным каталогам локальной системы. Кроме того, они управляют каталогом локальной системы, в котором удаленные пользователи размещают свои данные. Опция COMMANDS ограничивает число команд, которые пользователи удаленных систем могут выполнять в локальной системе. Опция COMMANDS=ALL предоставляет полные права доступа к системам, тесно связанным с вашей.

Внимание: Применение опции COMMANDS=ALL представляет серьезную опасность для защиты вашей системы.

Демоны BNU

В состав BNU входят четыре демона, расположенные в каталоге /usr/sbin/uucp:

uucico Обеспечивает передачу файлов.
uusched Обеспечивает планирование обработки файлов, помещенных в локальный каталог буферизации.
uuxqt Обеспечивает удаленное выполнение команд.
uucpd Обеспечивает обслуживание соединений TCP/IP.

Демоны uucico, uusched и uuxqt запускаются демоном cron в соответствии с расписанием, составленным администратором BNU. При наличии прав доступа root вы также можете запускать эти демоны вручную. Демон uucpd следует запускать с помощью демона TCP/IP inetd.

Работа с демоном uucico

Демон uucico передает фалы из одной системы в другую. Команды uucp и uux запускают демон uucico для передачи командных файлов, файлов данных и выполняемых файлов в указанную систему. Кроме того, демон uucico периодически запускается планировщиком BNU - демоном uusched. Будучи запущенным демоном uusched, демон uucico пытается установить соединение с другими системами и выполнить инструкции из командных файлов.

Как происходит запуск демона

Перед выполнением инструкций из командных файлов демон uucico ищет вызываемую систему в файле /etc/uucp/Systems (либо одном или нескольких альтернативных файлах, указанных в /etc/uucp/Sysfiles). Затем демон проверяет допустимость времени вызова по записи в файле Systems. Если время допустимо, демон uucico находит значения Тип и Класс и ищет подходящее устройство в файле /etc/uucp/Devices (или в одном или нескольких файлах, указанных в /etc/uucp/Sysfiles).

Обнаружив устройство, демон uucico ищет в каталоге /var/locks файл блокировки устройства. Если такой файл существует, демон проверяет, нет ли другого устройства с подходящими типом и быстродействием.

Если других подходящих устройств нет, демон возвращается к файлу Systems и ищет в нем другую запись удаленной системы. Если такая запись существует, демон повторяет поиск устройства. Если нет, демон создает запись в файле /var/spool/uucp/.Status/имя_системы для этой удаленной системы и переходит к обработке следующего запроса. Командный файл остается в очереди. Демон uucico повторяет попытку передачи позже. Такая попытка называется повтором.

Действия демона после установления соединения с удаленной системой

Когда демон uucico устанавливает связь с удаленной системой, он входит в нее в соответствии с инструкциями из файла Systems. При этом в удаленной системе также инициализируется экземпляр демона uucico .

Пара демонов uucico, работающих в обеих системах, обеспечивает передачу данных. Демон uucico в вызывающей системе управляет каналом передачи данных, задавая запросы для обработки. Демон uucico в удаленной системе проверяет локальные права доступа, выясняя, допускают ли они обработку запроса. Если да, то начинается передача файла.

После того, как демон uucico вызывающей системы заканчивает передачу всех запросов, он отправляет запрос на окончание связи. Если у демона uucico в удаленной системе есть транзакции, которые необходимо отправить в вызывающую систему, он аннулирует запрос "положить трубку", после чего два демона меняются ролями.

Примечание: Как файл /etc/uucp/Permissions в локальной системе, так и файл /etc/uucp/Permissions в удаленной системе могут запретить демонам меняться ролями. В этом случае удаленная система должна отложить передачу файлов до того момента, когда она вызовет локальную систему.

Когда файлов для передачи в обоих направлениях не остается, демоны uucico завершают связь. После этого для выполнения запросов на удаленное выполнение вызывается демон uuxqt.

В течение всего процесса передачи демоны uucico в обеих системах заносят сообщения в протокол BNU и в файлы сообщений об ошибках.

Работа с демоном uusched

Демон uusched планирует передачу файлов, находящихся в очереди в каталоге буферизации /var/spool/uucppublic локальной системы. При инициализации демона uusched он находит командные файлы в каталоге буферизации, располагает их в случайной последовательности и запускает демон uucico. Затем демон uucico передает файлы.

Работа с демоном uuxqt

Когда пользователь вводит команду uux для выполнения заданной команды в удаленной системе, эту команду выполняет демон uuxqt. Создав необходимые файлы, команда uux запускает демон uucico, передающий эти файлы в общий каталог буферизации в удаленной системе.

Демон uuxqt периодически просматривает каталог буферизации, выясняя, нет ли в нем запросов на выполнение команд, поступивших из подключенных систем. При обнаружении такого запроса демон uuxqt проверяет наличие необходимых файлов и прав доступа. Если права доступа есть, демон запускает указанную команду.

Работа с демоном uucpd

Для того, чтобы программа BNU могла установит связь с удаленным компьютером с помощью Протокола управления передачей/Протокола Internet (TCP/IP), должна существовать возможность запуска на удаленном компьютере демона uucpd. Демон uucpd - это субсервер демона TCP/IP inetd и запускается им.

По умолчанию строка с демоном uucpd в файле inetd.conf содержит символ комментария. Для применения этого демона необходимо удалить комментарий и перезапустить inetd. Однако, если этот параметр изменялся в локальной системе, то вам может потребоваться заново настроить демон inetd на запуск демона uucpd.


[ Страница назад | Страница вперед | Содержание | Индекс | Библиотека | Юридическая информация | Поиск ]