The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

форумы  помощь  поиск  регистрация  майллист  вход/выход  слежка  RSS
"postfix+mysql - virtual mailbox base"
Вариант для распечатки  
Пред. тема | След. тема 
Форум Открытые системы на сервере (Почта / Linux)
Изначальное сообщение [ Отслеживать ]

"postfix+mysql - virtual mailbox base"  +/
Сообщение от AnatoliyB email(ok) on 10-Мрт-16, 17:24 
Доброго всем!
Бьюсь над проблемой, уже перепробовал разные версии почтовика, яндекс и гугль ничего внятного не сказали :( может кто-нибудь подскажет плиз
собственно main.cf:
myhostname = virtual.domain.tld
mydomain = $myhostname
myorigin = $mydomain
inet_interfaces = all
mydestination = localhost, $myhostname, $mydomain, localhost.$mydomain, mysql:/etc/postfix/mysql-mydestination.cf
local_transport = virtual
local_recipient_maps = unix:passwd.byname mysql:/etc/postfix/mysql-virtual-maps.cf
unknown_local_recipient_reject_code = 550
mynetworks_style = subnet
mynetworks = 10.0.0.0/8, 127.0.0.0/8
relay_domains = $mydestination
relayhost =
alias_maps = mysql:/etc/postfix/mysql-virtual.cf
alias_database = mysql:/etc/postfix/mysql-virtual.cf
home_mailbox = Maildir/
mail_spool_directory = /var/spool/mail
mailbox_command = /usr/bin/procmail -a $DOMAIN -d $LOGNAME
mailbox_transport = lmtp:unix:/var/imap/socket/lmtp
smtpd_banner = $myhostname ESMTP $mail_name ($mail_version)
inet_protocols = ipv4

debug_peer_level = 2
debugger_command =
PATH=/bin:/usr/bin:/usr/local/bin:/usr/X11R6/bin
xxgdb $daemon_directory/$process_name $process_id & sleep 5

# RESTRICTIONS пока закаментил
# client, helo, sender, recipient, data, end-of-data
# Дополнительные ограничения доступа  smtp сервера в контексте
# SMTP-запроса клиента
    #smtpd_client_restrictions = permit_mynetworks,
    #permit_sasl_authenticated,
    #check_client_access hash:/etc/postfix/client_access,
    #reject_unknown_client_hostname
# Дополнительные ограничения, применяемые сервером Postfix
# в контексте SMTP-команды HELO
    #smtpd_helo_restrictions = check_helo_access hash:/etc/postfix/hello_access,
    #permit_mynetworks,
    #reject_invalid_helo_hostname,
    #reject_non_fqdn_helo_hostname,
    #reject_unknown_helo_hostname
# Дополнительные ограничения, применяемые сервером Postfix
# в контексте команды MAIL FROM
    #smtpd_sender_restrictions = permit_mynetworks,
    #check_sender_access hash:/etc/postfix/sender_access,
    #reject_authenticated_sender_login_mismatch,
    #reject_unknown_sender_domain,
    #reject_unlisted_sender,
    #reject_unverified_sender
# Дополнительные ограничения, применяемые сервером Postfix
# в контексте команды RCPT TO
    #smtpd_recipient_restrictions =  permit_mynetworks,
    #permit_sasl_authenticated,
    #reject_unauth_destination,
    #check_recipient_access hash:/etc/postfix/recipient_access,
    #reject_unlisted_recipient,
    #reject_unknown_recipient_domain,
    #reject_non_fqdn_recipient,
    #reject_unverified_recipient
# Отклонять команду ETRN
    smtpd_etrn_restrictions = reject
    smtpd_reject_unlisted_sender = yes
    disable_vrfy_command = yes
    strict_rfc821_envelopes = yes
    show_user_unknown_table_name = no
    address_verify_sender = <>
    unverified_sender_reject_code = 550
    smtpd_helo_required = yes
    smtp_always_send_ehlo = yes

    smtpd_hard_error_limit = 8
    smtpd_timeout = 120s
    smtp_helo_timeout = 60s
    smtp_mail_timeout = 60s
    smtp_rcpt_timeout = 90s
    
dovecot_destination_recipient_limit = 1
fallback_transport = dovecot
    
#======== MySQL ===================
    virtual_mailbox_base=/var/mail/vmail/
    virtual_mailbox_maps = mysql:/etc/postfix/mysql-virtual-maps.cf
    virtual_maps =  mysql:/etc/postfix/mysql-virtual.cf
    virtual_mailbox_domains = mysql:/etc/postfix/mysql-mydestination.cf
    virtual_minimum_uid = 500
    virtual_uid_maps = mysql:/etc/postfix/mysql-virtual-uid.cf
    virtual_gid_maps = mysql:/etc/postfix/mysql-virtual-gid.cf
    virtual_transport = mysql:/etc/postfix/mysql-transport.cf #там запись-virtual
    transport_maps = mysql:/etc/postfix/mysql-transport.cf
#======== Quota ===================
    virtual_mailbox_limit = 10240000
    virtual_mailbox_limit_inbox = no
    virtual_mailbox_limit_maps = mysql:/etc/postfix/mysql-mailboxsize.cf
    virtual_mailbox_limit_override = yes
    virtual_maildir_extended = yes
    virtual_create_maildirsize = yes
    virtual_mailbox_limit = 11000000
    readme_directory = /usr/share/doc/postfix
html_directory = /usr/share/doc/postfix/html

в логах интересная ошибка

Mar  9 19:19:05 tolyan postfix/master[2849]: warning: process /usr/lib/postfix/virtual pid 31217 exit status 1
Mar  9 19:19:05 tolyan postfix/master[2849]: warning: /usr/lib/postfix/virtual: bad command startup -- throttling
Mar  9 19:20:05 tolyan postfix/virtual[31223]: fatal: bad string length 0 < 1: virtual_mailbox_base =
Mar  9 19:20:06 tolyan postfix/master[2849]: warning: process /usr/lib/postfix/virtual pid 31223 exit status 1
Mar  9 19:20:06 tolyan postfix/master[2849]: warning: /usr/lib/postfix/virtual: bad command startup -- throttlin

postconf -v или postconf -d возвращает тоже
virtual_mailbox_base = <пусто>
virtual_gid_maps = <тоже пусто>
virtual_uid_maps = <пусто>
остальные параметры все правильные
что это могло быть, подскажите плз - уже весь мозг поломал
(хотя раньше - года два назад вроде поднимал с мускулом и все было нормально :О)
сейчас попробовал разные версии postfix и разные системы Debian и CentOS -никакого результата

Ответить | Правка | Cообщить модератору

Оглавление

Сообщения по теме [Сортировка по времени | RSS]


1. "postfix+mysql - virtual mailbox base"  +/
Сообщение от Ano on 10-Мрт-16, 17:40 
Не хватает пробелов:
debugger_command =
         PATH=/bin:/usr/bin:/usr/local/bin:/usr/X11R6/bin
         xxgdb $daemon_directory/$process_name $process_id & sleep 5
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

2. "postfix+mysql - virtual mailbox base"  +/
Сообщение от AnatoliyB email(ok) on 10-Мрт-16, 19:37 
> Не хватает пробелов:
> debugger_command =
>          PATH=/bin:/usr/bin:/usr/local/bin:/usr/X11R6/bin
>          xxgdb $daemon_directory/$process_name $process_id
> & sleep 5

вбил пробелы - ошибка осталась :(

Ответить | Правка | ^ к родителю #1 | Наверх | Cообщить модератору

3. "postfix+mysql - virtual mailbox base"  +/
Сообщение от Random (??) on 11-Мрт-16, 11:08 
>Mar  9 19:20:05 tolyan postfix/virtual[31223]: fatal: bad string length 0 < 1: >virtual_mailbox_base =

Посмотри, что там с правами на /var/mail/vmail

Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

4. "postfix+mysql - virtual mailbox base"  +/
Сообщение от AnatoliyB email(ok) on 11-Мрт-16, 12:04 
>>Mar  9 19:20:05 tolyan postfix/virtual[31223]: fatal: bad string length 0 < 1: >virtual_mailbox_base =
> Посмотри, что там с правами на /var/mail/vmail

Проверил - нашел ошибку в имени (надо было vhost)
Но все-равно основная ошибка осталась увы
Под юзером virtual входит в папку нормально

[root@localhost mail]# stat vhost
  Файл: «vhost»
  Размер: 4096          Блоков: 8          Блок В/В: 4096   каталог
Устройство: 821h/2081d  Inode: 16023613    Ссылки: 5
Доступ: (0775/drwxrwxr-x)  Uid: ( 1001/ virtual)   Gid: (   12/    mail)
Доступ: 2016-03-10 15:09:36.562907240 +0300
Модифицирован: 2016-03-04 14:54:19.798907240 +0300
Изменён: 2016-03-04 14:54:19.798907240 +0300
Создан: -

Ответить | Правка | ^ к родителю #3 | Наверх | Cообщить модератору

5. "postfix+mysql - virtual mailbox base"  +/
Сообщение от ALex_hha (ok) on 11-Мрт-16, 12:35 
> postconf -d возвращает тоже

-d это вообще то дефолтное значение, к текущему не имеющее никакого отношения


# cat main.cf | grep virtual_mailbox_base
virtual_mailbox_base = /var/mail

# postconf -d virtual_mailbox_base
virtual_mailbox_base =

А проверять надо так


# postconf virtual_mailbox_base
virtual_mailbox_base = /var/mail

Вывод postconf -n в студию

Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

6. "postfix+mysql - virtual mailbox base"  +/
Сообщение от AnatoliyB email(ok) on 11-Мрт-16, 12:46 
>[оверквотинг удален]
> virtual_mailbox_base = /var/mail
> # postconf -d virtual_mailbox_base
> virtual_mailbox_base =
>
> А проверять надо так
>
 
> # postconf virtual_mailbox_base
> virtual_mailbox_base = /var/mail
>

> Вывод postconf -n в студию

[root@localhost]# postconf virtual_mailbox_base
virtual_mailbox_base =

[root@localhost]# postconf -n
virtual_mailbox_base = /var/mail/vhost/

??? почему так

Ответить | Правка | ^ к родителю #5 | Наверх | Cообщить модератору

7. "postfix+mysql - virtual mailbox base"  +/
Сообщение от ALex_hha (ok) on 11-Мрт-16, 12:52 
> ??? почему так

показывай весь вывод postconf -n

Ответить | Правка | ^ к родителю #6 | Наверх | Cообщить модератору

8. "postfix+mysql - virtual mailbox base"  +/
Сообщение от ALex_hha (ok) on 11-Мрт-16, 12:57 
>> ??? почему так

у вас скорее всего как то так


smtpd_recipient_restrictions =
permit_mynetworks
permit_sasl_authenticated
reject_unauth_destination

virtual_mailbox_base = /var/mail

Вначале virtual_mailbox_base не должно быть никаких пробелов. Они допускаются только в случае переноса параметров в пределах одной опции. Например


smtpd_recipient_restrictions =
permit_mynetworks
permit_sasl_authenticated
reject_unauth_destination

Но следующая за ней опция ДОЛЖНА идти без пробела

Ответить | Правка | ^ к родителю #7 | Наверх | Cообщить модератору

11. "postfix+mysql - virtual mailbox base"  +/
Сообщение от AnatoliyB email(ok) on 11-Мрт-16, 19:38 
>[оверквотинг удален]
>
> Вначале virtual_mailbox_base не должно быть никаких пробелов. Они допускаются только в
> случае переноса параметров в пределах одной опции. Например
>
 
> smtpd_recipient_restrictions =
>  permit_mynetworks
>  permit_sasl_authenticated
>  reject_unauth_destination
>

> Но следующая за ней опция ДОЛЖНА идти без пробела

Спасибо огромное - все получилось (дело было в этих пробелах)
Еще одна проблема правда выплыла - на рабочем серваке
(Postfix 3.0.3 на Centos) - почему-то ругается на
параметры


#======== Quota ===================
virtual_mailbox_limit = 512000000
virtual_mailbox_limit_inbox = no
virtual_mailbox_limit_maps = mysql:/etc/postfix/mysql-mailboxsize.cf
virtual_mailbox_limit_override = yes
virtual_maildir_extended = yes
virtual_create_maildirsize = yes
#    readme_directory = /usr/share/doc/postfix
#html_directory = /usr/share/doc/postfix/html

- пришлось пока закомментировать
тогда как на домашнем тестовом (Postfix 2.7.1 Debian 6.0.5)
все пробегает на ура
Ответить | Правка | ^ к родителю #8 | Наверх | Cообщить модератору

12. "postfix+mysql - virtual mailbox base"  +/
Сообщение от ALex_hha (ok) on 11-Мрт-16, 23:15 
> Еще одна проблема правда выплыла - на рабочем серваке
> (Postfix 3.0.3 на Centos) - почему-то ругается на параметры

скорее всего postfix собран без поддержки квот для virtual

А судя по сайту - http://vda.sourceforge.net/ для 3.x его никогда и не было

Ответить | Правка | ^ к родителю #11 | Наверх | Cообщить модератору

13. "postfix+mysql - virtual mailbox base"  +/
Сообщение от AnatoliyB email(ok) on 12-Мрт-16, 20:34 
>> Еще одна проблема правда выплыла - на рабочем серваке
>> (Postfix 3.0.3 на Centos) - почему-то ругается на параметры
> скорее всего postfix собран без поддержки квот для virtual

Да спасибо учту.
будем менять на 2.x

> А судя по сайту - http://vda.sourceforge.net/ для 3.x его никогда и не
> было

Ответить | Правка | ^ к родителю #12 | Наверх | Cообщить модератору

9. "postfix+mysql - virtual mailbox base"  +/
Сообщение от AnatoliyB email(ok) on 11-Мрт-16, 13:03 
>> ??? почему так
> показывай весь вывод postconf -n

[root@localhost mariadb]# postconf -n
alias_database = mysql:/etc/postfix/mysql-virtual.cf
alias_maps = mysql:/etc/postfix/mysql-virtual.cf
compatibility_level = 2
debug_peer_level = 2
debugger_command = PATH=/bin:/usr/bin:/usr/local/bin:/usr/X11R6/bin xxgdb $daemon_directory/$process_name $process_id & sleep 5 permit_sasl_authenticated, reject_unknown_client_hostname smtpd_helo_restrictions = check_helo_access hash:/etc/postfix/hello_access, permit_sasl_authenticated, smtpd_etrn_restrictions = reject smtpd_reject_unlisted_sender = yes disable_vrfy_command = yes strict_rfc821_envelopes = yes show_user_unknown_table_name = no address_verify_sender = <> unverified_sender_reject_code = 550 smtpd_helo_required = yes smtp_always_send_ehlo = yes smtpd_hard_error_limit = 8 smtpd_timeout = 120s smtp_helo_timeout = 60s smtp_mail_timeout = 60s smtp_rcpt_timeout = 90s virtual_mailbox_base = /var/mail/vhost/ virtual_mailbox_maps = mysql:/etc/postfix/mysql-virtual-maps.cf virtual_maps = mysql:/etc/postfix/mysql-virtual.cf virtual_mailbox_domains = mysql:/etc/postfix/mysql-mydestination.cf virtual_minimum_uid = 500 virtual_uid_maps = mysql:/etc/postfix/mysql-virtual-uid.cf virtual_gid_maps = mysql:/etc/postfix/mysql-virtual-gid.cf virtual_transport = virtual transport_maps = mysql:/etc/postfix/mysql-transport.cf virtual_mailbox_limit = 10240000 virtual_mailbox_limit_inbox = no virtual_mailbox_limit_maps = mysql:/etc/postfix/mysql-mailboxsize.cf virtual_mailbox_limit_override = yes virtual_maildir_extended = yes virtual_create_maildirsize = yes virtual_mailbox_limit = 11000000
home_mailbox = Maildir/
inet_interfaces = all
inet_protocols = ipv4
local_recipient_maps = unix:passwd.byname mysql:/etc/postfix/mysql-virtual-maps.cf
mail_spool_directory = /var/mail
mailbox_command = /usr/bin/procmail -a $DOMAIN -d $LOGNAME
mailbox_transport = virtual
mydestination = localhost, $myhostname, $mydomain, localhost.$mydomain, mysql:/etc/postfix/mysql-mydestination.cf
mydomain = virtual.domain
myhostname = localhost
mynetworks = 10.0.0.0/8, 10.1.0.0/8, 127.0.0.0/8
mynetworks_style = subnet
myorigin = $mydomain
relay_domains = $mydestination
relayhost =
smtpd_banner = $myhostname ESMTP $mail_name ($mail_version)
smtpd_tls_loglevel = 5
smtputf8_enable = no
unknown_local_recipient_reject_code = 550

Ответить | Правка | ^ к родителю #7 | Наверх | Cообщить модератору

10. "postfix+mysql - virtual mailbox base"  +/
Сообщение от ALex_hha (ok) on 11-Мрт-16, 13:06 
Без форматирования тут фиг что поймешь. Как минимум стоит взять в [сode] либо юзать тот же pastebin
Ответить | Правка | ^ к родителю #9 | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2025 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру