LINUX.ORG.RU
ФорумAdmin

sendmail


0

0

А что надо в его настройках указать чтобы он не пытался отсылать (или даже принимать для посылки) почту, адресат в которой не локальный? Т.е. нужно чтобы sendmail работал только локально, неичего не отсылал за пределы сети (т.е. себя). Заранее спасиб.

★★★★★

Как минимум убедиться, что в /etc/mail/access RELAY запрещен для всех (точнее не разрешен). Если используется авторизация при отсылке, тогда еще нужно проверить позволяет ли она делать RELAY (что по умолчанию так и есть). Если да, то возможно подправить правила в cf-файле (не знаю можно ли это сделать стандартными методами).

spirit ★★★★★
()
Ответ на: комментарий от roy

An ``access'' database can be created to accept or reject mail from
selected domains. For example, you may choose to reject all mail
originating from known spammers. To enable such a database, use

FEATURE(`access_db')

sdio ★★★★★
()
Ответ на: комментарий от sdio

Я не то что бы плохо разбираюсь в sendmail, я в нем вообще не разбираюсь :( Есть файл /etc/mail/access.db (двоичный) b /etc/mail/access. Я был бы рад если вы подскажете что туда добавить. И вы наверное неправильно поняли мой вопрос: мне нужно "блокировать" почту не по отправителю, а по получателю.

roy ★★★★★
() автор топика
Ответ на: комментарий от roy

> мне нужно "блокировать" почту не по отправителю, а по получателю.
Да правильно мы поняли. sendmail при приеме письма по адресу получателя определяет локальный он или нет. Если да, то это обычный прием, если нет - RELAY. Вот как раз задача и состоит в том, чтоб отключить RELAY.

> Есть файл /etc/mail/access.db (двоичный) и /etc/mail/access
access.db строится на основании access, обычно это делается командой "makemap hash access.db < access" (про hash или не hash можно узнать из объявления этой "базы данных" в sendmail.cf). Если у вас access пустой попробуйте на всякий случай перестроить db-файл (перезапуск sendmail-а при этом не требуется).

И еще, откуда вы узнали, что sendmail все таки принимает почту для нелокальных пользователей ? Если это действительно так, то хотелось бы взглянуть на sendmail.mc, из которого был получен sendmail.cf.

spirit ★★★★★
()
Ответ на: комментарий от spirit

>access.db строится на основании access, обычно это делается командой "makemap hash access.db < access" (про hash или не hash можно узнать из объявления этой "базы данных" в sendmail.cf). Если у вас access пустой попробуйте на всякий случай перестроить db-файл (перезапуск sendmail-а при этом не требуется).

Хорошо щас попробую.

>И еще, откуда вы узнали, что sendmail все таки принимает почту для нелокальных пользователей ? Если это действительно так, то хотелось бы взглянуть на sendmail.mc, из которого был получен sendmail.cf.

Если честно у меня сеть не большая и я пока только разбираюсь, и sendmail я вообще не трогал. Т.е. как он стоял в системе, так и стоит, конфигурация дефолтная. А узнад я отправив несколько раз сообщения на @mail.ru, @yandex.ru, etc. В результате через несколько часов (5 вроде) получил письмо от своего сервера, который говорит что не может отправить, т.к. не отвечает удаленный сервер, потом такое же письмо через 5 дней.

P.S. Извините конечно, но я вообще смутно представляю как конфигурируется этот монстр. Спасибо большое за помощь.

roy ★★★★★
() автор топика
Ответ на: комментарий от roy

Может будет лучше если вы дадите линк на конфигурацию sendmail? (понятную :)

roy ★★★★★
() автор топика
Ответ на: комментарий от spirit

Перестроил, даже размер не изменился, видимо acces.db и так построен на пустом access.

roy ★★★★★
() автор топика
Ответ на: комментарий от roy

Гм... Суть проблемы в чем--надо запретить пересылку ( релей ) или просто есть сомнения в доставке почты? Так. Во-первых, "главный" файл, где указываются домены, для которых разрешен релей--это relay-domains. Если там нет ничего--никакого релея не будет невзирая ни на какие другие файлы. Во-вторых, файл access.db используется для того, чтобы сделать некоторые дополнительные "надстройки над настройками". Поясняю : например, вы пользуетесь антиспамовыми черными списками типа ordb.org и все письма, идущие с доменов, попавших туда, отбрасываются. Но если в эти базы попал домен domain.ru, почта с которого вам необходима, то вы можете разрешить его в access.db--и почта с него будет получаться вашим сервером. Или второй пример--есть у вас на примете особо злобный спамерерский сервер; так вот можно именно для него переопределить стандартное сообщение, с которым отпинывается спам (с "извините, мы не принимает почту от спамерских серверов" на "как же ты задолбал со своим спамом!")--это тоже прописывается в access (хинт--при написании access не забывать, что надо пользоваться не пробелом, а <TAB>-ом). В-третьих, access.db начинает использоваться sendmail-ом только если эта фича включена в его конфиге. Посмотреть это конечно можно в файле конфигурации sendmail.cf--но там все совершенно глухо и тяжко для понимания; на самом деле этот файл наверняка был создан при конфигурировании на основе файла типа sendmail.mc (или как_то_ещё.mc), который "переваривается" препроцессором в конф. файл. Для включения этой фичи в этом файле должна быть строка FEATURE(`access_db'); вообще всё практически опысывается в этом файле. В общем, в этом вопросе ещё куча грабель, на которые наступлено не одна тысяча раз уже. Так что лучше поискать статейку на предмет создания конфига сендмыла--их просто помойка в Сети. Иначе ничего не поймешь, да ещё можно и попортить рабочие конфиги...

far
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.