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

ЖАНРЫ

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

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

Шрифт:

• 

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
, убедитесь, что письма корректно доставляются адресатам.

Конфигурация

sendmail
для противодействия попыткам передачи спама

Существует несколько способов настройки

sendmail
для блокирования поступающих рекламных сообщений и предотвращения попыток использования сервера для передачи спама. Один из способов состоит в использовании файла
access
и его двоичного аналога
access.db
. С помощью файла
access.db
можно блокировать спам на основании анализа адресов отправителей. Если вы зададите для некоторых доменов или компьютеров, указанных с помощью имени или IP-адреса, опции
REJECT
или
DISCARD
, сообщения из этих источников будут отвергаться. Если вы регулярно получаете рекламные сообщения с определенных адресов, этот способ позволит избавиться от них. Следуя описанному подходу, необходимо соблюдать осторожность, так как вместе со спамом будут отвергнуты и корректные сообщения, приходящие с тех же адресов или из тех же доменов. Если вы блокируете почту, поступающую из сети, которая принадлежит популярному провайдеру, вы рискуете потерять нужные вам письма.

Другой способ блокирования спама состоит в применении списков IP-адресов. Для того чтобы реализовать этот способ, надо указать в конфигурационном файле

m4
опцию
dnsbl
.

FEATURE(dnsbl, `blackholes.mail-abuse.org', `Rejected - see \

http://www.mail-abuse.org/rbl/')

Данная запись указывает

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

Поделиться с друзьями: