URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID1
Нить номер: 80457
[ Назад ]

Исходное сообщение
"qmail и rblsmtp"

Отправлено asipin , 26-Май-08 12:29 
Есть почтовый сервер на qmail.
Я раньше с ним не сталкивался, все почтовики делал на postfix. А тут столкнулся с проблемой, есть уже работающий сервер. Более 300 доменом, про количество ящиков я молчу...

И тут возникла проблема, при отправке почты клиентами настроена smtp авторизация. А для блокировки спама используется rblsmtp.

И получается крайне неприятная ситуация, когда еще до авторизации клиентов с динамическими адресами (от провайдеров домащних) банит по rbl. Соответственно, хотелось бы сделать так, чтоб если прошел авторизацию, то можно почту отправлять через сервер.

Как я понимаю, для приема почты стоит /var/qmail/supervise/smtp/run
С таким содержимым

#!/bin/sh
QMAILDUID=`id -u vpopmail`
NOFILESGID=`id -g vpopmail`
MAXSMTPD=`cat /var/qmail/control/concurrencyincoming`
#BLACKLIST=""
BLACKLIST=`cat /var/qmail/control/blacklists`
WHITELIST=`cat /var/qmail/control/whitelists`
SMTPD="/var/qmail/bin/qmail-smtpd"
TCP_CDB="/etc/tcprules.d/tcp.smtp.cdb"
#RBLSMTPD=""
RBLSMTPD="/usr/bin/rblsmtpd"
HOSTNAME=`hostname`
VCHKPW="/home/vpopmail/bin/vchkpw"
REQUIRE_AUTH=0

exec /usr/bin/softlimit -m 20000000 \
     /usr/bin/tcpserver -v -R -H -l $HOSTNAME -x $TCP_CDB -c "$MAXSMTPD" \
     -u "$QMAILDUID" -g "$NOFILESGID" 0 smtp \
      $RBLSMTPD $WHITELIST $BLACKLIST $SMTPD $VCHKPW /bin/true 2>&1


Первым почту принимает через tcpserver как раз /usr/bin/rblsmtpd.

Можно ли как то сделать чтоб для авторизованным ползователей он этого не делал?
Да, судя по доккументации, я понял, что нельзя (может читал правда не тем глазом).

Есть ли решение для данной проблемы?


Содержание

Сообщения в этом обсуждении
"qmail и rblsmtp"
Отправлено Pahanivo , 27-Май-08 10:39 
Это не для приема почты стоит как ты выразился ...
Это скрипт запуска собственно самого smtp.
Скрипт представляет собой цепочку - конект последовательно передается от первого к последующим, и если гдето конект непроходит по правилам, то цепочка рвется и конект закрывается. Т.е. варианта два исходно: рбл либо есть либо нет.
Думаю суть понятна - пока юзаешь рбл он будет банить по тем спискам которые к нему прикручены.
Советую сделать так: всех известных статик клиентов заводим в ВАЙТЛИСТ, а в качестве БЛЕКЛИСТА используем только адекватные блек листы в которых есть способ самому клиенты сделать делист. Ибо проблема конекта клиента - это проблема клиента, а не твоя. И то что его адреса гдето в листах - это все его проблема. Пусть сам идет и удяляет свои адреса из списков, благо сервак емы ссылку для этого отдает. Как вариант не использовать блеклисты совсем - но это сам понимаешь )

"qmail и rblsmtp"
Отправлено asipin , 27-Май-08 10:58 
>[оверквотинг удален]
>Думаю суть понятна - пока юзаешь рбл он будет банить по тем
>спискам которые к нему прикручены.
>Советую сделать так: всех известных статик клиентов заводим в ВАЙТЛИСТ, а в
>качестве БЛЕКЛИСТА используем только адекватные блек листы в которых есть способ
>самому клиенты сделать делист. Ибо проблема конекта клиента - это проблема
>клиента, а не твоя. И то что его адреса гдето в
>листах - это все его проблема. Пусть сам идет и удяляет
>свои адреса из списков, благо сервак емы ссылку для этого отдает.
>Как вариант не использовать блеклисты совсем - но это сам понимаешь
>)

Спасибо большое. Я и сам к вечеру понедельника включил мозг и понял, что тут как раз идет проверка по порядку
В данный момент порядок такой
exec /usr/bin/softlimit -m 20000000 \
     /usr/bin/tcpserver -v -R -H -l $HOSTNAME -x $TCP_CDB -c "$MAXSMTPD" \
     -u "$QMAILDUID" -g "$NOFILESGID" 0 smtp \
      $RBLSMTPD $WHITELIST $BLACKLIST $SMTPD $VCHKPW /bin/true 2>&1

Т.е. в начале рбл (причем он же, как я понимаю, обрабатывает белый и черный список), а далее smtp с авторизацией.

exec /usr/bin/softlimit -m 20000000 \
     /usr/bin/tcpserver -v -R -H -l $HOSTNAME -x $TCP_CDB -c "$MAXSMTPD" \
     -u "$QMAILDUID" -g "$NOFILESGID" 0 smtp \
      $SMTPD $VCHKPW $RBLSMTPD $WHITELIST $BLACKLIST  /bin/true 2>&1

А почемуже такая схема не работает? Тут по идее, не прошла авторизация, проверяем по черному списку.


"qmail и rblsmtp"
Отправлено DogEater , 27-Май-08 11:22 
>[оверквотинг удален]
>
>exec /usr/bin/softlimit -m 20000000 \
>     /usr/bin/tcpserver -v -R -H -l $HOSTNAME -x
>$TCP_CDB -c "$MAXSMTPD" \
>     -u "$QMAILDUID" -g "$NOFILESGID" 0 smtp \
>
>      $SMTPD $VCHKPW $RBLSMTPD $WHITELIST $BLACKLIST  /bin/true 2>&1
>
>А почемуже такая схема не работает? Тут по идее, не прошла авторизация,
>проверяем по черному списку.

прочтите чем отличается авторицация smtp auth от авторизации pop before smtp.
в первом случае ищите патчи для кумыла во втором - прочитайте как работает  tcp.smtp и буте вам щасте (хинт - переменная RELAYCLIENT)


"qmail и rblsmtp"
Отправлено asipin , 27-Май-08 11:42 
>[оверквотинг удален]
>>
>>      $SMTPD $VCHKPW $RBLSMTPD $WHITELIST $BLACKLIST  /bin/true 2>&1
>>
>>А почемуже такая схема не работает? Тут по идее, не прошла авторизация,
>>проверяем по черному списку.
>
>прочтите чем отличается авторицация smtp auth от авторизации pop before smtp.
>в первом случае ищите патчи для кумыла во втором - прочитайте как
>работает  tcp.smtp и буте вам щасте (хинт - переменная RELAYCLIENT)
>

Всем спасибо. К обеду вторника включился мозг. Во всем разобрался.