Kniga-Online.club

Родерик Смит - Сетевые средства Linux

Читать бесплатно Родерик Смит - Сетевые средства Linux. Жанр: Программное обеспечение издательство -, год 2004. Так же читаем полные версии (весь текст) онлайн без регистрации и SMS на сайте kniga-online.club или прочесть краткое содержание, предисловие (аннотацию), описание и ознакомиться с отзывами (комментариями) о произведении.
Перейти на страницу:

Основной конфигурационный файл sendmail называется sendmail.cf; обычно он располагается в каталоге /etc. Этот файл содержит большое количество опций, представленных в виде, неудобном для восприятия, поэтому анализировать содержимое данного файла и редактировать его чрезвычайно сложно.

Обойти трудности, вызванные сложным форматом sendmail.cf, можно, создавая конфигурационный файл в простом и понятном формате, а затем преобразуя его с помощью утилиты m4 в файл sendmail.cf. Исходный файл, предназначенный для обработки программой заканчивается символами .mc, но конкретное его имя и расположение может изменяться в зависимости от версии операционной системы. В Red Hat это файл /etc/sendmail.mc, в Slackware — /usr/src/sendmail/cf/cf/linux.smtp.mc, а в SuSE — /etc/mail/linux.mc. Независимо от имени, исходный файл m4 гораздо меньше и удобнее для восприятия, чем создаваемый на его основе файл .cf. Например, если в системе SuSE 7.1 файл sendmail.cf содержит 1669 строк, то файл linux.mc состоит всего из 221 строки, причем основную часть файла занимают комментарии (строки комментариев начинаются символами dnl).

Для того чтобы создать файл sendmail.cf из файла m4, необходимо вызвать программу m4 и перенаправить ввод и вывод. В системе SuSE этот вызов имеет следующий вид:

# m4 < /etc/mail/linux.mc > /etc/sendmail.cf

На заметку

В некоторых версиях Linux перед тем как приступать к созданию файла sendmail.cf из исходного файла m4, необходимо установить дополнительный пакет. Например, в Red Hat для создания конфигурационного файла нужен пакет sendmail-cf.

Внимание

Не следует изменять рабочий вариант файла sendmail.cf. Желательно скопировать файл sendmail.cf и исходный файл m4 в другой каталог. Если в результате редактирования вы повредите конфигурационный файл, то, используя созданную копию, вы сможете восстановить рабочую конфигурацию sendmail.

После изменения конфигурационного файла необходимо перезапустить sendmail. Во многих версиях Linux sendmail запускается с помощью сценария SysV, поэтому для перезапуска программы можно использовать опцию restart этого сценария.

Большинство записей в конфигурационном файле m4 задается в следующем формате:

ИМЯ_ХАРАКТЕРИСТИКИ(`опция1'[, `опция2' [,...])

Имя характеристики — это некоторое содержательное имя, например define или MASQUERADE_AS. В качестве опций могут быть указаны имена узлов, установки, специфические для sendmail, например always_add_domain, и т.д. В определениях некоторых характеристик одинарные кавычки можно не использовать.

Внимание

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

Помимо sendmail.cf, программа sendmail также использует при работе другие файлы.

• access.db. Этот двоичный файл создается на базе текстового файла access. Файл access.db определяет, какие компьютеры могут обращаться к программе sendmail. Конфигурация sendmail в качестве ретранслятора во многом зависит от содержимого этого файла. Многие сценарии запуска sendmail вызывают makemap, и если файл access изменился с момента последнего создания access.db, автоматически генерируется новый файл access.db.

• aliases.db. Этот двоичный файл также создается на базе текстового файла с аналогичным именем (aliases). Он определяет псевдонимы — имена, эквивалентные другим именам. Так, например, во многих дистрибутивных пакетах для пользователя root определяется псевдоним postmaster. Возможно, вы захотите создать псевдоним для root, чтобы просматривать почту суперпользователя посредством обычной учетной записи. Подобно файлу access.db, при выполнении многих сценариев запуска файл aliases.db генерируется автоматически.

Рассмотренные выше файлы обычно размещаются в каталоге /etc или /etc/mail. Кроме того, в этом каталоге находятся другие файлы баз данных, определяющие особенности работы sendmail.

Маскировка адреса sendmail

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

MASQUERADE_AS(`требуемый_адрес')

FEATURE(masquerade_envelope)

Запись MASQUERADE_AS активизирует базовые средства маскировки, которые включают адрес в поле заголовка From: в случае, если пользовательская программа не задает имя узла. Поскольку большинство почтовых программ корректно заполняет это поле, данное средство в основном используется, если пользовательская программа сконфигурирована неправильно. Запись FEATURE(masquerade_envelope) изменяет поле From:, даже если в нем был задан адрес узла.

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

MASQUERADE_DOMAIN(`домен-источник')

FEATURE(`limited_masquerade')

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

Настройка sendmail для получения почты

Когда удаленный сервер передает почту вашему серверу, письма адресованы конкретным пользователям, работающим на определенных компьютерах. Чтобы обеспечить доставку локальной почты, программа sendmail должна распознавать локальные адреса. Почтовый сервер sendmail поддерживает файл, в котором указываются адреса локальных узлов. В различных дистрибутивных пакетах для данного файла используются разные имена. В Red Hat это файл /etc/mail/local-host-names, а в SuSE — /etc/sendmail.cw. Если вам не удается обнаружить его, найдите в sendmail.cf запись, которая начинается символами Fw. Эта запись содержит имя файла, в котором указаны имена локальных узлов. Независимо от имени, содержимое файла представляет собой набор строк, в каждой из которых задано имя узла. Строки, начинающиеся с символа #, считаются комментариями.

Работа в режиме ретранслятора

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

Настройка sendmail для ретрансляции писем

При конфигурировании почтового сервера очень часто приходится обеспечивать передачу писем из локальной сети. Сервер получает сообщения от пользовательских программ и в случае возникновения проблем с передачей данных в сети может временно хранить эти сообщения на своем диске. Для обеспечения подобного взаимодействия адрес почтового сервера должен быть указан при настройке программ подготовки почты.

По умолчанию почтовый сервер, инсталлированный в сети, не настроен для работы в качестве ретранслятора. При попытке передать письмо на сервер программа подготовки почты получит в ответ сообщение "relaying denied" ("ретрансляция запрещена"). Для того чтобы программа sendmail работала в качестве ретранслятора, надо активизировать соответствующие компоненты. В частности, в исходном конфигурационном файле необходимо задать записи FEATURE, указав в них следующие опции.

• relay_entire_domain. Если указана данная опция, sendmail принимает сообщения из своего домена, а также письма, адресованные пользователям в его домене. Для определения принадлежности к домену sendmail использует сервер DNS. Опция relay_entire_domain представляет собой удобное средство обеспечения ретрансляции.

Перейти на страницу:

Родерик Смит читать все книги автора по порядку

Родерик Смит - все книги автора в одном месте читать по порядку полные версии на сайте онлайн библиотеки kniga-online.club.


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

Отзывы читателей о книге Сетевые средства Linux, автор: Родерик Смит. Читайте комментарии и мнения людей о произведении.


Уважаемые читатели и просто посетители нашей библиотеки! Просим Вас придерживаться определенных правил при комментировании литературных произведений.

  • 1. Просьба отказаться от дискриминационных высказываний. Мы защищаем право наших читателей свободно выражать свою точку зрения. Вместе с тем мы не терпим агрессии. На сайте запрещено оставлять комментарий, который содержит унизительные высказывания или призывы к насилию по отношению к отдельным лицам или группам людей на основании их расы, этнического происхождения, вероисповедания, недееспособности, пола, возраста, статуса ветерана, касты или сексуальной ориентации.
  • 2. Просьба отказаться от оскорблений, угроз и запугиваний.
  • 3. Просьба отказаться от нецензурной лексики.
  • 4. Просьба вести себя максимально корректно как по отношению к авторам, так и по отношению к другим читателям и их комментариям.

Надеемся на Ваше понимание и благоразумие. С уважением, администратор kniga-online.


Прокомментировать
Подтвердите что вы не робот:*
Подтвердите что вы не робот:*