русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Файл конфигурации программы Sendmail


Дата добавления: 2015-07-09; просмотров: 595; Нарушение авторских прав


Программа Sendmail — это наиболее распространенный MTA. Несмотря на солидный возраст, эта программа до сих пор устанавливает стандарт работы MTA и обладает исключительно широкими возможностями.

Основной файл конфигурации программы Sendmail — sendmail.cf.

В GNU/Linux файлы конфигурации Sendmail располагают в каталоге /etc/mail.

В файле конфигурации sendmail.cf определяются правила обработки почты. В нем могут быть определены классы (classes), макросы (macros) и опции (options):

r классы определяют общие фразы, которые используются для задания на- боров правил обработки для сообщений определенного типа;

r макросы представляют собой наборы значений для упрощения набора длинных строк текста в файле конфигурации;

r опции представляют собой набор параметров для обеспечения работы

Sendmail.


 

Каждая строка конфигурационного файла sendmail.cf начинается с одиночно- го символа, определяющего действие, которое должно быть выполнено. Строки комментариев начинаются с символа #.

Используются следующие виды строк конфигурации sendmail.cf:

r C — определяет класс;

r D — определяет макрос;

r F — определяет имя файла, содержащего классы;

r H — определяет поля заголовка в посланиях и действия с ними;

r K — определяет базы данных;

r M — определяет почтовые хосты;

r O — определяет опции Sendmail;

r P — определяет приоритеты;

r R — определяет наборы правил для обработки адресов;

r S — определяет группы наборов правил.

Например, определение имени почтового узла, называемого Smart Host, через который осуществляется ретрансляция всей исходящей почты, делается с помощью макроса в файле sendmail.cf (пример 29.2).

 

Пример 29.2. Настройка Smart Host

 

DSmailrelay.provider.ru

 

В этом примере в файл настроек Sendmail занесена настройка, вынуждающая его посылать для дальнейшей отправки всю исходящую почту на узел mailrelay.provider.ru. Это сделано с помощью определения макроса с име- нем S, которому присвоено значение mailrelay.provider.ru.



Имеются заранее определенные макросы. Далее приведены некоторые из них:

r $a — дата отправки из поля Date: заголовка письма;

r $b — текущая дата в формате sendmail;

r $c — число передач письма серверами MTA;

r $d — текущая дата в системном формате UNIX;

r $f — адрес отправителя;

r $h — идентификатор сообщения в очереди;

r $j — полное доменное имя узла;


 

r $k — доменная часть узла;

r $m — имя процесса демона sendmail;

r $n — PID процесса демона sendmail;

r $p — формат адреса отправителя по умолчанию;

r $r — протокол, используемый для приема сообщения;

r $s — имя хоста отправителя;

r $t — числовое выражение текущего времени;

r $u — получатель сообщения;

r $v — номер версии Sendmail;

r $w — имя хоста, на котором запущен данный экземпляр Sendmail;

r $x — полное имя отправителя;

r $z — рабочий каталог получателя;

r $_ — проверенный адрес отправителя;

r ${bodytype} — тип тела сообщения;

r ${client_addr} — IP-адрес SMTP-клиента;

r ${client_name} — имя хоста SMTP-клиента;

r ${client_port} — номер TCP-порта SMTP-клиента;

r ${opMode} — текущий режим работы (например, отладочный);

r ${deliveryMode} — текущий режим доставки.

Классы C предназначены для группировки критериев, по которым будут вы- бираться пути обработки сообщения. Формат определения класса приведен в примере 29.3.

 

Пример 29.3. Определение класса

 

Ccphrase1 phrase2 ... phraseN

 

Здесь c — имя класса, а phrase — критерии, которые объединены в класс. Если имя класса многосимвольное, то его следует взять в фигурные скобки. Так, например, для определения класса локальной обработки сообщений с именем w (т. е. сообщений, которые не надо передавать через сеть, а доста- точно поместить в почтовый ящик адресата на этой же машине) следует ис- пользовать директиву Cw (пример 29.4).


 

Пример 29.4. Определение класса локальных имен

 

Cwlocalhost

 

Классы часто задают с помощью внешних текстовых файлов, а не в конфигура- ционном файле sendmail.cf. Для извлечения значений классов из файлов предна- значены строки конфигурации F. Формат строк F показан в примере 29.5.

 

Пример 29.5. Определение класса с помощью файла

 

Fc filename

Здесь с — имя класса, а filename — имя файла, содержащего определение класса. Имя класса подчиняется тем же правилам, что и в строках C.

Предположим, что сервер SMTP может передавать (relay) почту для несколь- ких доменов, имена которых указывают в файле /etc/mail/relay-domains (при- мер 29.6).

 

Пример 29.6. Определение доменов, для которых разрешена передача почты

 

FR-o /etc/mail/relay-domains

 

Здесь класс R, задающий имена доменов, для которых разрешена передача почты, определяется с помощью строк в файле /etc/mail/relay-domains.

Помимо задания классов в текстовых файлах широко используются базы данных. Для извлечения значений класса из базы данных предназначены строки K (пример 29.7).

 

Пример 29.7. Определение класса в базе данных

 

Kmapname mapclass arguments

 

Здесь mapname — имя файла базы данных, mapclass — тип индексирования базы данных (например, hash), а argument — дополнительные аргументы.

Это применяется, например, для предотвращения рассылки несанкциониро- ванных сообщений с помощью файла access.db, разрешающего доступ к MTA (пример 29.8).

 

Пример 29.8. Включение файла access.db

 

Kaccess hash -T<TMPF> -o /etc/mail/access.db


 

В этом примере определена база данных access, находящаяся в файле

/etc/mail/access.db.

Опции команды sendmail, задаваемые с помощью -o и -O в командной стро- ке, могут быть заданы непосредственно в файле конфигурации sendmail.cf. Для этого используются директивы O. Формат директив O: Oo value или O option=value, где o — односимвольное имя опции, а option — длинное имя опции (пример 29.9).

 

Пример 29.9. Задание времени ожидания сетевого соединения

 

O Timeout.connect=1m

 

Бóльшую часть файла конфигурации sendmail.cf занимают настройки про- цесса преобразования почтовых адресов, что делается с помощью определе- ний правил разборки R и их наборов S.



<== предыдущая лекция | следующая лекция ==>
Организация электронной почты | Файл конфигурации sendmail.mc


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 0.412 сек.