LINUX.ORG.RU
ФорумAdmin

sendmail и субдомены


0

0

есть домен типа company.ru, и юзеры с почтовыми адресами типа user@company.ru настроен антиспам на домен company.ru.

В последнее время спамеры наловчились посылать письма хитро for <user@remove-this-fake.company.ru> и письмо пропускается спамфильтром, т.к. оно на относится к домену company.ru и sendmail'ом(почему-то?) перенаправляется юзеру user@company.ru

Задача запретить в sendmail прием писем для любых субдоменов, принимать только для основного домена company.ru

как это настроить?

anonymous

Возьмите из заголовков письма его ID почтовой очереди и посмотрите что об этом ID писал в логи sendmail (какой в логах указан e-mail получателя).

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

access
mzta.ru RELAY
172.16 RELAY

local-host-names
# local-host-names - include all aliases for your machine here.
mzta.ru

sendmail.mc
divert(-1)dnl
include(`/usr/share/sendmail-cf/m4/cf.m4')dnl
VERSIONID(`setup for Red Hat Linux')dnl
OSTYPE(`linux')dnl
define(`confDEF_USER_ID',``8:12'')dnl
define(`confTRUSTED_USER', `smmsp')dnl
define(`confTO_CONNECT', `1m')dnl
define(`confMAX_MESSAGE_SIZE', `20000000')
define(`confMAX_MIME_HEADER_LENGTH', `256/128')
define(`confMAX_HEADERS_LENGTH', `16384')
define(`confMAX_RCPTS_PER_MESSAGE', `10')
define(`confNO_RCPT_ACTION', `add-to-undisclosed')
define(`confMIN_FREE_BLOCKS', `102400')
define(`confMAX_DAEMON_CHILDREN',`50')
define(`confCONNECTION_RATE_THROTTLE',`5')
define(`confTRY_NULL_MX_LIST',true)dnl
define(`confDONT_PROBE_INTERFACES',true)dnl
define(`PROCMAIL_MAILER_PATH',`/usr/bin/procmail')dnl
define(`ALIAS_FILE', `/etc/aliases')dnl
dnl define(`STATUS_FILE', `/etc/mail/statistics')dnl
define(`UUCP_MAILER_MAX', `2000000')dnl
define(`confUSERDB_SPEC', `/etc/mail/userdb.db')dnl
define(`confPRIVACY_FLAGS', `authwarnings,novrfy,noexpn,needmailhelo,restrictqrun,restrictmailq,nobodyretur n')dnl
define(`confAUTH_OPTIONS', `A p')dnl
TRUST_AUTH_MECH(`LOGIN PLAIN')dnl
define(`confAUTH_MECHANISMS', `LOGIN PLAIN')dnl
define(`confCACERT_PATH',`/usr/share/ssl/certs')
define(`confCACERT',`/usr/share/ssl/certs/cacert.pem')
define(`confSERVER_CERT',`/usr/share/ssl/certs/sendmail.pem')
define(`confSERVER_KEY',`/usr/share/ssl/certs/sendmail.pem')
define(`confTO_IDENT', `0')dnl
dnl FEATURE(delay_checks)dnl
## KASPERSKY ANTI-SPAM AND DRWEB
INPUT_MAIL_FILTER(`kasfilter',`S=local:/var/run/kas-milter.socket, T=C:10s;S:20s;R:30s')dnl
INPUT_MAIL_FILTER(`drweb-filter',`S=inet:3001@localhost, F=T,T=C:1m;S:5m;R:5m;E:1h')dnl
define(`confINPUT_MAIL_FILTERS',`kasfilter, drweb-filter')
define(`confMILTER_LOG_LEVEL',`1')
## KASPERSKY ANTI-SPAM END
FEATURE(`no_default_msa',`dnl')dnl
FEATURE(`smrsh',`/usr/sbin/smrsh')dnl
FEATURE(`mailertable',`hash -o /etc/mail/mailertable.db')dnl
FEATURE(`virtusertable',`hash -o /etc/mail/virtusertable.db')dnl
FEATURE(redirect)dnl
FEATURE(always_add_domain)dnl
FEATURE(use_cw_file)dnl
FEATURE(use_ct_file)dnl
dnl #
dnl # The -t option will retry delivery if e.g. the user runs over his quota.
dnl #
FEATURE(local_procmail,`',`procmail -t -Y -a $h -d $u')dnl
FEATURE(`access_db',`hash -T<TMPF> -o /etc/mail/access.db')dnl
FEATURE(`blacklist_recipients')dnl
EXPOSED_USER(`root')dnl
DAEMON_OPTIONS(`Port=smtp, Name=MTA')dnl
DAEMON_OPTIONS(`Port=smtps, Name=TLSMTA, M=s')dnl
FEATURE(`accept_unresolvable_domains')dnl
LOCAL_DOMAIN(`mzta.ru')dnl
dnl #
dnl # The following example makes mail from this host and any additional
dnl # specified domains appear to be sent from mydomain.com
dnl #
dnl MASQUERADE_AS(`mydomain.com')dnl
dnl #
dnl # masquerade not just the headers, but the envelope as well
dnl #
dnl FEATURE(masquerade_envelope)dnl
dnl #
dnl # masquerade not just @mydomainalias.com, but @*.mydomainalias.com as well
dnl #
dnl FEATURE(masquerade_entire_domain)dnl
dnl #
dnl MASQUERADE_DOMAIN(localhost)dnl
dnl MASQUERADE_DOMAIN(localhost.localdomain)dnl
dnl MASQUERADE_DOMAIN(mydomainalias.com)dnl
dnl MASQUERADE_DOMAIN(mydomain.lan)dnl
MAILER(smtp)dnl
MAILER(procmail)dnl

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

>Возьмите из заголовков письма его ID почтовой очереди и посмотрите что об этом ID писал в логи sendmail (какой в логах указан e-mail получателя).

Я посмотрел, все оказалось, как я писал в первом сообщении. Т.е. сообщение идет на адрес user@bla-bla-bla.company.ru и переадресовывется на user@company.ru

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

не совсем в тему, но фичу FEATURE(`accept_unresolvable_domains')dnl неплохо было бы отрубить, не нужна она

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

>не совсем в тему, но фичу FEATURE(`accept_unresolvable_domains')dnl неплохо было бы отрубить, не нужна она

уже убрал :)

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

1. Покажите лог, непонятно, что значит переадресовывается
2. mx запись для вашего домена и A запись для bla-bla-bla.company.ru
тоже хотелось бы посмотреть

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

кусок письма
========================
Return-Path: <kiang5@fileplanet.com>
Received: from 88.227.26.139 ([88.227.26.139])
by mzta.ru (8.12.8/8.12.8) with ESMTP id m1DATXdq023031
for <samson@remove-this-fake.mzta.ru>; Wed, 13 Feb 2008 13:29:34 +0300
Message-ID: <000801c86e2b$01c3d06d$95155991@jqluqx>
From: "ellery edward" <kiang5@fileplanet.com>
To: <samson@mzta.ru>
Subject: =?koi8-r?B?8NLPxMHF1NPRIMvXwdLUydLBINDPINXOycvBzNjOz8ogw8XOxSE=?=
Date: Wed, 13 Feb 2008 08:42:18 +0000
MIME-Version: 1.0
Content-Type: multipart/alternative;
========================

Вот лог почтовика
========================
Feb 13 13:29:35 mzta sendmail[23031]: m1DATXdq023031: from=<kiang5@fileplanet.com>, size=3282, class=0, nrcpts=1, msgid=<000801c86e2b$01c3d06d$95155991@jqluqx>, proto=ESMTP, daemon=MTA, relay=[88.227.26.139]
Feb 13 13:29:36 mzta drweb-smf[23033]: [m1DATXdq023031]: scan: the message(drweb.tmp.YFLXhi) sent by kiang5@fileplanet.com to samson@remove-this-fake.mzta.ru is passed
Feb 13 13:29:36 mzta drweb-smf[23033]: [m1DATXdq023031]: processing message from kiang5@fileplanet.com is over
Feb 13 13:29:36 mzta sendmail[23035]: m1DATXdq023031: to=<samson@remove-this-fake.mzta.ru>, delay=00:00:02, xdelay=00:00:00, mailer=local, pri=33640, dsn=2.0.0, stat=Sent
========================

anonymous
()
Ответ на: комментарий от Sciurus

>2. mx запись для вашего домена и A запись для bla-bla-bla.company.ru
тоже хотелось бы посмотреть

Я не очень понял, что Вам показать и как это сделать?

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

mzta.ru MX pr.. 10, mail ex.. = mail.mzta.ru

ваш bla-bla-bla.company.ru часом не mail.mzta.ru
Если да, то причина получения этой почты очевидна

Если нет, то смотрите
/etc/mail/local-host-names
и
/etc/hosts


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

>ваш bla-bla-bla.company.ru часом не mail.mzta.ru
нет мой письма идут по адресе такому
samson@remove-this-fake.mzta.ru
а приходят мне на адрес samson@mzta.ru

т.е. добавляется домен третьего уровня remove-this-fake

anonymous
()
Ответ на: комментарий от Sciurus

Если нет, то смотрите /etc/mail/local-host-names и /etc/hosts

Смотрел, естественно там ни про какие remove-this-fake.mzta.ru речи нет

anonymous
()
Ответ на: комментарий от Sciurus

[root@mzta root]# echo $=w|sendmail -bt
ADDRESS TEST MODE (ruleset 3 NOT automatically invoked)
Enter <ruleset> <address>
> mzta.ru
post
localhost.localdomain
localhost
[127.0.0.1]
> [root@mzta root]#

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

1. egrep remove-this-fake.mzta.ru mailertable
2. Почтовик в наследство достался или вы сами все делали?
3. Не по делу, но все же: версия оч. нехорошая

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

1. mailertable пустой
2. Почтовик включен был в дистрибутив red hat 9, его и оставил.
3. Т.е. это глюк почтовика? может его можно как-нить кустарно залечить, не переставляя систему и софт. Этот комп у нас ключевой, он должен работать 24 часа в сутки 365 дней в году

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

1. Я сдаюсь, чего-то, наверное, упускаю, может гуру подключатся ...

2. Приходилось сталкиваться с тем, что sendmail тоже старой версии не помню из какого дистра не хотел ни в какую работать с перенаправлением напрямую в /dev/null почты для несущ юзеров. Это было не на моем почтовике,
и как так можно собрать sendmail, я не знаю, но было такое.

3. Имеется в виду не глюк, а безопасность. Уязвимая версия.

Sciurus
()

> telnet mail.mzta.ru 25
Trying 80.240.96.66...
Connected to mail.mzta.ru.
Escape character is '^]'.
220 mzta.ru ESMTP Sendmail 8.12.8/8.12.8; Wed, 13 Feb 2008 15:55:39 +0300
helo linux.org.ru
250 mzta.ru Hello, pleased to meet you
mail from: sdio@linux.org.ru
250 2.1.0 sdio@linux.org.ru... Sender ok
rcpt to: root@kuku.mzta.ru
250 2.1.5 root@kuku.mzta.ru... Recipient ok
data
354 Enter mail, end with "." on a line by itself
Subject: test from LOR

Dermo tvoj pochtovik
.
250 2.0.0 m1DCtddq007332 Message accepted for delivery
quit
221 2.0.0 mzta.ru closing connection

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

/etc/mail/virtusertable в этом файле есть что-то?

после изменений sendmail.mc компилировался новый sendmail.cf ?
sendmail перезапускался? (достаточно killall -HUP sendmail)

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

>Dermo tvoj pochtovik

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

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

>etc/mail/virtusertable в этом файле есть что-то?

там пусто

>после изменений sendmail.mc компилировался новый sendmail.cf ?
>sendmail перезапускался? (достаточно killall -HUP sendmail)

Само-собой, компилил новый конфиг и перезапускал сендмайл

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

если паранойя не мучает, вышли мне в содержимое /etc/mail интересно докапаться до проблемы.

cd /etc
tar cf mail.tar mail
echo "mail.tar attached" | mutt -a mail.tar -s mail.tar sdio4lor@gmail.com

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


>если паранойя не мучает, вышли мне в содержимое /etc/mail интересно докапаться до проблемы.

Выслал. Надеюсь подскажешь, кстати у меня на другом серваке с почтовиком 8.13.8 тоже самое, так что я думаю дело в настройках.

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

sendmail оказался не причем.

у тебя ДНС неправильно настроен.

$ host mzta.ru
mzta.ru has address 89.111.173.114

$ host sdfsdf.mzta.ru
sdfsdf.mzta.ru is a nickname for mzta.ru
mzta.ru has address 89.111.173.114

$ host dfghrtyertewrterterte.mzta.ru
dfghrtyertewrterterte.mzta.ru is a nickname for mzta.ru
mzta.ru has address 89.111.173.114


Понял?

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

>у тебя ДНС неправильно настроен.

Спасибо большое, буду общаться с хостерами.

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

А разве DNS здесь должен играть какую-то роль ? sendmail-у ведь явно сказали "принимать на такие-то домены !", а он принимает на что попало. Так ведь может кто угодно прописать какой-нибудь "vasya.com CNAME mzta.ru", и sendmail начнет принимать почту на user@vasya.com.
В sendmail-е как раз проблема, а не в DNS.

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

Короче проблема понятна: надо было всего лишь удалить "mzta.ru RELAY" из /etc/mail/access (или заменить на "From:mzta.ru RELAY") и все.

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

Странно, у меня в тестовом варианте помогало: сразу ругалось relaying denied. Если не помогает, тогда вообще непонятно на каком основании он принимает такую (@xxxx.mzta.ru) почту :-) (relay не разрешен, домен как локальный не прописан)

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

Можно мои 5 копеек? По поводу CNAME.

echo 3,0 user@cname.dom.ru |sendmail -bt
показал, что перепись с CNAME на канонич.имя происходит
на отправляющем сервере в наборе SCanonify2
в строке
# pass to name server to make hostname canonical
R$* $| $* < @ $* > $* $: $2 < @ $[ $3 $] > $4
А в op.me говорится, что эта штука ($[ ... $]) also prefers
A and CNAME over MX, даже если mx найдется, то он имеется в виду, но поиск продолжается.

Второй почтовик получит уже переписанное на каноническое имя
домена получателя и спокойно примет его

За отключение этой штуки (изменение CNAME на канонику) отвечает
define(`confDONT_EXPAND_CNAMES',`True')
Проверено - работает на отправляющем почтовике
В этом случае письмо пришло как и у автора с неизмененной CNAME-доменной частью, НО! принимающий сервер отругался, как и положено:
mail loops back to me (MX problem?)

В книге Bryan Costales говорится (34.8.18, стр 700)
Ordinarily, the $[ and $] operators cause the enclosed hostname
to be looked up with DNS and replaced with yhe canonical name for that host
The canonical name is the A DNS record
here.us.edu IN A 1.2.3.4
ftp.us.edu IN CNAME here.us.edu

If the address ftp.us.edu is fed to the $[ and $] operators in the RHS of a rule
R... $[ $1 $]
then the rewritten result of passing ftp.us.edu as $1 will be A record name here.us.edu
THIS BEHAVIOR IS CORRECT UNDER RFC822 AND RFC1123, BUT THE IETF IS CUURENTLY MOVING TOWARD A CHANGE.

То, что у автора почта приходила (судя по логу)
с непереписанным на канонику доменом получателя и почтовик спокойно принимал письмо, хотя домен не числился в локальных, наводит на мысль, что там дело не только в CNAME
Вообще похоже что там wildcard mx-запись на его домен
Но почему почтовик это все принимает?

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