[Dovecot] Dovecot Virtual Users with Sendmail
Andrzej A. Filip
andrzej.filip at gmail.com
Thu Jan 3 21:49:48 EET 2013
On 01/03/2013 06:37 AM, DormitionSkete at hotmail.com wrote:
>
> On Jan 2, 2013, at 4:14 PM, Andrzej A. Filip wrote:
>
>> On 01/02/2013 08:46 PM, DormitionSkete at hotmail.com wrote:
>>> On Jan 2, 2013, at 11:12 AM, Andrzej A. Filip wrote:
>>>
>>>> On 01/02/2013 06:53 PM, DormitionSkete at hotmail.com wrote:
>>>>> [...]
>>>>> This is the mail header from the mqueue:
>>>>>
>>>>> [...]
>>>>> MDeferred: dovecot mailer (/usr/local/libexec/dovecot/dovecot-lda) exited with EX_TEMPFAIL
>>>>> [...]
>>>>
>>>> Check dovecot's logs
>>>> If it does not help the push delivery of messages ni sendmail's queue in
>>>> verbose mode: "sendmail -Am -v -q"
>>>
>>> Well, the logs showed this:
>>>
>>> Sep 21 21:47:08 openindiana sendmail[1208]: [ID 702911 mail.warning] gethostbyaddr(10.211.55.6) failed: 2
>>> Sep 21 21:47:08 openindiana sendmail[1208]: [ID 702911 mail.warning] gethostbyaddr(IPv6:fec0::fea9:21c:42ff:feed:5f38) failed: 2
>>
>> I have asked for _dovecot's_ logs. Your problem may be caused e.g. by
>> sendail executing dovecot-lda "as wrong user".
>>
>>> So I put this in my /etc/hosts file:
>>>
>>> 10.211.55.6 localhost
>>>
>>> And I added DOVECOT to my /etc/hosts 127.0.0.1 line.
>>
>> *DO NOT* add DOVECOT (magic word in sendail config) to /etc/hosts.
>>
>>> This cleared the queue, but now all of the mail for the virtual users bounces with this:
>>> The original message was received at Wed, 2 Jan 2013 11:16:27 -0700 (MST)
>>> from openindiana [IPv6:::1]
>>>
>>> ----- The following addresses had permanent fatal errors -----
>>> <hacwebstore at localhost>
>>> (reason: 550 5.1.1 User unknown)
>>> hacwebstore at DOVECOT
>>> (reason: 550 5.1.1 User unknown)
>>> (expanded from: <hacwebstore at localhost>)
>>>
>>> ----- Transcript of session follows -----
>>> 550 5.1.1 hacwebstore at DOVECOT... User unknown
>>> 550 5.1.1 <hacwebstore at localhost>... User unknown
>>>
>>>
>>>
>>> Then I took the DOVECOT out of the 127.0.0.1 line, and it still bounces with the same error.
>>>
>>> How would I invoke this: "sendmail -Am -v -q" ? Change my startup script?
>>
>> It is intended as one time debug help. It should show in more verbose
>> way delivery attempts of messages staying in sendail's queue.
>>
>>
>> Another test: As root try to deliver message to virtual dovecot mailbox:
>> /usr/lib/dovecot-lda -d hacwebstore
>>
>
>
> Please forgive me, Andrzej. I did not realize you wanted me to actually send you the logs. I thought you only meant for me to look to see if there was anything helpful in them.
>
> They do not show much. If I restart dovecot and sendmail, this is basically what I get. If I try to send any mail, nothing shows up in dovecot's log. All that shows up anywhere is my logging into squirrelmail.
>
>
> network-dovecot-default.log
>
> [ Jan 2 21:52:07 Stopping because service restarting. ]
> [ Jan 2 21:52:07 Executing stop method ("/lib/svc/method/dovecot.sh stop"). ]
> [ Jan 2 21:52:07 Method "stop" exited with status 0. ]
> [ Jan 2 21:52:07 Executing start method ("/lib/svc/method/dovecot.sh start"). ]
> [ Jan 2 21:52:07 Method "start" exited with status 0. ]
>
> dovecot-info.log
>
> Jan 02 21:54:48 master: Info: Dovecot v2.1.12 starting up
>
> dovecot.log
>
> Jan 02 21:54:48 master: Warning: Killed with signal 2 (by pid=2587 uid=0 code=kill)
>
> syslog
>
> Sep 21 21:47:08 openindiana sendmail[1208]: [ID 702911 mail.warning] gethostbyaddr(10.211.55.6) failed: 2
> Sep 21 21:47:08 openindiana sendmail[1208]: [ID 702911 mail.warning] gethostbyaddr(IPv6:fec0::fea9:21c:42ff:feed:5f38) failed: 2
>
> ---
>
> systemuser at openindiana:~# /usr/local/libexec/dovecot/dovecot-lda -d hacwebstore
>
> I had to modify the path to get it to work in Solaris. When I ran it as above, it sent a blank email to hacwebstore.
>
> So, lda appears to be working, but sendmail doesn't?
>
> ---
>
> Here is the dovecot portion of my sendmail.cf file again, for your convenience. Does it appear ok to you?
>
>
> ######################*****##############
> ### DOVECOT Mailer specification ###
> ##################*****##################
> Mdovecot, P=/usr/local/libexec/dovecot/dovecot-lda, F=DFMPhnu9,
> S=EnvFromL/HdrFromL, R=EnvToL/HdrFromL,
> T=DNS/RFC822/X-Unix,
> A=/usr/local/libexec/dovecot/dovecot-lda -d $u
>
>
> ---
>
> I do have an odd behaviour I noticed in my syslog. It has the wrong date! Very odd.
>
> Thank you again, Andrzej, for all of your help with this. I appreciate it very much.
>
> Do you think it is solvable?
Quick fix:
Add S flag to F= section (F=DFMSPhnu9) of dovecot mailer spec abvove.
Without U= section it should make sendmail execute dovecot-lda as root.
U= section may request execution as specific user and group.
Some hints at:
1 Dovecot's Wiki
http://wiki.dovecot.org/LDA/Sendmail
2 "The Bat Book" (sendmail book)
http://books.google.com/books?id=NQblqMiVqvQC&pg=PT806&lpg=PT806&dq=sendmail+F%3DS&source=bl&ots=ql4axryGUD&sig=9ovTnv7L3g-ZsygsgRqDLnkyDF0&hl=en&sa=X&ei=FN_lUKu9HMaKhQfIgIGABQ&redir_esc=y
More information about the dovecot
mailing list