Чтение онлайн

на главную - закладки

Жанры

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

Смит Родерик В.

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

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

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

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

• 

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

• 

relay_local_from
. Эта опция указывает серверу
sendmail
, что он должен принимать все письма, из содержимого поля
From:
которых следует, что они передаются из локального домена. От предыдущей опции
relay_local_from
отличается тем, что для принятия решения об обработке письма используется лишь адрес в поле
From:
, посредством которого система представляется другим компьютерам. Этот адрес может достаточно просто быть фальсифицирован. Данная опция не обеспечивает приемлемого уровня защиты от спама.

• 

relay_based_on_MX
. Данная опция означает, что сервер
sendmail
должен принимать письма в том случае, если в домене, которому принадлежит отправитель, присутствует запись
MX
, содержащая указание на этот сервер. Опция
relay_based_on_MX
обеспечивает простой и удобный способ управления ретрансляцией. Чтобы настроить почтовый сервер для поддержки еще одного домена, не надо вносить изменения в конфигурационные файлы
sendmail
, достаточно лишь изменить конфигурацию сервера DNS. Однако подобный подход имеет существенный недостаток. Спамеры, поддерживающие собственные домены, могут легко создать запись
MX
и использовать ваш сервер в своих целях.

• 

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

• 

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

Внимание

Для управления ретрансляцией может использоваться также опция

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

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

m4
.

FEATURE(`access_db')

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

access.db
, автоматически создаваемом при установке системы, указывается только локальный домен.

Как вы уже знаете, при запуске программа

sendmail
читает содержимое файла
access.db
. Этот файл обычно хранится в каталоге
/etc
или
/etc/mail
и создается на базе файла
access
. Пример файла
access
приведен ниже.

# Разрешить прием писем с localhost...

localhost.localdomain RELAY

localhost RELAY

127.0.0.1 RELAY

# Разрешить прием писем из локальной сети

192.168.99 RELAY

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

Все приведенные примеры оканчиваются опцией

RELAY
, но кроме нее в файле access могут также использоваться и другие опции.

• 

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

• 

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

• 

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

• 

DISCARD
. Данная опция выполняет те же действия, что и
REJECT
, но письма не возвращаются отправителю.

• 

nnn текст
. Эта опция также работает подобно REJECT, но в возвращаемое сообщение она включает код ошибки nnn и указанный текст.

Отредактировав файл

access
, вам необходимо сгенерировать двоичный файл базы данных. Для этого надо использовать команду
makemap
, которая имеет следующий вид:

# makemap hash /etc/mail/access.db < /etc/mail/access

При инсталляции

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

Поделиться:
Популярные книги

Рассвет русского царства. Книга 2

Грехов Тимофей
2. Новая Русь
Фантастика:
альтернативная история
попаданцы
историческое фэнтези
5.00
рейтинг книги
Рассвет русского царства. Книга 2

Стечкин

Чуев Феликс Иванович
582. Жизнь замечательных людей
Документальная литература:
биографии и мемуары
5.00
рейтинг книги
Стечкин

Чехов. Книга 2

Гоблин (MeXXanik)
2. Адвокат Чехов
Фантастика:
фэнтези
альтернативная история
аниме
5.00
рейтинг книги
Чехов. Книга 2

Кодекс Крови. Книга ХVII

Борзых М.
17. РОС: Кодекс Крови
Фантастика:
попаданцы
аниме
фэнтези
5.25
рейтинг книги
Кодекс Крови. Книга ХVII

Первый среди равных. Книга IV

Бор Жорж
4. Первый среди Равных
Фантастика:
попаданцы
аниме
фэнтези
5.00
рейтинг книги
Первый среди равных. Книга IV

Лекарь Империи 6

Карелин Сергей Витальевич
6. Лекарь Империи
Фантастика:
городское фэнтези
боевая фантастика
аниме
попаданцы
5.00
рейтинг книги
Лекарь Империи 6

Я уже барон

Дрейк Сириус
2. Дорогой барон!
Фантастика:
боевая фантастика
попаданцы
аниме
5.00
рейтинг книги
Я уже барон

Гиблые земли

Нури Альбина
Голоса тьмы
Фантастика:
ужасы и мистика
мистика
боевая фантастика
фэнтези
5.00
рейтинг книги
Гиблые земли

Я еще не царь

Дрейк Сириус
25. Дорогой барон!
Фантастика:
юмористическое фэнтези
аниме
попаданцы
5.00
рейтинг книги
Я еще не царь

Товарищ "Чума" 2

lanpirot
2. Товарищ "Чума"
Фантастика:
городское фэнтези
попаданцы
альтернативная история
5.00
рейтинг книги
Товарищ Чума 2

Инженер Петра Великого 2

Гросов Виктор
2. Инженер Петра Великого
Фантастика:
попаданцы
альтернативная история
фэнтези
5.00
рейтинг книги
Инженер Петра Великого 2

Гражданская кампания

Буджолд Лоис Макмастер
12. Сага о Форкосиганах
Фантастика:
космическая фантастика
9.14
рейтинг книги
Гражданская кампания

Антон Чехов

Труайя Анри
Проза:
историческая проза
5.00
рейтинг книги
Антон Чехов

Осколки чести

Буджолд Лоис Макмастер
1. Сага о Форкосиганах
Фантастика:
космическая фантастика
9.34
рейтинг книги
Осколки чести