FastNetMon

Показаны сообщения с ярлыком Postfix. Показать все сообщения
Показаны сообщения с ярлыком Postfix. Показать все сообщения

суббота, 5 декабря 2009 г.

Установка Postfix для отправки почты на Debian 5 Lenny

apt-get install -y --force-yes postfix


В появившемся списке выбираем "Internet Site" и далее щелкаем Enter / Enter.

Теперь тестируем работы почты:
echo "subj" | mail -s body your-email@domain.ru

четверг, 25 июня 2009 г.

Очистка очереди deferred в Postfix

postsuper -d ALL deferred

Кстати, вот ещё небольшое уточнение по поводу отличия папок defer от deferred:
/var/spool/postfix/defer -- тут хидеры
/var/spool/postfix/deferred -- а тут тушки писем

За подсказку спасибо Graycat :)

Посмотреть размеры очередей Postfix

for i in active bounce corrupt defer deferred flush hold incoming maildrop public saved trace; do echo -n "$i "; find "/var/spool/postfix/$i" | wc -l; done

active 15707
bounce 1
corrupt 1
defer 24541
deferred 24541
flush 97
hold 1
incoming 61
maildrop 1
public 6
saved 1
trace 1

понедельник, 6 апреля 2009 г.

Postfix + MySQL

Вот такая ересь в логах:
warning: mysql query failed: MySQL server has gone away
warning: mysql:/etc/postfix/mysql-psa-smtp_poplocks.cf: table lookup problem

Чинится в /etc/my.cnf строчкой в блоке [mysqld]:
wait_timeout = 86400

Plesk + Postfix + входящая почта

Добрый день! В прошлом посте мы обсуждали, как же поставить Постфикс рядом с Плесковым qmail. В итоге мы пришли к тому, что проверяем: есть ли айпи в списке "доверенных" и только в этом случае пускаем. Гениальная, безусловно, схема, если забыть про то, что релей для локальных доменов должен быть разрешён. Нафик? А входящая почта как приниматься будет, а? То-то же!

Например, есть у нас домен uvedomi.su, поддерживаемый на нашем хостинг сервере и есть некто, желающий скинуть ему почту:


telnet hosting.ru 25
Trying xx.xx.xx.xx...
Connected to hosting.ru.
Escape character is '^]'.
220 mailhosting.ru ESMTP Postfix
HELO
501 Syntax: HELO hostname
HELO 111
250 mailhosting.ru
MAIL FROM: 1111@111.ru
250 2.1.0 Ok
RCPT TO: nrg@uvedomi.su
530 5.7.1 : Client host rejected: Authentication required


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

Решение.
Вот мануал http://rupp.de/howto_install_postfix_before_qmail.html, где нас интересует часть про configure postfix и relay domains.

Итак, стандартно с Postfix идёт мегаскрипт /etc/postfix/dumpqmail, который конвертирует файл разрешенных для релея доменов из qmailовского /var/qmail/control/rcpthosts в Постфиксовый /etc/postfix/relaydomains. Запускаем: sudo /etc/postfix/dumpqmail, чтобы синхронизировать базы. После этого мой домен появился в Постфиксовом релей файле:

cat /etc/postfix/relaydomains | grep uvedo -i
uvedomi.su RELAY


Теперь, как понимаете, нам надо настроить запуск этой команды по крону :) Для этого в /etc/crontab добавляем:

*/5 * * * * root /etc/postfix/dumpqmail


А теперь в конфиг /etc/postfix/main.cf добавляем строчку (оно на данный момент есть там, но закомменчено, добавляем прямо там):

relay_domains = hash:/etc/postfix/relaydomains


Таким образом, Постфикс будет чекать, доверен ли домен для релея и в случае успеха будет пропускать почту без проверки по айпи.


Итого, если для дебага сейчас отключить проверку айпи (в main.cf комментим строку с smtpd_recipient_restrictions):
Наша почта снаружи до uvedomi.su пройдет успешно, а попытка релейнуть чужой домен будет отбита: [nrg@test.ru]: Relay access denied; from= to= proto=SMTP helo=<1>

А теперь самое интересное... как не обращать внимания на айпи, если домен разрешен к релею? Сейчас я НЕ знаю, как это сделать. Помогайте :(

Решение найдено, модифицируем ограничения на получателя следующим образом:

smtpd_recipient_restrictions = permit_auth_destination, check_client_access mysql:/etc/postfix/mysql-psa-smtp_poplocks.cf, reject


Итого, логика такова: если домен доступен к релею, то почта принимается (permit сразу же); если недоступен, то переходим следующему правилу (это проверка валидности айпи) и если уж и оно сваливается, то отбрасываем клиента с ошибкой "Recipient address rejected: Access denied".

Да. Постфикс написали гениальные люди, такого мощного движка управления я не видел ни в одном почтовике!