Книга: Сетевые средства Linux
Работа в режиме ретранслятора
Разделы на этой странице:
Работа в режиме ретранслятора
Как было сказано ранее, ретрансляция является важным режимом работы почтового сервера. Как правило, настраивая sendmail
, приходится обеспечивать ретрансляцию писем, созданных на локальной машине, почты из локальной сети и, возможно, сообщений с некоторых удаленных компьютеров. При этом необходимо следить за тем, чтобы сервер был закрыт для спамеров. Кроме того, не исключено, что вам потребуется сконфигурировать систему для передачи исходящей почты, используя в качестве ретранслятора внешний сервер. В конфигурационном файле sendmail
предусмотрены различные опции, имеющие отношение к режиму ретрансляции.
Настройка 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
.
Настройка sendmail
для передачи почты через ретранслятор
В предыдущем разделе рассматривался вопрос об использовании программы sendmail
для ретрансляции почты. Однако, настраивая почтовый сервер, необходимо также принимать во внимание и вопросы передачи писем через ретранслятор, функции которого выполняет другой сервер. Часто при организации работы небольшой сети и даже одного компьютера приходится использовать в качестве ретранслятора почтовый сервер провайдера. Несмотря на то что компьютер под управлением Linux, на котором установлена программа sendmail
, может передавать почту самостоятельно, многие провайдеры запрещают это, включая IP-адреса, предоставляемые своим клиентам, в списки адресов, предназначенные для борьбы со спамом. Кроме того, некоторые компьютеры бывают выключены в течение длительного времени, в результате чего становится невозможным их использование в качестве почтовых серверов. В особенности это относится к портативным компьютерам.
В большинстве случаев конфигурация sendmail
, установленная по умолчанию, не предполагает передачу писем через ретранслятор. Чтобы обеспечить такую возможность, надо включить в конфигурационный файл m4
следующую запись:
FEATURE(`nullclient', `outgoing.mail.relay')
В данном случае outgoing.mail.relay
— это имя компьютера, используемого для ретрансляции почты. После того как вы создадите файл sendmail.cf
и перезапустите sendmail
, вся исходящая почта будет передаваться через указанный почтовый сервер. Выполнив настройку sendmail
, убедитесь, что письма корректно доставляются адресатам.
- Резервное копирование при работе InterBase в режиме 24x7
- Практическая работа 53. Запуск Access. Работа с объектами базы данных
- Лекция 15. Работа с базами данных
- Работа с ресурсами локальной сети
- Эффективная работа с временными файлами сортировки
- Ускоренная работа с индексами
- HR-брендинг: Работа с поколением Y, новые инструменты для коммуникации, развитие корпоративной культуры и еще 9 эффектив...
- Безопасная работа с внешними таблицами
- Работа со строками
- 9.2. Работа прокси-сервера
- 3. Заработок для фотографов: заработать на фото – сайты фотобанков
- Работа с активным документом