On 18/01/2024 02:31, Alex wrote:
Hi, I'm trying to determine the last login time for my IMAP users. Some systems use mbox while others are Maildir, but not sure that matters.
I'd just like to touch a file similar to how it's done in this article, but it doesn't work for me.
https://doc.dovecot.org/admin_manual/post_login_scripting/
I've followed the instructions explicitly - made the required changes to 10- master.conf and created a shell script in /usr/local/bin that touches a file in the user's home directory. However, the file doesn't get created/touched.
I've enabled debugging and don't see any errors that might lead to what I'm doing wrong. It doesn't say explicitly in the article that the last-login script referenced in the article is actually the contents of the postlogin.sh script, but I'm assuming it is?
When I put the following in my dovecot.conf instead of conf.d/10-auth.conf, it core dumps. I thought local changes should be made in dovecot.conf?
service imap-login { executable = imap imap-postlogin inet_listener imap { port = 0 } inet_listener imaps { port = 993 } process_min_avail = 6 service_count = 0 vsz_limit = 512 M } service imap-postlogin { executable = script-login /usr/local/bin/postlogin.sh user = $default_internal_user } service pop3-login { inet_listener pop3 { port = 0 } inet_listener pop3s { port = 995 } }
Hi Alex
I notice you didn't define the listner socket. You're missing this inside your imap-postlogin service definition:
unix_listener imap-postlogin { }
John
On 18/01/2024 02:31, Alex wrote: Hi, I'm trying to determine the last login time for my IMAP users. Some systems use mbox while others are Maildir, but not sure that matters.
I'd just like to touch a file similar to how it's done in this
article, but it
doesn't work for me.
https://doc.dovecot.org/admin_manual/post_login_scripting/
I've followed the instructions explicitly - made the required changes
to 10-
master.conf and created a shell script in /usr/local/bin that touches
a file in
the user's home directory. However, the file doesn't get created/
touched.
I've enabled debugging and don't see any errors that might lead to
what I'm
doing wrong. It doesn't say explicitly in the article that the last-
login
script referenced in the article is actually the contents of the
postlogin.sh
script, but I'm assuming it is?
When I put the following in my dovecot.conf instead of conf.d/10-
auth.conf, it
core dumps. I thought local changes should be made in dovecot.conf?
service imap-login {
executable = imap imap-postlogin
inet_listener imap {
port = 0
}
inet_listener imaps {
port = 993
}
process_min_avail = 6
service_count = 0
vsz_limit = 512 M
}
service imap-postlogin {
executable = script-login /usr/local/bin/postlogin.sh
user = $default_internal_user
}
service pop3-login {
inet_listener pop3 {
port = 0
}
inet_listener pop3s {
port = 995
}
}
Hi Alex I notice you didn't define the listner socket. You're missing this inside your imap-postlogin service definition: unix_listener imap-postlogin { } John