Опубликован: 21.11.2006 | Уровень: специалист | Доступ: платный
Лекция 9:

Протокол UUCP

Ведущий компьютер в сеансе UUCP

Прежде всего необходимо выполнить настройки в файле config. Эта задача довольно проста, так как обычно изменять какие-либо параметры в этом файле не требуется. В листинге 9.7 представлен пример файла config для клиента.

nodename shadrach
Листинг 9.7. Пример конфигурации ведущего UUCP-компьютера в файле config (для Taylor UUCP)

Далее следует сконфигурировать файл sys, где задаются параметры вызова удаленного хоста. В листинге 9.8 представлен пример файла sys с параметрами для вызова хоста UUCP провайдера Internet в рабочие часы с целью проверки наличия почты.

system ispmail
time Wk0800-1730
phone 555-1234
port modem
speed 38480
chat ogin: shadrach word: guitar
Листинг 9.8. Пример конфигурации ведущего UUCP-компьютера в файле sys (для Taylor UUCP)

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

Затем нужно задать параметры в файле port. В листинге 9.9 представлен пример файла port, где описываются параметры модема.

port modem
type modem
device /dev/ttyS0
speed 38400
dialer normal
Листинг 9.9. Пример конфигурации ведущего UUCP компьютера в файле port (для Taylor UUCP)

И последний файл конфигурации, который нам понадобится, это файл dial. В нем задаются параметры для связи с определенным портом. В листинге 9.10 представлен пример файла dial.

dialer normal
chat "" ATZ OK ATDT\T CONNECT
Листинг 9.10. Пример конфигурации ведущего UUCP-компьютера в файле dial (для Taylor UUCP)

Чтобы проверить правильность заданной конфигурации, пользователь, обладающий правами root, может набрать следующую команду:

uucico -f -x chat -s
ispmail

С помощью этой команды вы заставляете uucico звонить на UUCP-систему с именем ispmail, игнорируя все ограничения по времени, и вести файл отчета для процесса chat. По прошествии нескольких секунд вы должны услышать, как модем набирает номер удаленного сервера. Чтобы убедиться в успешности соединения, можно также проанализировать содержимое файла отчета UUCP ( /var/log/uucp/Log ). Соответствующие строки будут присутствовать и в файле /var/log/uucp/Debug.

Теперь, когда вы убедились в том, что UUCP-соединение работает нормально, следующим шагом будет автоматизация этого процесса. Лучше всего для этой цели использовать стандартный для ОС Linux процесс cron. Программа cron выполняется в фоновом режиме и считывает свой файл конфигурации, где задается время запуска каждой программы. Чтобы отредактировать файл конфигурации cron, пользователь с правами root должен задать команду:

cron -e

Затем добавьте в файл cron строки, показанные в листинге 9.11.

4,9,14,19,24,29,34,39,44,49,54,59 *
* * */usr/sbin/touch
Ä /var/spool/uucp/ispmail/C./C.ispmailA0000
5,10,15,20,25,30,35,40,45,50,55 * * * */usr/sbin/uucico -s ispmail
Листинг 9.11. Строки в файле cron для автоматического запуска UUCP

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

Вопросы перенаправления почты через UUCP-соединение на почтовый узел провайдера Internet более подробно рассмотрены в "Подключение почтового сервера к провайдеру Internet" , "Подключение почтового сервера к провайдеру Internet".

Ведомый компьютер в сеансе UUCP

Ведомый компьютер в сеансе UUCP ожидает появления запросов на установление соединения от ведущих UUCP-компьютеров. И снова нам понадобится файл конфигурации config. Он представлен в листинге 9.12.

nodename ispmail
Листинг 9.12. Пример конфигурации ведомого UUCP компьютера в файле config (для Taylor UUCP)

За ним следует файл конфигурации sys. Поскольку ведомый компьютер не вызывает удаленные системы и доступ к файловым областям не предоставляется, то этот файл имеет тривиальный вид. Пример файла sys показан в листинге 9.13.

system shadrach
port dialin
time Never
commands rmail
Листинг 9.13. Пример конфигурации ведомого UUCP-компьютера в файле sys (для Taylor UUCP)

В файле конфигурации port для поддержки входящих соединений также нет сложных настроек. Все клиенты при подключении самостоятельно запускают программу uucico, так что в этом файле лишь нужно указать тип соединения. Пример файла port представлен в листинге 9.14.

port dialin
type stdin
Листинг 9.14. Пример конфигурации ведомого UUCP-компьютера в файле port (для Taylor UUCP).

Так как ведомый компьютер не осуществляет вызов удаленных компьютеров, то файл dial ему не требуется. Далее нужно лишь создать идентификатор пользователя для удаленной системы, которая будет регистрироваться на данном компьютере. Все идентификаторы пользователей хранятся в файле /etc/passwd. При этом, чтобы система автоматически запускала UUCP по входному звонку, нужно задать в качестве оболочки по умолчанию uucico. Тогда строка в файле /etc/passwd будет выглядеть примерно так:

shadrach:x:510:510:Remote UUCP host:/home/shadrach: 
/usr/sbin/uucico

Этой строкой мы разрешаем удаленной системе shadrach зарегистрироваться с именем shadrach и автоматически запустить для нее программу uucico. Пользователь root должен назначить идентификатору пользователя shadrach пароль. Этот пароль не может быть изменен удаленным хостом.

Резюме

Один из относительно недорогих и безопасных способов подключения почтового сервера к провайдеру Internet — использование протокола UNIX to UNIX CoPy (UUCP). Хотя этот протокол — один из старейших, он остается высокоэффективным при передаче почты по модемным линиям без установления сетевого соединения. Многими провайдерами Internet поддерживается работа по протоколу UUCP для обмена электронной почтой. В ОС Linux UUCP реализован в пакете Taylor UUCP. Этот пакет состоит из конфигурационных файлов и выполняемых модулей и позволяет создавать полнофункциональный ведущий или ведомый UUCP-хост на базе почтового сервера под управлением ОС Linux. После установления соединения программное обеспечение для работы с почтой может быть настроено для маршрутизации почты по UUCP-соединению.

Valentin Diduk
Valentin Diduk
Украина, одесса, кпи, 2010
Евгений Олабин
Евгений Олабин
Беларусь, Гродно