Россия, Казань, Казанский Национальный Исследовательский Технический Университет |
Протокол 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-соединению.