Re: [Dovecot] deleted Messages don't go into Trash Folder always

2007-05-16 Thread Timo Sirainen
On Tue, 2007-05-15 at 19:49 +0200, Rainer Sigl wrote:
 Hi all,
 most of the time deleted messages aren't moved into trash folder but go 
 into nirwana. Sometimes it works correctly. But a restart does not 
 guarantee this function. This effect exists with different imap clients. 
 Can anybody help please.

IMAP server doesn't move deleted messages to Trash. Some clients can be
configured to do that, so if it's not working it's either a client
configuration issue or there's something else wrong.

You could enable mail_log plugin to see what the clients are doing
(http://wiki.dovecot.org/Plugins/MailLog). Also look at Dovecot's error
logs to see if there's anything (http://wiki.dovecot.org/Logging)



signature.asc
Description: This is a digitally signed message part


Re: [Dovecot] List problems?

2007-05-16 Thread Timo Sirainen
On Wed, 2007-05-16 at 07:14 -0400, Charles Marcus wrote:
 Hi Timo,
 
 Sorry to bother you, but I'm used to having at least 10-20 in the 
 morning. This morning there are none... and the last one is from 3:00pm 
 yesterday?

The server was down last night for a while, and looks like rebooting
didn't start Dovecot processes, so Postfix was down:

postfix/smtpd[14809]: fatal: no SASL authentication mechanisms

There's no need for it to use SASL in port 25 though. I guess I'll fix
the settings so this won't happen again.



signature.asc
Description: This is a digitally signed message part


Re: [Dovecot] Getting rid of the common newbie problems

2007-05-16 Thread Joseba Torre
Hi,

there's no easy way to get rid of newbie problems: right now dovecot is quite 
a complex software, so configuration is complex. Even more, all the 
userdb/passdb thing is really powerfull, but also a bit diferent of anything 
I was used to, so it's normal that people is a bit confused in the begining.

Anyway, I'm quite sure that in apache's, postfix's or sendmail's mailing lists 
there are far more newbie questions than here, and that isn't necesary bad.

For me, the easier solution would be an entry in the wiki with well documented 
common configs:

- system users (using pam/passwd)
- ldap (with a common conf)
- mysql
- postgresql

There is something similar in

http://wiki.dovecot.org/DovecotServerInstallations

but there the main goal seems to be the hardware.

I have to document my current config in spanish for my job, and it wouldn't be 
a hard job to translate it to english a upload it somewhere.

Aagur.

El Martes, 15 de Mayo de 2007 18:40, Timo Sirainen escribió:
 I think the most common Dovecot newbie problems are:

  - Not looking at the (correct) logs for errors
  - Authentication problems
  - Mail location problems
  - Mail permission problems

 Below are some of my ideas how I could stop people from asking these
 questions with future Dovecot (v1.1+) releases. Suggestions welcome.
 Distribution people especially should say if they're against some
 change.

-- 
Joseba Torre. CIDIR Bizkaia.


pgphbpigagsJB.pgp
Description: PGP signature


Re: [Dovecot] dbox redesign

2007-05-16 Thread Bill Boebel
On Sat, May 12, 2007 9:10 am, Timo Sirainen [EMAIL PROTECTED] said:

 Fast copying
 
 
 Would be nice if copying a message from one mailbox to another wouldn't
 require actually reading+writing the whole message contents. But I can't
 really figure out how to implement this without requiring that there is
 only a single dbox storage which contains the mails for all the
 mailboxes, and the mailboxes themselves are just Dovecot's index files
 containing pointers to the dbox storage.
 
 The problem with having everything in one storage is that if the index
 files are broken, the messages can't be placed into correct mailboxes
 anymore.
 
 Although one possibility would be treat mailboxes a bit similarly than
 keywords. So that when a message is copied to another mailbox, the
 message in dbox file is updated to contain information that it exists in
 such and such mailboxes. Hmm. Perhaps that would be good enough, yes.
 

Yes, I think treating mailboxes similary to keywords is ideal.  There really is 
no reason to physically separate mailboxes on disk.  All that is needed is this 
logical separation if it can be done in a reliable way.

Or maybe track this in mailbox-specific index files, and also have a 
corespodning text file that stores a list of messages that are contained in 
that mailbox... similar to maildir's dovecot-uidlist file.  Then if you lose 
the index you can rebuild the index from the text file.

Bill



Re: [Dovecot] Getting rid of the common newbie problems

2007-05-16 Thread Steffen Kaiser

-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1

On Tue, 15 May 2007, Timo Sirainen wrote:


* Logging

Logging to eg. /var/log/dovecot.log by default would be helpful here,


Personally, I found logging to a separate file helpful during setting up 
Dovecot, because you can focus on Dovecot that way.



* Authentication

So the last n failed authentications could be added, where n could
also be 0.


This message is user-specific, isn't it?
How about a login-statistics of the last 10 or so attempts? Maybe one can 
use the utmp/wtmp service.



rip=127.0.0.1, lip=127.0.0.1, secured, 1 failed authentications (set
auth_debug_passwords=yes to debug the problem)


It usually is not enough to set the option, I think.
Shouldn't it be: read doc/debug_auth_problems.txt
with one of the first text therein set auth_debug_passwords=yes


* Mail location

It seems to be difficult for some people to set mail_location. I don't


IMHO: It looks wierd first, but the doc is OK.
The most problem for myself was that it's spelled maildir:%h/maildir
rather than maildir=%h/maildir, I mean anything else is in key=value 
format.



Home directory is used in mail_location, but userdb didn't return a
home directory

It would be nice if it didn't say userdb, but rather the userdb's name.


When the userdb is logged, you could add a note that the particular userdb 
is user-specific, but mentioned in the logs.



* Mail permissions

Another possibility would be to drop the dovecot user completely and
instead use nobody. That would mean that other nobody processes could
kill Dovecot's login processes, but that's pretty much it.


I would say no :-) Stick with a specific user.
Otherwise, if it is still possible to run Dovecot with a specific user, 
... . I like to see in ps or top, which process belongs to which package 
at easy glancing.



Add new mail_uid and mail_gid settings to dovecot.conf. Deprecate
user_global_uid/gid in dovecot-ldap.conf and make all the userdbs
mention that the uid/gid returned by userdb can be used to override the
global mail_uid/gid. Perhaps also add mail_home template. This change
makes it unnecessary to have a userdb configured at all.

- How do I tell Dovecot to run as vmail user?
- Set mail_uid = vmail in dovecot.conf
- Thanks


As long as this is transparent, I mean, one need no mail_uid in the LDAP 
backends, this might solve lots of vmail support requests.
If I see it correct, this effectively makes userdb static the default - 
without explizit userdb { } block. BTW: Is mail_home the same as 
mail_location then?


Bye,

- -- 
Steffen Kaiser

-BEGIN PGP SIGNATURE-
Version: GnuPG v1.4.6 (GNU/Linux)

iQEVAwUBRkqxGC9SORjhbDpvAQJFJggAs9M4K9V/cYHccUlW76WWOSgmQVoMYVDV
EyVPUQelNcOo0FLYt+OxBmMhbtr1Hd4DxgkiHL1PIofpDlusSQ30D+kGVwBLIvj4
ZQJk8AzhWaiqVfHk6BXzDE+MA4Bi3f6dl8lQBntDCbJ9THtX2wOoGcWoQLIngjPp
gBHgzHmffJQAQLwbUrgrI5BPhaGa4fXTXOd1ZtON+2Key4K6bqAvMfvElgdWk4Z1
7tdVB2MciIrUvSe7qzlA3dgQlpYCIWrYPAq9Dswnogj/0ApQbxccpa0+YZ4OdGe5
FlM6a1PaOI2oNXwafhjwD0+TOH3YmDRVeqPAasS66jBsddYGa78/uw==
=5ZOg
-END PGP SIGNATURE-


Re: [Dovecot] deleted Messages don't go into Trash Folder always

2007-05-16 Thread Steffen Kaiser

-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1

On Tue, 15 May 2007, Rainer Sigl wrote:

most of the time deleted messages aren't moved into trash folder but go into 
nirwana. Sometimes it works correctly. But a restart does not guarantee this 
function. This effect exists with different imap clients. Can anybody help


I'd enable the mail_log plugin, so you can see what Dovecot really does.
In combination with rawlog (well, I prefer ethereal/wireshark) to snoop 
the client-server connection you'll see what goes on.


Bye,

- -- 
Steffen Kaiser

-BEGIN PGP SIGNATURE-
Version: GnuPG v1.4.6 (GNU/Linux)

iQEVAwUBRkqkKi9SORjhbDpvAQLKhggAz40YoCiYP5vIvQ85VG56wH0IlZfNyRzV
MZO+nwvNYxGCqFep9yMmIhrTmR16bBR+95FVWz4JF7GOO/OBlxh2H+wlCUP7q18c
JJtP8xVeyT+89ZTRenTLXdZ4RIV5B2WaR2ACZjKFvJi6DEmVwAYo2vfEgiZbIW+9
g2bFklbHYOGDUIYrHljRfq44omUTxuLKQsQABuP9txscsiPleMFbAbMOhHTeS91P
Yv5GJiSZXZOgdyR1uLbvlUXCmTY9AHLWq7XjZ7Gm/XMjiyZRVIgG/B+APgUMCIR4
g2diqdZ8/imMznc9/HKk19KRsFEft/7TiZkGXIfWoLyzUf64I2qtHA==
=3vpo
-END PGP SIGNATURE-


Re: [Dovecot] Getting rid of the common newbie problems

2007-05-16 Thread Charles Marcus

On 5/16/2007 Joseba Torre ([EMAIL PROTECTED]) wrote:
For me, the easier solution would be an entry in the wiki with well 
documented common configs:


- system users (using pam/passwd)
- ldap (with a common conf)
- mysql
- postgresql


I agree completely... also, explanations for what is required to convert 
from, say, cyrus-sasl to dovecot-sasl (I want to do that someday soon), 
from common LDA (ie postfix's) to the dovecot LDA (want to do that as 
well), etc...


Wish I was fluent in all of these, I'd do it myself... if no one has by 
the time I get around to it, I'll document what I do and add it to the 
wiki...


--

Best regards,

Charles


[Dovecot] Dovecot DELIVER

2007-05-16 Thread Bruce Bodger

Tried today to use Dovecot's DELIVER LDA.
I'm running Postfix 2.1.5. I simply added the line...

mailbox_command = /usr/local/libexec/dovecot/deliver

to main.cf and made no other changes.  First email resulted in this  
in mail.log:


May 16 06:29:56 G518X2 deliver(bb): open(/var/mail/bb.lock) failed:  
Permission denied
May 16 06:29:56 G518X2 deliver(bb): file_lock_dotlock() failed with  
mbox file /var/mail/bb: Permission denied
May 16 06:29:56 G518X2 deliver(bb):  
msgid=[EMAIL PROTECTED]:  
save failed to INBOX
May 16 06:29:56 G518X2 deliver(bb): open(/var/mail/bb.lock) failed:  
Permission denied
May 16 06:29:56 G518X2 deliver(bb): file_lock_dotlock() failed with  
mbox file /var/mail/bb: Permission denied


Permissions on all inbox files in /var/mail was 600. Owned by  
username:mail  I tried changing to 660 but got the same result.

Dovecot user is member of mail group.

Any ideas?

Thanks in advance.


Re: [Dovecot] dbox redesign

2007-05-16 Thread Timo Sirainen
On Wed, 2007-05-16 at 06:40 -0400, Bill Boebel wrote:
  Although one possibility would be treat mailboxes a bit similarly than
  keywords. So that when a message is copied to another mailbox, the
  message in dbox file is updated to contain information that it exists in
  such and such mailboxes. Hmm. Perhaps that would be good enough, yes.
  
 
 Yes, I think treating mailboxes similary to keywords is ideal.  There
 really is no reason to physically separate mailboxes on disk.  All
 that is needed is this logical separation if it can be done in a
 reliable way.

Except if you want to handle some mailboxes in a special way it's easier
if they're separated on disk. Such as renaming or deleting mailboxes is
a lot easier.

 Or maybe track this in mailbox-specific index files, and also have a
 corespodning text file that stores a list of messages that are
 contained in that mailbox... similar to maildir's dovecot-uidlist
 file.  Then if you lose the index you can rebuild the index from the
 text file.

Except that such mailbox-messagelist file could also be counted as
index file, and losing it again loses the messages :) That's why I
thought saving the mailbox name in the message file's headers would be
better. If you then lose the mailbox name, you most likely have lost the
message itself as well. Also it makes it easier to restore individual
messages from backups.



signature.asc
Description: This is a digitally signed message part


Re: [Dovecot] dbox redesign

2007-05-16 Thread Charles Marcus
Would be nice if copying a message from one mailbox to another 
wouldn't require actually reading+writing the whole message

contents. But I can't really figure out how to implement this
without requiring that there is only a single dbox storage which
contains the mails for all the mailboxes, and the mailboxes
themselves are just Dovecot's index files containing pointers to
the dbox storage.

The problem with having everything in one storage is that if the 
index files are broken, the messages can't be placed into correct 
mailboxes anymore.


Although one possibility would be treat mailboxes a bit similarly 
than keywords. So that when a message is copied to another mailbox,
the message in dbox file is updated to contain information that it 
exists in such and such mailboxes. Hmm. Perhaps that would be good

enough, yes.


Yes, I think treating mailboxes similary to keywords is ideal.  There 
really is no reason to physically separate mailboxes on disk.  All 
that is needed is this logical separation if it can be done in a 
reliable way.


Or maybe track this in mailbox-specific index files, and also have a 
corespodning text file that stores a list of messages that are 
contained in that mailbox... similar to maildir's dovecot-uidlist 
file.  Then if you lose the index you can rebuild the index from the 
text file.


This sounds suspiciously like 'virtual folders', that are supported by 
both Evolution and Thunderbird... how do they do it?


--

Best regards,

Charles


Re: [Dovecot] Dovecot DELIVER

2007-05-16 Thread Timo Sirainen
On Wed, 2007-05-16 at 06:58 -0400, Bruce Bodger wrote:
 May 16 06:29:56 G518X2 deliver(bb): file_lock_dotlock() failed with  
 mbox file /var/mail/bb: Permission denied

See http://wiki.dovecot.org/MailLocation/Mbox#dotlocks



signature.asc
Description: This is a digitally signed message part


Re: [Dovecot] Dovecot DELIVER

2007-05-16 Thread Timo Sirainen
On Wed, 2007-05-16 at 14:53 +0300, Timo Sirainen wrote:
 On Wed, 2007-05-16 at 06:58 -0400, Bruce Bodger wrote:
  May 16 06:29:56 G518X2 deliver(bb): file_lock_dotlock() failed with  
  mbox file /var/mail/bb: Permission denied
 
 See http://wiki.dovecot.org/MailLocation/Mbox#dotlocks

Hmm. Actually with deliver the mail_extra_groups doesn't work. So I
think you have two possibilities:

1. Set /var/mail sticky
2. Don't use dotlocks (but if you use other programs to access the
mboxes make sure they don't break)

 Dovecot user is member of mail group.

Don't do that. http://wiki.dovecot.org/UserIds



signature.asc
Description: This is a digitally signed message part


Re: [Dovecot] Login with firstname.lastname instead of loginname

2007-05-16 Thread Timo Sirainen
On Wed, 2007-05-16 at 11:26 +0200, Ralf Hildebrandt wrote:
 Some of our users use to login as
 firstname.lastname
 or
 [EMAIL PROTECTED]
 instead of using the correct
 flastname login name.
 
 In order to get this behaviour a long-gone co-worker wrote an
 authdaemon.pl, which speaks the courier-authdaemon protocol.
 
 How can I emulate this behaviour with dovecot?

What passdb are you using? Dovecot supports aliases if you make the
passdb return user=the-real-user field.
http://wiki.dovecot.org/PasswordDatabase/ExtraFields



signature.asc
Description: This is a digitally signed message part


Re: [Dovecot] Getting rid of the common newbie problems

2007-05-16 Thread Udo Rader
Am Dienstag, den 15.05.2007, 19:40 +0300 schrieb Timo Sirainen:
 I think the most common Dovecot newbie problems are:
 
  - Not looking at the (correct) logs for errors
  - Authentication problems
  - Mail location problems
  - Mail permission problems
 
 Below are some of my ideas how I could stop people from asking these
 questions with future Dovecot (v1.1+) releases. Suggestions welcome.
 Distribution people especially should say if they're against some
 change.
 
  * Logging
 
 The log file problem is the most annoying one, because a lot of the
 other problems can be solved once the admin figures out that Dovecot is
 actually giving useful error messages. Often the admin is only looking
 at the log file where info messages go (eg mail.log) because Dovecot
 logs its startup message and login messages there, but not where the
 errors go (eg mail.err). This has happened even with people who in
 general are experienced sysadmins.
 
 Logging to eg. /var/log/dovecot.log by default would be helpful here,
 but it's probably better to log via syslog by default. Cyrus logs to
 local6 by default. Perhaps for Dovecot v1.1 I should make that the
 default too? Looks like in my Debian system the info messages then go to
 both /var/log/messages and /var/log/syslog. Error messages only go
 to /var/log/syslog. So there still isn't by default a single log file
 where the errors are logged, but it might help a bit.

Logging is always a special issue. No matter where and how much is
logged, you can bet that either not all is read or it is misinterpreted.
I say this as a first hand prove for that, there are many times when I
saw an error message
but did not actually read it :-)

Getting people to actually read _and_ understand what a log message
means is very difficult on a very psychological level :-)

But of course, good logging is vital in any circumstance and logging to
an own facility would be a good idea anyhow.

  * Authentication
 
 Authentication problems can usually be solved by telling the user to set
 auth_debug_passwords=yes and looking at the logs. I'm not sure if
 there's anything that can be helped in here. Except the logging message
 could be updated a bit:
 
 Aborted login: user=asdga, method=PLAIN, rip=127.0.0.1,
 lip=127.0.0.1, secured, 1 failed authentications
 
 So the last n failed authentications could be added, where n could
 also be 0.
 
 Another possibility would be to make Dovecot remember if there have been
 any successful logins (/var/lib/dovecot/success file) and if not, give a
 bit more helpful error messages:
 
  - Client gets: NO Authentication failed. Refer to server log for more
 information. instead of the normal NO Authentication failed.
  - Log contains: Aborted login: user=asdga, method=PLAIN,
 rip=127.0.0.1, lip=127.0.0.1, secured, 1 failed authentications (set
 auth_debug_passwords=yes to debug the problem)
 
 I'm not sure if this is a good idea.

The overhead for this on heavily loaded systems would be quite
significant, IMHO. This feature should only be active when explicitly
activated in the configuration, so that would not be much of a change to
the current situation :-)

  * Mail location
 
 It seems to be difficult for some people to set mail_location. I don't
 know if anything can be done before Dovecot v2.0 where I'll split it to
 multiple settings, such as:
 
 driver = maildir
 root_dir = ~/Maildir
 index_dir = /var/indexes/%u
 
 Another problem that seems to be difficult to understand is why the mail
 directory contains HOME_DIRECTORY_USED_BUT_NOT_GIVEN_BY_USERDB. The
 whole userdb concept appears to be weird. This could anyway be fixed by
 giving an error message earlier and failing the login with internal
 error.
 
 Probably the best place to give the error message would be already in
 the userdb lookup in dovecot-auth, but that would require that
 doveoct-auth knows if the home directory is really needed, and to give a
 useful error message it would also need to tell where it's tried to be
 used (mail_location, or some namespace's location, or ..). Probably too
 much trouble to be worth it. So the next best thing is to give the error
 when it's used:
 
 Home directory is used in mail_location, but userdb didn't return a
 home directory
 
 It would be nice if it didn't say userdb, but rather the userdb's name.
 I guess that would be possible if dovecot-auth told master (or deliver)
 which userdb was used, but that would normally be just extra overhead.
 
  * Mail permissions
 
 If mail location is difficult for some, then the concept of UIDs are how
 they're used in Dovecot is pretty much impossible for some to
 understand.
 
 One of the problems is that there exists dovecot user. So people think
 that their mails should be owned by the dovecot user. Although I've
 mentioned in everywhere I can think of that this should not be done, it
 won't help because either people won't read the pages or even if they
 do, they somehow still fail to ignore it even though it's 

Re: [Dovecot] Dovecot DELIVER

2007-05-16 Thread Bruce Bodger


On May 16, 2007, at 7:53 AM, Timo Sirainen wrote:


On Wed, 2007-05-16 at 06:58 -0400, Bruce Bodger wrote:

May 16 06:29:56 G518X2 deliver(bb): file_lock_dotlock() failed with
mbox file /var/mail/bb: Permission denied


See http://wiki.dovecot.org/MailLocation/Mbox#dotlocks


Thank you, Timo.

I have followed the directions in the wiki.  The user dovecot belongs  
to group mail and I gave the mbox 660 permissions. I also have  
mail_extra_groups = mail set in dovecot.conf.  Am I missing something?


Thank you again.





Re: [Dovecot] imap-login: Disconnected: Connection queue full

2007-05-16 Thread Timo Sirainen
On Wed, 2007-05-16 at 12:42 +0200, Ralf Hildebrandt wrote:
 I'm getting imap-login: Disconnected: Connection queue full:
 messages like these:
 
 May 16 12:17:26 postamt dovecot: imap-login: Disconnected: Connection queue 
 full: rip=160.45.172.202, lip=141.42.4.250
 May 16 12:17:26 postamt dovecot: imap-login: Disconnected: Connection queue 
 full: rip=141.42.165.160, lip=141.42.4.250, TLS
 May 16 12:18:23 postamt dovecot: imap-login: Disconnected: Connection queue 
 full: rip=193.175.70.61, lip=141.42.4.250
 
 Should I worry about these messages or are they of informational
 character only?
 
 Does it mean that the imap-login encountered more than
 login_max_connections and thus a new process had to be spawned?

No. It means that it disconnected a client that wasn't yet logged in
because login_max_connections was reached. It should happen only if
login_max_processes_count was reached. Perhaps there's still a bug
somewhere in there.. How many imap-login processes do you have running?
Increasing login_processes_count probably helps for now.

 login_process_per_connection: no
 login_max_connections: 32

With these settings it should have allowed 32*128 connections / ssl
proxies until the connection queue full error would have happened.



signature.asc
Description: This is a digitally signed message part


Re: [Dovecot] Dovecot DELIVER

2007-05-16 Thread Bruce Bodger


On May 16, 2007, at 7:58 AM, Timo Sirainen wrote:


On Wed, 2007-05-16 at 14:53 +0300, Timo Sirainen wrote:

On Wed, 2007-05-16 at 06:58 -0400, Bruce Bodger wrote:

May 16 06:29:56 G518X2 deliver(bb): file_lock_dotlock() failed with
mbox file /var/mail/bb: Permission denied


See http://wiki.dovecot.org/MailLocation/Mbox#dotlocks


Hmm. Actually with deliver the mail_extra_groups doesn't work. So I
think you have two possibilities:

1. Set /var/mail sticky
2. Don't use dotlocks (but if you use other programs to access the
mboxes make sure they don't break)


Set dovecot user back to its own group.

I set /var/mail to sticky...

drwxrwxr-t   10 rootmail 340 May 16 08:11 mail

Still get this:

May 16 08:11:31 G518X2 deliver(bb): open(/var/mail/bb.lock) failed:  
Permission denied
May 16 08:11:31 G518X2 deliver(bb): file_lock_dotlock() failed with  
mbox file /var/mail/bb: Permission denied
May 16 08:11:31 G518X2 deliver(bb):  
msgid=[EMAIL PROTECTED]:  
save failed to INBOX
May 16 08:11:31 G518X2 deliver(bb): open(/var/mail/bb.lock) failed:  
Permission denied
May 16 08:11:31 G518X2 deliver(bb): file_lock_dotlock() failed with  
mbox file /var/mail/bb: Permission denied


Bruce



Re: [Dovecot] imap-login: Disconnected: Connection queue full

2007-05-16 Thread Ralf Hildebrandt
* Timo Sirainen [EMAIL PROTECTED]:

 No. It means that it disconnected a client that wasn't yet logged in
 because login_max_connections was reached. It should happen only if
 login_max_processes_count was reached. Perhaps there's still a bug
 somewhere in there.. How many imap-login processes do you have running?
 Increasing login_processes_count probably helps for now.

[EMAIL PROTECTED]:~# ps auxwww |grep imap \[ |wc -l
616
[EMAIL PROTECTED]:~# ps auxwww |grep imap-login |wc -l
14

So I have 616 imap processes and 14 imap-login processes.
Each of the 14 handles up to 32 auth requests.
And if I get this right, NEW imap-login processes are spawned
automatically when the need arises. Correct?

So I'm well below my limit of 128 imap-login processes.
Or do I have to count other *-login processes as well?

-- 
Ralf Hildebrandt (i.A. des IT-Zentrums) [EMAIL PROTECTED]
Charite - Universitätsmedizin BerlinTel.  +49 (0)30-450 570-155
Gemeinsame Einrichtung von FU- und HU-BerlinFax.  +49 (0)30-450 570-962
IT-Zentrum Standort CBFsend no mail to [EMAIL PROTECTED]


Re: [Dovecot] Getting rid of the common newbie problems

2007-05-16 Thread Timo Sirainen
On Wed, 2007-05-16 at 02:15 +0200, Udo Rader wrote:
 Getting people to actually read _and_ understand what a log message
 means is very difficult on a very psychological level :-)

A good example would be this error that I've changed 2 times already:

Set pop3_uidl_format setting in config file
pop3_uidl_format setting is missing from config file
Set pop3_uidl_format in config file

Looks like the first one actually was the best one. I'm not sure why I
changed it to the second one, and when changing it again to the 3rd one
I seem to have dropped setting word. Maybe I should add it back. :)

Anyway, with all of these 3 messages people have still copypasted logs
and asked How do I fix this? I just don't know how to make it any more
clearer. Except a few times people have asked What config file? so
changing that to dovecot.conf could help a bit.

  Another possibility would be to make Dovecot remember if there have been
  any successful logins (/var/lib/dovecot/success file) and if not, give a
  bit more helpful error messages:
  
   - Client gets: NO Authentication failed. Refer to server log for more
  information. instead of the normal NO Authentication failed.
   - Log contains: Aborted login: user=asdga, method=PLAIN,
  rip=127.0.0.1, lip=127.0.0.1, secured, 1 failed authentications (set
  auth_debug_passwords=yes to debug the problem)
  
  I'm not sure if this is a good idea.
 
 The overhead for this on heavily loaded systems would be quite
 significant, IMHO. This feature should only be active when explicitly
 activated in the configuration, so that would not be much of a change to
 the current situation :-)

No, it wouldn't add much overhead. That file's existence could be
checked only at startup, and after that it's just a variable that needs
to be checked/updated and the for the first successful login the file
would have to be created.

 IMO the best way to prevent basic errors and basic questions is to
 provide as many sample configurations as possible (eg. in the wiki),
 maybe organized
 as some kind of recipes.

Yea, that would be useful. Especially adding configurations that worked
with other user managing software such as Postfixadmin.

 I've upgraded our and come clients' dovecot installations multiple times, and
 to be honest I did not like the extensive documentation provided in the 
 default 
 configuration files. Saying 'I did not like it' does not mean that the 
 information 
 was useless, on the contrary, the amount was just overwhelming ...
 
 Sometimes too much information is ... too much :-)

For Dovecot v2.0 I'm planning on splitting dovecot.conf to multiple
files. The main dovecot.conf would then contain only the most important
settings.


signature.asc
Description: This is a digitally signed message part


Re: [Dovecot] Login with firstname.lastname instead of loginname

2007-05-16 Thread Timo Sirainen
On Wed, 2007-05-16 at 14:12 +0200, Ralf Hildebrandt wrote:
 * Timo Sirainen [EMAIL PROTECTED]:
 
  What passdb are you using?
 
 auth default:
   master_user_separator: *
   verbose: yes
 passdb:
   driver: passwd-file
   args: /usr/local/etc/dovecot.masterusers
   pass: yes
   master: yes
 passdb:
   driver: shadow
 passdb:
   driver: pam

Do you really have different users in shadow and in pam?

 userdb:
   driver: passwd
 userdb:
   driver: passwd

There's no need to have this twice.

  Dovecot supports aliases if you make the
  passdb return user=the-real-user field.
  http://wiki.dovecot.org/PasswordDatabase/ExtraFields
 
 Hmm, does this mean I add another dummy database containing:
 
 ralf.hildebrandt:user=rhilde
 [EMAIL PROTECTED]:user=rhilde

Well, shadow and pam don't support extra fields, so I don't think you
can do anything about these unless you switch to another passdb.
Currently Dovecot doesn't support these kind of pass through passdbs.

PAM however does support internally changing the username, so it would
be possible for you to create such a PAM module. But I can't help with
that.


signature.asc
Description: This is a digitally signed message part


[Dovecot] Sorting by Received vs Sent

2007-05-16 Thread Bill Boebel
Looks like in Cyrus, sorting by Received date is faster than sorting by the 
Sent header date because of the way they use the index and cache files...  
http://www.emaildiscussions.com/showpost.php?p=419246

Is this the case in Dovecot as well?

Bill



Re: [Dovecot] imap-login: Disconnected: Connection queue full

2007-05-16 Thread Timo Sirainen
On Wed, 2007-05-16 at 14:17 +0200, Ralf Hildebrandt wrote:
 * Timo Sirainen [EMAIL PROTECTED]:
 
  No. It means that it disconnected a client that wasn't yet logged in
  because login_max_connections was reached. It should happen only if
  login_max_processes_count was reached. Perhaps there's still a bug
  somewhere in there.. How many imap-login processes do you have running?
  Increasing login_processes_count probably helps for now.
 
 [EMAIL PROTECTED]:~# ps auxwww |grep imap \[ |wc -l
 616
 [EMAIL PROTECTED]:~# ps auxwww |grep imap-login |wc -l
 14
 
 So I have 616 imap processes and 14 imap-login processes.
 Each of the 14 handles up to 32 auth requests.
 And if I get this right, NEW imap-login processes are spawned
 automatically when the need arises. Correct?

That's correct, but if you're getting those kind of errors I guess there
are some bugs. Are all those imap connections using SSL/TLS?

 So I'm well below my limit of 128 imap-login processes.
 Or do I have to count other *-login processes as well?

The limits are counted separately for imap-logins and pop3-logins.



signature.asc
Description: This is a digitally signed message part


Re: [Dovecot] deleted Messages don't go into Trash Folder always

2007-05-16 Thread Rainer Sigl

Many thanks,
I'm afraid I have to update first. My kubuntu dapper installation has an 
older version of dovecot.

Rainer

Timo Sirainen schrieb:


On Tue, 2007-05-15 at 19:49 +0200, Rainer Sigl wrote:
 


Hi all,
most of the time deleted messages aren't moved into trash folder but go 
into nirwana. Sometimes it works correctly. But a restart does not 
guarantee this function. This effect exists with different imap clients. 
Can anybody help please.
   



IMAP server doesn't move deleted messages to Trash. Some clients can be
configured to do that, so if it's not working it's either a client
configuration issue or there's something else wrong.

You could enable mail_log plugin to see what the clients are doing
(http://wiki.dovecot.org/Plugins/MailLog). Also look at Dovecot's error
logs to see if there's anything (http://wiki.dovecot.org/Logging)

 



--
-
Rainer Sigl,  | email: [EMAIL PROTECTED]
MPI f. extraterrestrische Physik, | phone: +49 (89) 3-3557
Postfach 1312,| fax:   +49 (89) 3-3569
D-85741 Garching, Germany | web:   http://www.mpe.mpg.de/~sigl/ 



Re: [Dovecot] Sorting by Received vs Sent

2007-05-16 Thread Timo Sirainen
On Wed, 2007-05-16 at 08:24 -0400, Bill Boebel wrote:
 Looks like in Cyrus, sorting by Received date is faster than sorting by the 
 Sent header date because of the way they use the index and cache files...  
 http://www.emaildiscussions.com/showpost.php?p=419246
 
 Is this the case in Dovecot as well?

In Dovecot v1.0 both of the dates are stored in dovecot.index.cache
file, so they're just as fast (as long as they're both cached already,
if neither is cached then getting the received date is faster because it
requires a single stat() with maildir instead of parsing message
headers).

In Dovecot v1.1 the sort information is stored in dovecot.index file, so
again they're just as fast.

I'm not actually sure how great of an idea it was to put the sort
information into dovecot.index files. Sure it makes SORT faster, but it
increases dovecot.index's size which makes other operations slower. It
might be faster overall, but it might be even better to have a separate
sort file. Except that's how I originally thought about doing it, but
then decided that wasn't good. Maybe some day I'll figure out the
optimal solution. :)



signature.asc
Description: This is a digitally signed message part


Re: [Dovecot] Login with firstname.lastname instead of loginname

2007-05-16 Thread Ralf Hildebrandt
* Ralf Hildebrandt [EMAIL PROTECTED]:
 * Timo Sirainen [EMAIL PROTECTED]:
 
  What passdb are you using?
 
 auth default:
   master_user_separator: *
   verbose: yes
 passdb:
   driver: passwd-file
   args: /usr/local/etc/dovecot.masterusers
   pass: yes
   master: yes
 passdb:
   driver: shadow
 passdb:
   driver: pam
 userdb:
   driver: passwd
 userdb:
   driver: passwd

So, am I getting this right, it should read:

  passdb passwd-file {
args = /usr/local/etc/dovecot.masterusers
master = yes
pass = yes
  }
  passdb shadow {
  }
  
  # NEW
  passdb passwd-file {
 # Format should look like this:
 # 
firstname.lastname:password:uid:gid:(gecos):home:(shell):user=realloginname
 # [EMAIL 
PROTECTED]:password:uid:gid:(gecos):home:(shell):user=realloginname
 args = /usr/local/etc/dovecot.login_via_email
  }
  # END NEW
  
  userdb passwd {
  }


-- 
Ralf Hildebrandt ([EMAIL PROTECTED]) [EMAIL PROTECTED]
Postfix - Einrichtung, Betrieb und Wartung   Tel. +49 (0)30-450 570-155
http://www.arschkrebs.de
Don't let your sense of morals prevent you from doing what is right.
  -- Asimov, Foundation


Re: [Dovecot] dbox redesign

2007-05-16 Thread Timo Sirainen
On Wed, 2007-05-16 at 07:47 -0400, Charles Marcus wrote:
  Although one possibility would be treat mailboxes a bit similarly 
  than keywords. So that when a message is copied to another mailbox,
  the message in dbox file is updated to contain information that it 
  exists in such and such mailboxes. Hmm. Perhaps that would be good
  enough, yes.
 
  Yes, I think treating mailboxes similary to keywords is ideal.  There 
  really is no reason to physically separate mailboxes on disk.  All 
  that is needed is this logical separation if it can be done in a 
  reliable way.
  
  Or maybe track this in mailbox-specific index files, and also have a 
  corespodning text file that stores a list of messages that are 
  contained in that mailbox... similar to maildir's dovecot-uidlist 
  file.  Then if you lose the index you can rebuild the index from the 
  text file.
 
 This sounds suspiciously like 'virtual folders', that are supported by 
 both Evolution and Thunderbird... how do they do it?

They're based on filtering rules. I don't think they support copying
messages. So the virtual folders are easily rebuilt by just re-applying
the filters into all the messages.



signature.asc
Description: This is a digitally signed message part


Re: [Dovecot] Dovecot DELIVER

2007-05-16 Thread Bruce Bodger


On May 16, 2007, at 8:24 AM, Timo Sirainen wrote:


On Wed, 2007-05-16 at 08:14 -0400, Bruce Bodger wrote:

I set /var/mail to sticky...

drwxrwxr-t   10 rootmail 340 May 16 08:11 mail


You have to make it world-writable also. I'll update the wiki to  
mention

that too.


That may present a problem, Timo, as postfix's local LDA wants  
exclusivity on the files in /var/mail.


May 16 08:34:11 G518X2 postfix/local[26583]: 7E613630295:  
to=[EMAIL PROTECTED], orig_to=[EMAIL PROTECTED], relay=local,  
delay=581, status=deferred (cannot access mailbox /var/mail/bb for  
user bb. unable to lock for exclusive access: Resource temporarily  
unavailable)


I realize that the intent here is to have Dovecot's LDA replace  
Postfix's but it would seem logical if their behaviors (and  
expectations regarding directories) were in sync.


Bruce




Re: [Dovecot] Getting rid of the common newbie problems

2007-05-16 Thread Charles Marcus
I'm trying to get up to speed enough so that I am confident enough to 
answer more questions... I think that would help more than anything 
(people helping him out here on the list)...


That, and, of course, adding more well written, targeted articles to the 
wiki...


--

Best regards,

Charles


Re: [Dovecot] Getting rid of the common newbie problems

2007-05-16 Thread Charles Marcus

On 5/16/2007 Timo Sirainen ([EMAIL PROTECTED]) wrote:
Anyway, with all of these 3 messages people have still copypasted 
logs and asked How do I fix this? I just don't know how to make it

any more clearer.


I don't think you can... I really respect your desire to make things as 
easy/simple for people new to dovecot,



Except a few times people have asked What config file? so changing
that to dovecot.conf could help a bit.


No amount of effort can help someone who is unwilling to learn the bare 
minimum about a new program they want to use - and if they aren't even 
aware that dovecot has a config file (as does every other server app 
I've ever used), or what it is named or where it is - well, I don't 
think I need to say anything more.


--

Best regards,

Charles


Re: [Dovecot] Getting rid of the common newbie problems

2007-05-16 Thread Charles Marcus
I see what you're getting at, but personally i really like having plenty 
of documentation in the config files. That way when you're editing the 
config file, you can know exactly what you're doing and have good 
descriptions right in front of you


Of course this is no substitute for other documentation like manual/wiki 
etc


Maybe the answer is to have two .conf files - one, the example, that 
contains the comments as it is now, and the other, the basic config 
file, with bare minimum comments.


Of course, this means twice as much work for Timo, unless he can do this 
with his IDE somehow (have two different 'comment' fields, one for the 
.example.conf, and one for the minimal version)? Since I'm not a 
programmer and never used an IDE or cvs, not sure how dumb this sounds... ;)


--

Best regards,

Charles


Re: [Dovecot] Maildir POP3 UID larger than next_uid bug

2007-05-16 Thread Timo Sirainen
On Mon, 2007-05-14 at 17:36 +0400, Alexander Moisseev wrote:
 POP3 client can't fetch second e-mail message from Maildir if first POP3 
 connect occurs before any message placed in Maildir.

Thanks. Fixed: http://dovecot.org/list/dovecot-cvs/2007-May/008819.html



signature.asc
Description: This is a digitally signed message part


Re: [Dovecot] index-related crash in dovecot 1.0.0

2007-05-16 Thread Timo Sirainen
On Wed, 2007-05-16 at 13:44 +0200, [EMAIL PROTECTED] wrote:
 dovecot: 2007-05-16 13:30:09 Error: IMAP(6126360): file 
 index-mail-headers.c: 
   line 260 (index_mail_parse_header): assertion failed: (part != NULL)

I'm still not sure how you managed to cause this, but I think this will
fix it: http://dovecot.org/list/dovecot-cvs/2007-May/008821.html


signature.asc
Description: This is a digitally signed message part


Re: [Dovecot] Getting rid of the common newbie problems

2007-05-16 Thread Bruce Bodger


On May 16, 2007, at 9:29 AM, Charles Marcus wrote:

I see what you're getting at, but personally i really like having  
plenty of documentation in the config files. That way when you're  
editing the config file, you can know exactly what you're doing  
and have good descriptions right in front of you
Of course this is no substitute for other documentation like  
manual/wiki etc


On the subject of newbie questions...

The dovecot-example.conf file, under Mailbox locations and  
namespaces,  states,


If you're using mbox, giving a path to the INBOX file (eg. /var/mail/ 
%u) isn't enough. You'll also need to tell Dovecot where the other  
mailboxes are and where Dovecot can place its index files. This is  
called the root mail directory, and it must be the first path given  
in the mail_location setting.


Yet both mbox examples describe otherwise.  The first example,  
mail_location = mbox:~/mail:INBOX=/var/mail/%u has no INDEX  
definition and the second example, mail_location = mbox:/var/mail/%d/ 
%1n/%n:INDEX=/var/indexes/%d/%1n/%n shows the INDEX definition last  
when the instructions state that it must be first.


I happen to be using (under OS X),

mail_location = mbox:~/Library/Mail/IMAP:INBOX=/var/mail/%u:INDEX=%h/ 
Library/Mail/DOVECOT.indexes 


...without any problems so basically, I find the instructions a bit  
confusing.


B. Bodger
New York, NY



Re: [Dovecot] OS X Mail Administration

2007-05-16 Thread Scott Murman
I'd appreciate if you'd share with me the directory structure that  
you use, or would use in my situation.  All mail storage will be on  
the server so disk space is not an issue.  I'm a bit confused  
whether or not to keep the inbox separate from the other imap  
structure as is the OS X default: should all mailboxes be under  
inbox, etc.


i run an os x server, and keep it simply as a server, so there's no  
need to match the mail storage w/ the apple mail layout.  since i  
only have a handful of users, i use $HOME/Maildir for each account,  
then let the client machines/apps do as they wish.   if i had more  
users if would move it into /var and use a different authentication  
scheme.  the only difference from a linux setup is that most things  
dovecot don't seem as well tested under os x since there are fewer of  
us.


-SM-



Re: [Dovecot] OS X Mail Administration

2007-05-16 Thread Bruce Bodger


On May 16, 2007, at 11:27 AM, Timo Sirainen wrote:


On Wed, 2007-05-16 at 10:41 -0400, Bruce Bodger wrote:

I'd like to request some feed back from any OS X Mail Admins on the
list, please.


Set dotlock_use_excl=yes. Without it you can run into all kinds of
trouble with HFS+.


Got it!

Thanks.





[Dovecot] Digest settings

2007-05-16 Thread Kenny Dail
Timo,
Wonder if you can tweak the digests to hold more messages? In 5 hours
this morning, I've received 6 digests, seems a little excessive to me.
-- 
Kenny Dail [EMAIL PROTECTED]



Re: [Dovecot] cyrus + cydir benchmarking

2007-05-16 Thread Timo Sirainen
On Wed, 2007-05-16 at 21:21 +0300, Timo Sirainen wrote:
 Dovecot CVS HEAD + cydir + fsync_disable=no:
 ./imaptest - append=100 seed=1 secs=30 msgs=100 logout=0 select=0
 clients=100
 Logi Appe 
 100% 100% 
5% 
  100 35217 

In the above tests the cache file wasn't updated at all, so it's a bit
unrealistic test. Lets try again with ENVELOPE headers, BODYSTRUCTURE
and INTERNALDATE added into the cache file.

Dovecot CVS HEAD + cydir + fsync_disable=no:
./imaptest - append=100 seed=1 secs=30 msgs=100 logout=0 select=0
clients=100
 100 1023 100/100
   0 1204 100/100
   0 1109 100/100
   0 1104 100/100
   0  976 100/100
   0  824 100/100
   0  781 100/100
   0  762 100/100
..
   0  306 100/100
   0  369 100/100

Totals:
Logi Appe 
100% 100% 
   5% 
 100 18032 

So, dovecot.index.cache file could work more nicely with larger
mailboxes. Hmm. I can't seem to figure out easily why it's slowing down
that much though. I guess I'll have to look at it more.

Oh, and cydir is pretty much the same as what Cyrus is using internally.
The only differences are how our index/cache files are implemented.
Here's how Cyrus 2.2.13-10+b1 (Debian) looks like:

./imaptest - append=100 seed=1 secs=30 msgs=100 logout=0 select=0
clients=100
Logi Appe 
100% 100% 
   5% 
 100 8546 

It was pretty constant at 280/sec. So Dovecot is still about twice as
fast at appending, at least up to 18k mail mailboxes. Cyrus writes a bit
more into its cache file, but it shouldn't give this big of a
difference.


signature.asc
Description: This is a digitally signed message part


Re: [Dovecot] [Blasphemy] Can I build dovecot with -fstack-protector?

2007-05-16 Thread Timo Sirainen
On Wed, 2007-05-16 at 22:47 +0200, Ralf Hildebrandt wrote:
 I tried building dovecot using :
 
 CPPFLAGS=-fstack-protector LDFLAGS=-lssp ./configure
 
 That would result in a proper build, yet the binary would complain
 once being run:
 
 dlopen(/usr/local/lib/dovecot/imap/lib10_quota_plugin.so) failed:
 /usr/local/lib/dovecot/imap/lib10_quota_plugin.so: undefined symbol: 
 __stack_chk_fail_local

Are you sure the imap binary is linked with -lssl? I've never used
-fstack-protector, but I think that symbol should exist in the libssl
library.

If you disable quota plugin, I guess it works then.



signature.asc
Description: This is a digitally signed message part


Re: [Dovecot] CONVERT Plugin

2007-05-16 Thread Timo Sirainen
On Wed, 2007-05-16 at 19:16 -0400, Bruce Bodger wrote:
 convert_mail = mbox:~/Library/Mail/IMAP/:INBOX=/var/mail/%u and  
 mail_location = maildir:~/Maildir
 
 The IMAP directory was renamed to IMAP-converted after the process  
 but the inbox (in /var/mail) does not get renamed.  

It's not supposed to be renamed. The most important reason why the
renaming is done at all is so that convert plugin doesn't try to convert
the same mailboxes twice. It's enough to rename the mbox root directory
for that. I think renaming INBOX could just cause problems.

 The WIKI sounds like it should be renamed to something, too.

Any suggestions how to change it so it doesn't sound like that? I
thought it was pretty clear. :)



signature.asc
Description: This is a digitally signed message part


Re: [Dovecot] CONVERT Plugin

2007-05-16 Thread Bruce Bodger


On May 16, 2007, at 7:21 PM, Timo Sirainen wrote:


It's not supposed to be renamed. The most important reason why the
renaming is done at all is so that convert plugin doesn't try to  
convert
the same mailboxes twice. It's enough to rename the mbox root  
directory

for that. I think renaming INBOX could just cause problems.


The WIKI sounds like it should be renamed to something, too.


Any suggestions how to change it so it doesn't sound like that? I
thought it was pretty clear. :)


Perhaps change this:

Once everything is finished, ~/mail is renamed to ~/mail-converted  
and at next login the conversion isn't done, because the ~/mail  
directory no longer exists.


to this:

Once everything is finished effected directories are renamed: ~/mail  
is renamed to ~/mail-converted, etc. and at next login the conversion  
isn't performed because the ~/mail directory no longer exists. Mail  
files, such as the INBOX (~/var/mail/$USERNAME) are not renamed.


??