После установки qmail+tcpserver несколько дней работал в режиме open relay.
Обнаружил отсутствие /var/qmail/control/rcpthosts Создал по FTP под рутом, после этого почта перестала ходить вообще. Не возможно послать на мой домен из Интернета, не возможно послать из моего домена в Интернет- одна и та же ошибка:
"Failed to deliver to name@mydomen.ru'
SMTP module(domain mydomen.ru) reports:
host linserv.mydomen.ru says:
553 sorry, that domain isn't in my list of allowed rcpthosts (#5.7.1)"то есть ни один домен не разрешен для релея, хотя ихмо для своего домена (mydomen.ru) и для localhost все разрешено. Помогите пожалуйста разобраться.
RedHat 6.2
qmail-1.03.tar.gz
ucspi-tcp-0.88.tar.gz/etc/tcp.smtp
aaa.bb.cc.2:allow,RELAYCLIENT=""
192.168.2.:allow,RELAYCLIENT=""
192.168.3.:allow,RELAYCLIENT=""
127.:allow,RELAYCLIENT=""
:allow
где aaa.bb.cc.2 IP-адрес моего почтового сервера/etc/smtp.rules
tcprules /etc/tcp.smtp.cdb /etc/tcp.smtp.tmp < /etc/tcp.smtp
chmod 644 /etc/tcp.smtp*/var/qmail/control/rcpthosts
mydomen.ru
localhost/var/qmail/control/defaultdomain
mydomen.ru/var/qmail/control/plusdomain
mydomen.ru/var/qmail/control/me
mydomen.ru
linserv.mydomen.ru/var/qmail/control/locals
localhost
mydomen.ru
linserv.mydomen.ruВ /etc/rc.d/rc.local добавлено:
#так как rcpthosts создавал по FTP под root
chmod 644 /var/qmail/control/rcpthosts#запуск
tcpserver -x /etc/tcp.smtp.cdb -u 502 -g 501 0 smtp /var/qmail/bin/qmail-smtpd &
tcpserver 0 pop3 /var/qmail/bin/qmail-popup linserv.mydomen.ru \
/bin/checkpassword /var/qmail/bin/qmail-pop3d Maildir &
рестартовать пробовал?>etc/tcp.smtp
>aaa.bb.cc.2:allow,RELAYCLIENT=""
поясни, зачем?>/var/qmail/control/me
>mydomen.ru>linserv.mydomen.ru
для чего?а если добавить linserv.mydomen.ru в /var/qmail/control/rcpthosts?
>рестартовать пробовал?
Да. Убираю rcpthosts рестарт- получаю open relay.
Добавляю, rcpthosts рестарт- 553 sorry, that domain isn't in my list of allowed rcpthosts (#5.7.1)>
>>etc/tcp.smtp
>>aaa.bb.cc.2:allow,RELAYCLIENT=""
>поясни, зачем?
Это пережиток, ес-но сервер отсылает почту с адреса 127. Однако, это на 553 ошибку никак повлиять не может (ихмо), а только на open relay.>
>>/var/qmail/control/me
>>mydomen.ru
>>linserv.mydomen.ru
>для чего?
У меня домен подерживает провайдер(и прямую и обратную зоны, и первичный и вторичный сервер)
>а если добавить linserv.mydomen.ru в /var/qmail/control/rcpthosts?
Не делал. Попробую.
попробуй проверить как написано в test.deliver и test.receive в директории сырцов
>попробуй проверить как написано в test.deliver и test.receive в директории сырцов
test.deliver зачем? Qmail нормально работает- просто он open relay без файла /var/qmail/control/rcpthostsЧто касается test.receive то при отсутствии /var/qmail/control/rcpthosts
все 5 пунктов ОК. При наличии rcpthosts- 553 ошибка:
"Failed to deliver to name@mydomen.ru'
SMTP module(domain mydomen.ru) reports:
host linserv.mydomen.ru says:
553 sorry, that domain isn't in my list of allowed rcpthosts (#5.7.1)"
>>попробуй проверить как написано в test.deliver и test.receive в директории сырцов
>test.deliver зачем? Qmail нормально работает- просто он open relay без файла /var/qmail/control/rcpthosts
>
>
>Что касается test.receive то при отсутствии /var/qmail/control/rcpthosts
>все 5 пунктов ОК. При наличии rcpthosts- 553 ошибка:
>"Failed to deliver to name@mydomen.ru'
>SMTP module(domain mydomen.ru) reports:
>host linserv.mydomen.ru says:
>553 sorry, that domain isn't in my list of allowed rcpthosts (#5.7.1)"
>
получается что кумыло всё таки(несмотря на твои ухищрения c rc.local) не может читать rcpthostsкак письмо отправляешь? телнетом на порт и ручкаим или через MUA?
а с прописанных в tcp.smtp ip нормально принимается?
Когда используется tcpserver релей контролируется не rcpthosts а tcpserverом
>Когда используется tcpserver релей контролируется не rcpthosts а tcpserverом
Совершенно верно, но когда в /etc/tcp.smtp прописано
192.168.2.:allow,RELAYCLIENT=""
192.168.3.:allow,RELAYCLIENT=""
127.:allow,RELAYCLIENT=""
:allow
ТО для данных IP релей разрешен. Написанное в посте о релее и rcpthosts следует понимать в этом контексте. Ссори если запутанно формулирую. (off-topik: Швондер: На собрании стоял вопрос об уплотнении". Преображенский: "Кто на ком стоял? Потрудитесь пожалуйста излагать свои мысли яснее").
>192.168.2.:allow,RELAYCLIENT=""
>192.168.3.:allow,RELAYCLIENT=""
>127.:allow,RELAYCLIENT=""
>:allow
Ахтунг!!! Грабли скорее всего в последней строчке!
У меня её точно нет и всё работает.
ИМО это разрешить всем всё.
Попробуй убрать и отпиши что получилось
последняя строчка означает не разрешить всем все, а разрешить всем слать нам почту для наших доменов, прописанных в rcpthosts
несколько разные вещи...
>последняя строчка означает не разрешить всем все, а разрешить всем слать нам
>почту для наших доменов, прописанных в rcpthosts
>несколько разные вещи...
Совершенно верно!Итак по теме мысли есть у кого-нить?
>>Что касается test.receive то при отсутствии /var/qmail/control/rcpthosts
>>все 5 пунктов ОК. При наличии rcpthosts- 553 ошибка:
>>"Failed to deliver to name@mydomen.ru'
>>SMTP module(domain mydomen.ru) reports:
>>host linserv.mydomen.ru says:
>>553 sorry, that domain isn't in my list of allowed rcpthosts (#5.7.1)"
>>
>получается что кумыло всё таки(несмотря на твои ухищрения c rc.local) не может
>читать rcpthosts
Вполне не исключаю, но почему?>
>как письмо отправляешь? телнетом на порт и ручкаим или через MUA?
Всяко.
1. Подключаюсь телнетом по 25 порту
telnet aaa.bb.cc.2 25
helo
mail from
rcpt to
и т.д.2. Также с бесплатного ящика(pochta.ru) попытка отправить письмо заканчивается приходом отлупа
3. Из ЛВС (ip 192.168.2. и 192.168.3.) The Bat при попытке отправить письмо получает ту же ошибку 553
)
>а с прописанных в tcp.smtp ip нормально принимается?
НЕТ в том то и дело, что из локалки(прописана в tcp.smtp) почта не уходит, почтовый клиент(The Bat) при попытки послать письмо получает 553 ошибку.
>>а если добавить linserv.mydomen.ru в /var/qmail/control/rcpthosts?
>Не делал. Попробую.
Добавил. Установил chmod 644 на rcpthosts
Это не помогает =((
Обнаружил следущее
Если добавляю в /var/qmail/control/rcpthosts любой! домен, кроме своего, то для этого домена все нормально работает!
То есть rcpthosts как бы не используется для моего домена mydomen.ru который прописан во всех конфигурационных файлах. Может это натолкнет умных дюдей на причину граблей и они поделяться мыслями? Помажите плиз люди добрые =/
>/var/qmail/control/me
>mydomen.ru
>linserv.mydomen.ruИз man'a qmail:
"..control file, me, containing the fully-qualified name of the current host."Убери из me mydomen.ru
Там должна быть только одна строка - fully-qualified name of the current host. Ни каких доменов!Это, наверное, самый важный файл для Qmail
"This file is used as the default for other hostname-related control files."
>Убери из me mydomen.ru
Естественно, нужно оставить только
linserv.mydomen.ru
Пересоздал rcpthosts после этого заработал прием почты из Интернет для моего домена mydomen.ru(видимо при создании по FTP в файл закрался "плохой" символ code<32). Попытка послать почту через мой linserv.mydomen.ru для остальных доменов вызывает 553 ошибку(то есть open relay- закрыт =) и всё хорошо.
Проблема в том, что для внутренней сети (192.168.2 и 192.168.3) попытка отправить почту через linserv.mydomen.ru порождает ту же 553 ошибку =((( То есть почему то не срабатывает установка пременной в etc/tcp.smtp
195.28.39.2:allow,RELAYCLIENT=""
192.168.2.:allow,RELAYCLIENT=""
192.168.3.:allow,RELAYCLIENT=""
127.:allow,RELAYCLIENT=""
:allow
Помогите плиз разобраться почему это может происходить?Базу cdb создаю так
#!/bin/bash
./tcprules /etc/tcp.smtp.cdb /etc/tcp.smtp.tmp < /etc/tcp.smtpЗапускаю так
etc/rc.d/rc.local
tcpserver -x /etc/tcp.smtp.cdb -u 502 -g 501 0 smtp /var/qmail/bin/qmail-smtpd &
tcpserver 0 pop3 /var/qmail/bin/qmail-popup linserv.okbprogress.ru \
/bin/checkpassword /var/qmail/bin/qmail-pop3d Maildir &
В догонку:
На локальные адреса ....@mydomen.ru письма прекрасно ходят. То есть из ЛВС user01@mydomen.ru без проблем доставляет почту anyuser@mydomen.ru
>(видимо при создании по FTP в файл закрался "плохой" символ code<32).Попробуй создать заново /etc/tcp.smtp
Может опять "плохой" символ?А, еще лучше, сделай его в notepad (если под виндами) и передай по FTP в ASCII режиме
>>(видимо при создании по FTP в файл закрался "плохой" символ code<32).
>
>Попробуй создать заново /etc/tcp.smtp
>Может опять "плохой" символ?
Занимался этим много раз.
Ничего подозрительного в tcp.smtp.cdb- мои "айпи"+RELAYCLIENT и куча спец символов всего 2259 байт. Может попробуешь создать у себя с моим tcp.smtp(130б - у него в конце пустая строчка после :allow) и сравним размеры>А, еще лучше, сделай его в notepad (если под виндами) и передай
>по FTP в ASCII режиме
Я уже с консоли работаю клавишей F4 из mc =)
Да chmod`ы забыл указать =) 644 и 600 соотв.Что ж еще может быть =(
>Ничего подозрительного в tcp.smtp.cdb- мои "айпи"+RELAYCLIENT и куча спец символов
>всего 2259 байт. Может попробуешь создать у себя с моим tcp.smtp(130б - у
>него в конце пустая строчка после :allow) и сравним размеры-rw-r--r-- 1 sampan users 130 Sep 1 22:15 smtp
-rw-r--r-- 1 sampan users 2259 Sep 1 22:15 smtp.cdb>Да chmod`ы забыл указать =) 644 и 600 соотв.
А 600 у тебя на какой файл?
Еще мысль появилась.А как у тебя 192.168-мые интерфейсы реализованы? На отдельных сетевухах? Может внутренние клиенты на внешний интерфейс через NAT попадают?
Проверь:telnet 192.168.2.ip_linserv 25 и не разрывай его
а на сервере в это время глянь
netstat -apnA inet|grep ESTABУже не знаю, что и предположить...
>Еще мысль появилась.
>
>А как у тебя 192.168-мые интерфейсы реализованы? На отдельных сетевухах? Может внутренние
>клиенты на внешний интерфейс через NAT попадают?>Проверь:
>
>telnet 192.168.2.ip_linserv 25 и не разрывай его
>а на сервере в это время глянь
>netstat -apnA inet|grep ESTAB
>
>Уже не знаю, что и предположить...
Видимо проблема где то здесь ... была. Пока не прописал в tcp.smtp => aaa.bb.cc.:allow,RELAYCLIENT="" и не сконвертил с этим cdb- не работало. У меня ЛВС подключена к коммутатору - киске 2950XL и VLA`ы подняты, видимо в IP-заголовке адреса источникоа не 192.168 сидят а IP из NAT-пулла на киске, ихмо бред полный. Рока заработало так, далее буду tcpdump`om смотреть и разбираться.
Спасибо- последний постинг правильный =)
Была аналогичная проблема. Чуть ежика не родил: не ходит почта и все тут. Потом выяснил, что случайно а /etc/tcp.smtp одну цифру в адресе сети поменял. Как это вышло, ума не приложу... Но тем не менее, после того, как нашел ошибку, все заработало _без_ каких-либо изменениях в rcphosts.
Это конечно не к данному случаю, но если кто еще на эти же грабли наступит... А симптомы - строго те же самые...