Страница 1 из 1

Как заставить postfix принимать почту и класть ее в файл?

Добавлено: 2015-06-30 15:55:18
mmotor
Поставил postfix. Наладил отправку. А как мне теперь принять почту? И как вообще проверить, в чем загвоздка. Как итог мне нужно принять почту для всех несуществующих пользователей (*@site.ru) и для начала записать ее в файл.

NOQUEUE: reject: RCPT from forward20.mail.yandex.net[95.108.253.145]: 454 4.7.1 ........
disconnect from forward20.mail.yandex.net[95.108.253.145]
connect from forward20.mail.yandex.net[95.108.253.145]

Отправлено спустя 30 минут 54 секунды:
telnet localhost 25
Trying ::1...
Connected to localhost.
Escape character is '^]'.
220 sd1234-02.keymachine.de ESMTP Postfix (Ubuntu)
421 4.4.2 sd1234-02.keymachine.de Error: timeout exceeded
Connection closed by foreign host.

Как заставить postfix принимать почту и класть ее в файл?

Добавлено: 2015-06-30 16:13:20
Alvares
Вам уже ответили на sysadmins.ru.

Как заставить postfix принимать почту и класть ее в файл?

Добавлено: 2015-06-30 17:09:41
mmotor
smtpd_banner = $myhostname ESMTP $mail_name (Ubuntu)
biff = no
append_dot_mydomain = no
readme_directory = no
smtpd_tls_cert_file=/etc/ssl/certs/ssl-cert-snakeoil.pem
smtpd_tls_key_file=/etc/ssl/private/ssl-cert-snakeoil.key
smtpd_use_tls=yes
smtpd_tls_session_cache_database = btree:${data_directory}/smtpd_scache
smtp_tls_session_cache_database = btree:${data_directory}/smtp_scache
smtpd_relay_restrictions = permit_mynetworks permit_sasl_authenticated defer_unauth_destination
myhostname = sd1234-02.keymachine.de
alias_maps = hash:/etc/aliases
alias_database = hash:/etc/aliases
myorigin = /etc/mailname
mydestination = mail.site.ru, sd1234-02.keymachine.de, localhost.keymachine.de, localhost
relayhost =
mynetworks = 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128
mailbox_size_limit = 0
recipient_delimiter = +
inet_interfaces = all
inet_protocols = all
luser_relay = login
local_recipient_maps =
virtual_alias_maps = hash:/etc/postfix/virtual_maps

Отправлено спустя 52 минуты 20 секунд:
В файле virtual_maps

@site.ru /home/login/mail

Как заставить postfix принимать почту и класть ее в файл?

Добавлено: 2015-06-30 19:48:39
ADRE
Alvares писал(а):Вам уже ответили на sysadmins.ru.
до слез :ROFL:

Отправлено спустя 37 секунд:
еще, классика: ставь exim

Как заставить postfix принимать почту и класть ее в файл?

Добавлено: 2015-07-01 1:54:55
mmotor
В общем сделал так

virtual_mailbox_domains = /etc/postfix/vhosts
virtual_mailbox_base = /home
virtual_mailbox_maps = hash:/etc/postfix/vmailbox
virtual_uid_maps = static:1001, static:1002
virtual_gid_maps = static:1001, static:1002

В /etc/postfix/vmailbox

@site.ru login/tmp/mail

Запись в файл идет.

а теперь я хочу попробовать отдать php скрипту и пишу в /etc/postfix/vmailbox
@site.ru "|php5-cgi -c /path/to/php.ini /site.ru/public_html/mail.php"

(delivery failed to mailbox /home/| "php5-cgi -c /path/to/php.ini /site.ru/public_html/mail.php": unable to create lock file /home/| "php5-cgi -c /path/to/php.ini /site.ru/public_html/mail.php".lock: No such file or directory)

Как заставить postfix принимать почту и класть ее в файл?

Добавлено: 2015-07-01 1:54:55
mmotor
В общем сделал так

virtual_mailbox_domains = /etc/postfix/vhosts
virtual_mailbox_base = /home
virtual_mailbox_maps = hash:/etc/postfix/vmailbox
virtual_uid_maps = static:1001, static:1002
virtual_gid_maps = static:1001, static:1002

В /etc/postfix/vmailbox

@site.ru login/tmp/mail

Запись в файл идет.

а теперь я хочу попробовать отдать php скрипту и пишу в /etc/postfix/vmailbox
@site.ru "|php5-cgi -c /path/to/php.ini /site.ru/public_html/mail.php"

(delivery failed to mailbox /home/| "php5-cgi -c /path/to/php.ini /site.ru/public_html/mail.php": unable to create lock file /home/| "php5-cgi -c /path/to/php.ini /site.ru/public_html/mail.php".lock: No such file or directory)

Как заставить postfix принимать почту и класть ее в файл?

Добавлено: 2015-07-02 20:34:36
mmotor
Подскажите. А postfix c mysql только на вывод работает? На запись не работает?

Как заставить postfix принимать почту и класть ее в файл?

Добавлено: 2015-07-02 23:23:54
Гость
Решил прикрутить директиву
virtual_mailbox_maps = mysql:/etc/postfix/vmailbox.cf
к базе

Проверяю с консоли
postmap -q user1@site.ru mysql:/etc/postfix/vmailbox.cf
на выхолопе получаю содержимое таблицы с директорией

А вот при попытке отправить сообщение получаю ошибку
warning: mysql:/etc/postfix/vmailbox.cf lookup error for "user1@site.ru"