Re: JMAP support in Dovecot
Hi, Any news for jmap Support in Dovecot? Thanks, Mike
Re: Package repository now available
./configure --with-ldap=plugin -with-ssl=openssl --with-sql=plugin --with-lua=plugin \ --with-pgsql --with-mysql --with-sqlite --with-gssapi=plugin --with-solr \ --with-ioloop=best --with-libwrap --with-lucene --with-lz4 Resulting with I/O polling : epoll I/O notifys : inotify SSL : yes (OpenSSL) GSSAPI . : plugin passdbs : static passwd passwd-file shadow pam checkpassword ldap (plugin) sql lua (plugin) userdbs : static prefetch passwd passwd-file checkpassword ldap (plugin) sql lua (plugin) SQL drivers : pgsql mysql sqlite (plugins) Full text search : squat solr lucene Aki Great! Now I am using Dovecot v2.2.3 install from source on CentOS7. (Config option: ./configure --prefix=/usr --sysconfdir=/etc --with-mysql --libdir=/usr/lib64 --with-solr) If I add this new yum repo and do a "yum update", will it smoothly upgrade to v2.3? Will the update also take care the systemd service? Thanks. Gao
Re: Package repository now available
On 2017-12-27 07:00, aki.tu...@dovecot.fi wrote: Dovecot now has package repository for Debian, CentOS and Ubuntu available at https://repo.dovecot.org/ Packages are provided for 2.3 series and forward. Please let us know if you run into any trouble with these. --- Aki Tuomi Dovecot oy So what options the package configured with? Does it include "--with-mysql" and "--with-solr"? Thanks. Gao
Re: ot: fail2ban dovecot setup
Have you tried just using the the filter dovecot.conf come with the fail2ban? # cat /etc/fail2ban/filter.d/dovecot.conf .. failregex = ^%(__prefix_line)s(?:%(__pam_auth)s(?:\(dovecot:auth\))?:)?\s+authentication failure; logname=\S* uid=\S* euid=\S* tty=dovecot ruser=\S* rhost=(?:\s+user=\S*)?\s*$ ^%(__prefix_line)s(?:pop3|imap)-login: (?:Info: )?(?:Aborted login|Disconnected)(?::(?: [^ \(]+)+)? \((?:auth failed, \d+ attempts( in \d+ secs)?|tried to use (disabled|disallowed) \S+ auth)\):( us$ ^%(__prefix_line)s(?:Info|dovecot: auth\(default\)|auth-worker\(\d+\)): pam\(\S+,\): pam_authenticate\(\) failed: (User not known to the underlying authentication module: \d+ Time\(s\)|Authen$ ^%(__prefix_line)s(?:auth|auth-worker\(\d+\)): (?:pam|passwd-file)\(\S+,\): unknown user\s*$ ^%(__prefix_line)s(?:auth|auth-worker\(\d+\)): Info: ldap\(\S*,,\S*\): invalid credentials\s*$ .. Gao On 2017-12-16 15:56, voy...@sbt.net.au wrote: I'm trying to setup and test fail2ban with dovecot I've installed fail2ban, I've copied config from https://wiki2.dovecot.org/HowTo/Fail2Ban, and, trying to test it, attempted multiple mail access with wrong password, but, get this: # fail2ban-client status dovecot-pop3imap Status for the jail: dovecot-pop3imap |- Filter | |- Currently failed: 0 | |- Total failed: 0 | `- File list:/var/log/dovecot.log `- Actions |- Currently banned: 0 |- Total banned: 0 `- Banned IP list: # grep 'auth fail' /var/log/dovecot.log | grep voytek@k | wc 19 3673749 and Dec 17 09:55:03 imap-login: Info: Disconnected (auth failed, 2 attempts in 5 secs): user=, method=PLAIN, rip=110.175.246.167, lip=163.47.110.7, TLS, session= Dec 17 09:55:12 imap-login: Info: Disconnected (auth failed, 2 attempts in 4 secs): user=, method=PLAIN, rip=110.175.246.167, lip=163.47.110.7, TLS, session= Dec 17 09:55:20 imap-login: Info: Disconnected (auth failed, 2 attempts in 4 secs): user=, method=PLAIN, rip=110.175.246.167, lip=163.47.110.7, TLS, session= Dec 17 09:55:27 imap-login: Info: Disconnected (auth failed, 2 attempts in 4 secs): user=, method=PLAIN, rip=110.175.246.167, lip=163.47.110.7, TLS, session= # cat dovecot-pop3imap.conf [Definition] failregex = (?: pop3-login|imap-login): (?:Authentication failure|Aborted login \(auth failed|Aborted login \(tried to use disabled|Disconnected \(auth failed).*rip=(?P\S*),.* ignoreregex = # systemctl status fail2ban ● fail2ban.service - Fail2Ban Service Loaded: loaded (/usr/lib/systemd/system/fail2ban.service; enabled; vendor preset: disabled) Active: active (running) since Sat 2017-12-16 22:35:14 AEDT; 12h ago Docs: man:fail2ban(1) Process: 2034 ExecStop=/usr/bin/fail2ban-client stop (code=exited, status=0/SUCCESS) Process: 6024 ExecReload=/usr/bin/fail2ban-client reload (code=exited, status=0/SUCCESS) Process: 2036 ExecStart=/usr/bin/fail2ban-client -x start (code=exited, status=0/SUCCESS) Main PID: 2039 (fail2ban-server) CGroup: /system.slice/fail2ban.service └─2039 /usr/bin/python2 -s /usr/bin/fail2ban-server -s /var/run/fail2ban/fail2ban.sock -p /var/ru... Dec 16 22:35:14 systemd[1]: Starting Fail2Ban Service... Dec 16 22:35:14 fail2ban-client[2036]: 2017-12-16 22:35:14,657 fail2ban.server [2...9.7 Dec 16 22:35:14 fail2ban-client[2036]: 2017-12-16 22:35:14,657 fail2ban.server [2...ode Dec 16 22:35:14 systemd[1]: Started Fail2Ban Service. Dec 17 09:21:51 systemd[1]: Reloaded Fail2Ban Service. Dec 17 09:22:52 systemd[1]: Reloaded Fail2Ban Service. Dec 17 09:31:40 systemd[1]: Reloaded Fail2Ban Service. Hint: Some lines were ellipsized, use -l to show in full.
Re: sieve filter move wrong email to Junk folder
Thanks for all of your help. Now I modified my sieve script. Three things changes here: 1. if header :contains "X-Spam-Status" "YES, " { 2. if header :contains "subject" ["{SPAM?}"] { ##add the curly brackets 3. change the order. So send my Mailscanner labeled spam mail directlly to the junk folder. The first one try to avoid the BAYES_ trigger the rule. The 2nd one is for MailScanner labeled spam mail. So the final script: require "fileinto"; if header :contains "subject" ["{SPAM?}"] { fileinto "Junk"; stop; } if exists "X-Spam-Status" { if header :contains "X-Spam-Status" "YES, " { fileinto "Junk"; stop; } else { } } I'll see how this works. Gao On 2017-12-15 12:38 AM, Steffen Kaiser wrote: -BEGIN PGP SIGNED MESSAGE- Hash: SHA1 On Fri, 15 Dec 2017, Bill Shirley wrote: This is what I use. Notice the comma: require "fileinto"; if header :contains "X-Spam-Status" "Yes," { fileinto "SystemFolders.SuspectedSpam"; stop; } I would even add the space: if header :contains "X-Spam-Status" "Yes, " { because the list of tests won't contain a space. - -- Steffen Kaiser -BEGIN PGP SIGNATURE- Version: GnuPG v1 iQEVAwUBWjOKB8QnQQNheMxiAQIdeAgAyL+FDM/DE5J1sRkJ6P8MuIAT3Zx8zfPO Mljn/kswG551jyso2FfGqAw6et5uHrab3Wk22NxQVK6yR4ySZstr3RF9ICeuJVvs pNFzyvBf0BivihWZLMWiVum0/B0LfpW6T7B93Yvbl/JXei2C6+uy8Mk2zFo/5jWP lpKdIxWs/SMmsjFE2QccfP7Id1aUw+tYM+9P/fzc0/kGkNRs5UCodeo/e30opdvv tJ8QpwPV/873uhk9p5m2NB/0bi4i9Rg5VMC2ui5trVlyOR2q2WpYVZ1gV2tvVpEA B3QY8vrzDf9xb1zDoVi8hMDCqynZZGQ++nSfIux/7DBDJvvYx5sYKg== =sUdv -END PGP SIGNATURE-
Re: sieve filter move wrong email to Junk folder
Well I changed the line to if header :contains "X-Spam-Status: YES" { Then I got: # sievec spam_to_junk.sieve spam_to_junk: line 3: error: the header test requires 2 positional argument(s), but 1 is/are specified. spam_to_junk: error: validation failed. sievec(root): Fatal: failed to compile sieve script 'spam_to_junk.sieve' Should it be: if header :contains "X-Spam-Status" "X-Spam-Status: YES" { ??? I need to learn some sieve grammar. Gao On 2017-12-14 10:02 AM, Richard wrote: Date: Thursday, December 14, 2017 09:47:44 -0800 From: Gao I use a sieve filter to move spam email to user's Junk folder: # cat spam_to_junk.sieve require "fileinto"; if exists "X-Spam-Status" { if header :contains "X-Spam-Status" "YES" { fileinto "Junk"; stop; } else { } } if header :contains "subject" ["SPAM?"] { fileinto "Junk"; stop; } Most time this filter works fine but occasionally it move non-spam in to Junk folder. Here is an example, this email is from dovecot mailling list and it end up in my Junk folder. Mailllog and header here. Would someone help me to figure out what went wrong here? Thanks. Gao > X-Spam-Status: No, score=-2.9 required=5.0 tests=ALL_TRUSTED,BAYES_00 Because of the way you are bounding it, I suspect that the "YES" in BAYES_00, at the end of that line, is triggering the mis-filing. Why not make: contains "X-Spam-Status" "YES" a single string: contains "X-Spam-Status: YES" that would be more precise and avoid this issue.
Re: sieve filter move wrong email to Junk folder
thank you for the advice. I'll change it. Gao On 2017-12-14 10:02 AM, Richard wrote: Date: Thursday, December 14, 2017 09:47:44 -0800 From: Gao I use a sieve filter to move spam email to user's Junk folder: # cat spam_to_junk.sieve require "fileinto"; if exists "X-Spam-Status" { if header :contains "X-Spam-Status" "YES" { fileinto "Junk"; stop; } else { } } if header :contains "subject" ["SPAM?"] { fileinto "Junk"; stop; } Most time this filter works fine but occasionally it move non-spam in to Junk folder. Here is an example, this email is from dovecot mailling list and it end up in my Junk folder. Mailllog and header here. Would someone help me to figure out what went wrong here? Thanks. Gao > X-Spam-Status: No, score=-2.9 required=5.0 tests=ALL_TRUSTED,BAYES_00 Because of the way you are bounding it, I suspect that the "YES" in BAYES_00, at the end of that line, is triggering the mis-filing. Why not make: contains "X-Spam-Status" "YES" a single string: contains "X-Spam-Status: YES" that would be more precise and avoid this issue.
sieve filter move wrong email to Junk folder
I use a sieve filter to move spam email to user's Junk folder: # cat spam_to_junk.sieve require "fileinto"; if exists "X-Spam-Status" { if header :contains "X-Spam-Status" "YES" { fileinto "Junk"; stop; } else { } } if header :contains "subject" ["SPAM?"] { fileinto "Junk"; stop; } Most time this filter works fine but occasionally it move non-spam in to Junk folder. Here is an example, this email is from dovecot mailling list and it end up in my Junk folder. Mailllog and header here. Would someone help me to figure out what went wrong here? Thanks. Gao ===Header= Dovecot Mailing List References: From: sender name Message-ID: <9100b497-7f3e-8129-9f8f-c675296e2...@rename-it.nl> Date: Thu, 14 Dec 2017 11:54:19 +0100 User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:52.0) Gecko/20100101 Thunderbird/52.5.0 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 8bit Content-Language: en-US X-SA-Exim-Connect-IP: 217.119.239.130 X-SA-Exim-Mail-From: sen...@rename-it.nl X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on sogo.guto.nl X-Spam-Level: X-Spam-Status: No, score=-2.9 required=5.0 tests=ALL_TRUSTED,BAYES_00 autolearn=ham version=3.3.2, No Subject: Re: New Dovecot service: SMTP Submission (RFC6409) X-SA-Exim-Version: 4.2.1 (built Mon, 26 Dec 2011 16:24:06 +) X-SA-Exim-Scanned: Yes (on sogo.guto.nl) X-BeenThere: dovecot@dovecot.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: Dovecot Mailing List List-Unsubscribe: <https://dovecot.org/mailman/options/dovecot>, <mailto:dovecot-requ...@dovecot.org?subject=unsubscribe> List-Archive: <https://dovecot.org/pipermail/dovecot/> List-Post: <mailto:dovecot@dovecot.org> List-Help: <mailto:dovecot-requ...@dovecot.org?subject=help> List-Subscribe: <https://dovecot.org/mailman/listinfo/dovecot>, <mailto:dovecot-requ...@dovecot.org?subject=subscribe> Errors-To: dovecot-boun...@dovecot.org Sender: "dovecot" X-mydomain-MailScanner-Information: Please contact the administrator for more information X-mydomain-MailScanner-ID: D6773400AB09.ADBA7 X-mydomain-MailScanner: Found to be clean X-mydomain-MailScanner-SpamCheck: not spam, SpamAssassin (not cached, score=-4.598, required 5, autolearn=not spam, BAYES_00 -1.90, DCC_CHECK 1.10, HEADER_FROM_DIFFERENT_DOMAINS 0.00, KAM_LAZY_DOMAIN_SECURITY 1.00, KAM_SHORT 0.00, RCVD_IN_DNSWL_MED -2.30, RCVD_IN_HOSTKARMA_W -2.50) X-mydomain-MailScanner-From: dovecot-boun...@dovecot.org =End of header=== ===Maillog= Dec 14 02:54:51 mail postfix/postscreen[19236]: CONNECT from [94.237.32.243]:40818 to [10.11.22.68]:25 Dec 14 02:54:52 mail postfix/postscreen[19236]: PASS OLD [94.237.32.243]:40818 Dec 14 02:54:52 mail postfix/smtpd[19244]: connect from wursti.dovecot.fi[94.237.32.243] Dec 14 02:54:52 mail policyd-spf[19248]: None; identity=helo; client-ip=94.237.32.243; helo=mail.dovecot.fi; envelope-from=dovecot-boun...@dovecot.org; receiver=g...@pztop.com Dec 14 02:54:52 mail policyd-spf[19248]: None; identity=mailfrom; client-ip=94.237.32.243; helo=mail.dovecot.fi; envelope-from=dovecot-boun...@dovecot.org; receiver=g...@pztop.com Dec 14 02:54:52 mail postfix/smtpd[19244]: D6773400AB09: client=wursti.dovecot.fi[94.237.32.243] Dec 14 02:54:53 mail postfix/cleanup[19249]: D6773400AB09: hold: header Received: from mail.dovecot.fi (wursti.dovecot.fi [94.237.32.243])??by mail.mydomain.com (Postfix) with ESMTP id D6773400AB09??for ; Thu, 14 Dec 2017 02:54:52 -0800 (PST) from wursti.dovecot.fi[94.237.32.243]; from= to= proto=ESMTP helo= Dec 14 02:54:53 mail postfix/cleanup[19249]: D6773400AB09: message-id=<9100b497-7f3e-8129-9f8f-c675296e2...@rename-it.nl> Dec 14 02:54:53 mail opendkim[1706]: D6773400AB09: wursti.dovecot.fi [94.237.32.243] not internal Dec 14 02:54:53 mail opendkim[1706]: D6773400AB09: not authenticated Dec 14 02:54:53 mail opendkim[1706]: D6773400AB09: no signature data Dec 14 02:54:53 mail postfix/smtpd[19244]: disconnect from wursti.dovecot.fi[94.237.32.243] ehlo=1 mail=1 rcpt=1 data=1 quit=1 commands=5 Dec 14 02:54:53 mail MailScanner[18700]: New Batch: Scanning 1 messages, 7572 bytes Dec 14 02:54:53 mail MailScanner[18700]: Virus and Content Scanning: Starting Dec 14 02:54:53 mail MailScanner[18700]: Spam Checks: Starting Dec 14 02:54:53 mail MailScanner[18700]: MailWatch: Blacklist refresh time reached Dec 14 02:54:53 mail MailScanner[18700]: MailWatch: Starting up MailWatch SQL Blacklist Dec 14 02:54:53 mail MailScanner[18700]: MailWatch: Read 0 blacklist entries Dec 14 02:54:56 mail MailScanner[18700]: Requeue: D6773400AB09.ADBA7 to 24EDE400AABD Dec 14 02:54:56 mail MailScanner[18700]: Uninfected: Delivered 1 messages Dec 14 02:54:56 mail pos
Do we really need Solr commit as cronjob?
I am testing Solr FTS on dovecot. Read online that some suggested to run cronjob commit every minute, and optimize once a day. I am using Solr 7.1.0 and I see some configurations: In /etc/default/solr.in.sh: #SOLR_OPTS="$SOLR_OPTS -Dsolr.autoSoftCommit.maxTime=3000" #SOLR_OPTS="$SOLR_OPTS -Dsolr.autoCommit.maxTime=6" Also in solrconfig.xml: ${solr.autoCommit.maxTime:15000} false ${solr.autoSoftCommit.maxTime:-1} So my question is do I still need run cronjob for commit? Do I need uncomment these lines in the solr.in.sh? Does my solrconfig.xml overwrite the setting in solr.in.sh? Thanks for help.
Re: My Solr FTS problem
Thanks a lot for the help. You are right about the JSON as the default in solr v7.1.0. I now switched it back to XML and now it works. # doveadm -v index -u fail2...@mydomain.com Inbox doveadm(fail2...@mydomain.com): Info: INBOX: Caching mails seq=1..388 388/388 Gao On 2017-11-30 02:00 PM, Christian Kivalo wrote: solr 7 and dovecot
My Solr FTS problem
I am testing the solr FTS following the guide here: http://things.m31.ch/?p=379 Now I am having problem when I try to test: # doveadm -v index -u fail2...@mydomain.com Inbox doveadm(fail2...@mydomain.com): Error: fts_solr: Invalid XML input at 1:0: not well-formed (invalid token) (near: { "responseHeader":{ "status":0, "QTime":0, "params":{ "q":"box:8864fa1d51ea1d5a7b1296a1aaf8 AND user:fa) doveadm(fail2...@mydomain.com): Error: Mailbox INBOX: Status lookup failed: Internal error occurred. Refer to server log for more information. [2017-11-30 13:05:24] My system is CentOS 7, Dovecot 3.2.4 (installed from source with solr support), Java OpenJDK-1.8.0, Solr v7.1.0. Could some one help me on this please? Here is detailed debug out put: [root@mail ~]# doveadm -vD index -u fail2...@mydomain.com Inbox Debug: Loading modules from directory: /usr/lib64/dovecot Debug: Module loaded: /usr/lib64/dovecot/lib10_quota_plugin.so Debug: Module loaded: /usr/lib64/dovecot/lib20_fts_plugin.so Debug: Module loaded: /usr/lib64/dovecot/lib21_fts_solr_plugin.so Debug: Loading modules from directory: /usr/lib64/dovecot/doveadm Debug: Skipping module doveadm_acl_plugin, because dlopen() failed: /usr/lib64/dovecot/doveadm/lib10_doveadm_acl_plugin.so: undefined symbol: acl_user_module (this is usually intentional, so just ignore this message) Debug: Skipping module doveadm_expire_plugin, because dlopen() failed: /usr/lib64/dovecot/doveadm/lib10_doveadm_expire_plugin.so: undefined symbol: expire_set_deinit (this is usually intentional, so just ignore this message) Debug: Module loaded: /usr/lib64/dovecot/doveadm/lib10_doveadm_quota_plugin.so Debug: Module loaded: /usr/lib64/dovecot/doveadm/lib10_doveadm_sieve_plugin.so Debug: Module loaded: /usr/lib64/dovecot/doveadm/lib20_doveadm_fts_plugin.so Debug: Skipping module doveadm_mail_crypt_plugin, because dlopen() failed: /usr/lib64/dovecot/doveadm/libdoveadm_mail_crypt_plugin.so: undefined symbol: mail_crypt_box_get_pvt_digests (this is usually intentional, so just ignore this message) doveadm(fail2...@mydomain.com): Debug: Added userdb setting: mail=maildir:/home/vmail/mydomain.com/fail2ban/ doveadm(fail2...@mydomain.com): Debug: Added userdb setting: plugin/quota_rule=*:bytes=0 doveadm(fail2...@mydomain.com): Debug: Effective uid=5000, gid=5000, home=/home/vmail/mydomain.com/fail2ban/ doveadm(fail2...@mydomain.com): Debug: Quota root: name=User quota backend=maildir args= doveadm(fail2...@mydomain.com): Debug: Quota rule: root=User quota mailbox=* bytes=0 messages=0 doveadm(fail2...@mydomain.com): Debug: Quota rule: root=User quota mailbox=Trash bytes=+104857600 messages=0 doveadm(fail2...@mydomain.com): Debug: Quota warning: bytes=0 (90%) messages=0 reverse=no command=quota-warning 90 fail2...@mydomain.com mydomain.com doveadm(fail2...@mydomain.com): Debug: Quota warning: bytes=0 (80%) messages=0 reverse=no command=quota-warning 80 fail2...@mydomain.com mydomain.com doveadm(fail2...@mydomain.com): Debug: Quota grace: root=User quota bytes=0 (10%) doveadm(fail2...@mydomain.com): Debug: Namespace inbox: type=private, prefix=, sep=, inbox=yes, hidden=no, list=yes, subscriptions=yes location=maildir:/home/vmail/mydomain.com/fail2ban/ doveadm(fail2...@mydomain.com): Debug: maildir++: root=/home/vmail/mydomain.com/fail2ban, index=, indexpvt=, control=, inbox=/home/vmail/mydomain.com/fail2ban, alt= doveadm(fail2...@mydomain.com): Debug: quota: quota_over_flag check: quota_over_script unset - skipping doveadm(fail2...@mydomain.com): Debug: INBOX: Mailbox opened because: index doveadm(fail2...@mydomain.com): Debug: http-client: host 127.0.0.1: Host created doveadm(fail2...@mydomain.com): Debug: http-client: peer 127.0.0.1:8983: Peer created doveadm(fail2...@mydomain.com): Debug: http-client: queue http://127.0.0.1:8983: Setting up connection to 127.0.0.1:8983 (1 requests pending) doveadm(fail2...@mydomain.com): Debug: http-client: peer 127.0.0.1:8983: Linked queue http://127.0.0.1:8983 (1 queues linked) doveadm(fail2...@mydomain.com): Debug: http-client: queue http://127.0.0.1:8983: Started new connection to 127.0.0.1:8983 doveadm(fail2...@mydomain.com): Debug: http-client: request [Req1: GET http://127.0.0.1:8983/solr/dovecot/select?fl=uid&rows=1&sort=uid+desc&q=box:8864fa1d51ea1d5a7b1296a1aaf8+AND+user:fail2...@mydomain.com]: Submitted doveadm(fail2...@mydomain.com): Debug: http-client: Waiting for 1 requests to finish doveadm(fail2...@mydomain.com): Debug: http-client: peer 127.0.0.1:8983: Creating 1 new connections to handle requests (already 0 usable, connecting to 0, closing 0) doveadm(fail2...@mydomain.com): Debug: http-client: peer 127.0.0.1:8983: Making new connection 1 of 1 doveadm(fail2...@mydomain.com): Debug: http-client: conn 127.0.0.1:8983 [0]: HTTP connection created (1 parallel connections exist) doveadm(fail2...@mydomain.com): Debug: http-client: conn 127.0.0.1:8983 [0]: Connected doveadm(
Sieve global path?
Hello, I am building a new server on CentOS 7 and the global sieve filter can not be loaded. The debug shows: Nov 9 15:23:09 mail dovecot: lmtp(11182, g...@mydomain.com): Debug: sieve: Pigeonhole version 0.4.2 initializing Nov 9 15:23:09 mail dovecot: lmtp(11182, g...@mydomain.com): Debug: sieve: include: sieve_global_dir is not set; it is currently not possible to include `:global' scripts. The pigeonhole version: # yum list dovecot-pigeonhole dovecot-pigeonhole.x86_64 1:2.2.10-8.el7 I googled and got confused on how to make sieve point to the correct global filter (which I want auto deliver spams to Junk folder). So what is the correct setting? Thanks in advance. Gao Here is my doveconf -n output: --- [root@mail ~]# doveconf -n # 2.2.10: /etc/dovecot/dovecot.conf # OS: Linux 3.10.0-693.5.2.el7.x86_64 x86_64 CentOS Linux release 7.4.1708 (Core) xfs auth_mechanisms = plain login cram-md5 first_valid_gid = 5000 first_valid_uid = 5000 last_valid_gid = 5000 last_valid_uid = 5000 listen = * mail_debug = yes mail_gid = 5000 mail_location = maildir:/home/vmail/%d/%n/:INDEX=/home/vmail/%d/%n/indexes mail_plugins = " quota" mail_uid = 5000 managesieve_notify_capability = mailto managesieve_sieve_capability = fileinto reject envelope encoded-character vacation subaddress comparator-i;ascii-numeric relational regex imap4flags copy include variables body enotify environment mailbox date ihave mbox_write_locks = fcntl namespace inbox { inbox = yes location = mailbox Drafts { auto = subscribe special_use = \Drafts } mailbox Junk { auto = subscribe special_use = \Junk } mailbox Sent { auto = subscribe special_use = \Sent } mailbox "Sent Messages" { special_use = \Sent } mailbox Trash { auto = subscribe special_use = \Trash } prefix = } passdb { args = /etc/dovecot/conf.d/dovecot-mysql.conf.ext driver = sql } plugin { quota = maildir:User quota quota_exceeded_message = ERROR:422 - Mailbox full, sorry. quota_rule = Junk:ignore quota_rule2 = Trash:storage=+100M quota_warning = storage=90%% quota-warning 90 %u %d quota_warning2 = storage=80%% quota-warning 80 %u %d sieve = ~/sieve/.dovecot.sieve sieve_dir = ~/sieve sieve_global_path = /home/vmail/sieve/globalfilter.sieve sieve_max_script_size = 1M sievedir = ~/sieve } protocols = imap pop3 lmtp sieve service auth { unix_listener /var/spool/postfix/private/auth { group = vmail mode = 0666 user = vmail } } service imap-login { inet_listener imap { port = 143 } inet_listener imaps { port = 993 ssl = yes } } service lmtp { unix_listener /var/spool/postfix/private/dovecot-lmtp { group = postfix mode = 0600 user = postfix } } service managesieve-login { inet_listener sieve { port = 4190 } process_min_avail = 0 service_count = 1 vsz_limit = 64 M } service pop3-login { inet_listener pop3 { port = 110 } inet_listener pop3s { port = 995 ssl = yes } } service quota-warning { executable = script /usr/local/bin/overquota.sh group = vmail unix_listener quota-warning { group = vmail user = vmail } user = vmail } ssl = required ssl_cert = ssl_cipher_list = EECDH+ECDSA+AESGCM:EECDH+aRSA+AESGCM:EECDH+ECDSA+SHA384:EECDH+ECDSA+SHA256:EECDH+aRSA+SHA384:EECDH+aRSA+SHA256:EECDH+aRSA+RC4:EECDH:EDH+aRSA:!aNULL:!eNULL:!LOW:!3DES:!MD5:!EXP:!PSK:!SRP:!DSS:!RC4 ssl_key =
[Dovecot] courier to dovecot
Hi, All, I am new here and I need your advises. Here is my story: I have a mail server like this: - CentOS 5 32 bit (LAMP) - Postfix 2.3 - Courier - MailScanner Courier use maildir to save emails in /home/vmail// / Now I want to build a new system on CentOS 6.4 64bit with postfix, dovecot and migrate all user accounts and their emails. I already installed CentOS 6.4, postfix and mysql. Also just installed Dovecot v2.2.4 from the RPM. Now I am looking into how to Is there a good instruction on how to do this kind of migration? I still prefer using the maildir system. If I just copy all users email from old server to new dovecot user maildir, will dovecot see these mails (and sub-folders) ? Do I need do anything extra? Thanks in advance. Gao -- __ _|==|_ ('')__/ --(`^^') (`^'^'`) `=='
Re: [Dovecot] Dovecot lock problem
> >What is the process doing? Check with "strace -p "? > >How large is the user's mailbox? We just have another user reporting problem. There is no lock on /var/spool/mail/ file. The strace has following: # strace -p 8117 Process 8117 attached - interrupt to quit fcntl64(8, F_SETLKW64, {type=F_WRLCK, whence=SEEK_SET, start=0, len=0}, 0xff9f4db4) = ? ERESTARTSYS (To be restarted) --- SIGALRM (Alarm clock) @ 0 (0) --- sigreturn() = ? (mask now []) time(NULL) = 1257362101 alarm(5)= 0 time(NULL) = 1257362101 fcntl64(8, F_SETLKW64, {type=F_WRLCK, whence=SEEK_SET, start=0, len=0}, 0xff9f4db4) = ? ERESTARTSYS (To be restarted) --- SIGALRM (Alarm clock) @ 0 (0) --- sigreturn() = ? (mask now []) time(NULL) = 1257362106 alarm(5)= 0 time(NULL) = 1257362106 fcntl64(8, F_SETLKW64, {type=F_WRLCK, whence=SEEK_SET, start=0, len=0}, 0xff9f4db4) = ? ERESTARTSYS (To be restarted) --- SIGALRM (Alarm clock) @ 0 (0) --- sigreturn() = ? (mask now []) time(NULL) = 1257362111 alarm(5)= 0 time(NULL) = 1257362111 fcntl64(8, F_SETLKW64, {type=F_WRLCK, whence=SEEK_SET, start=0, len=0}, 0xff9f4db4) = ? ERESTARTSYS (To be restarted) --- SIGALRM (Alarm clock) @ 0 (0) --- sigreturn() = ? (mask now []) time(NULL) = 1257362116 alarm(5)= 0 time(NULL) = 1257362116 fcntl64(8, F_SETLKW64, {type=F_WRLCK, whence=SEEK_SET, start=0, len=0}, 0xff9f4db4) = ? ERESTARTSYS (To be restarted) --- SIGALRM (Alarm clock) @ 0 (0) --- sigreturn() = ? (mask now []) time(NULL) = 1257362121 alarm(5)= 0 time(NULL) = 1257362121 fcntl64(8, F_SETLKW64, {type=F_WRLCK, whence=SEEK_SET, start=0, len=0}, 0xff9f4db4) = ? ERESTARTSYS (To be restarted) --- SIGALRM (Alarm clock) @ 0 (0) --- sigreturn() = ? (mask now []) time(NULL) = 1257362126 alarm(5)= 0 time(NULL) = 1257362126 fcntl64(8, F_SETLKW64, {type=F_WRLCK, whence=SEEK_SET, start=0, len=0}, 0xff9f4db4) = ? ERESTARTSYS (To be restarted) --- SIGALRM (Alarm clock) @ 0 (0) --- sigreturn() = ? (mask now []) time(NULL) = 1257362131 alarm(5)= 0 time(NULL) = 1257362131 fcntl64(8, F_SETLKW64, {type=F_WRLCK, whence=SEEK_SET, start=0, len=0}, 0xff9f4db4) = ? ERESTARTSYS (To be restarted) --- SIGALRM (Alarm clock) @ 0 (0) --- sigreturn() = ? (mask now []) time(NULL) = 1257362136 alarm(5)= 0 time(NULL) = 1257362136 fcntl64(8, F_SETLKW64, {type=F_WRLCK, whence=SEEK_SET, start=0, len=0},
Re: [Dovecot] Dovecot lock problem
On Friday 16 October 2009 11:04:33 Timo Sirainen wrote: > On Fri, 2009-10-16 at 10:46 -0700, Simon Gao wrote: > > On Tue, 2009-10-13 at 11:37 -0700, Simon Gao wrote: > > > We have a few users experiencing locking problem. When starting > > > Thunderbird, there is no new emails in Inbox. Dovecot createa a lock > > > file /var/spool/mail/.lock. It never completes openning Inbox. If > > > closing the mail client, the open imap session does not get closed, nor > > > the lock file get deleted. > > > > > >What is the process doing? Check with "strace -p "? > > >How large is the user's mailbox? > > > > The size of inbox varies. Some is large, some are only a few hundred KB. > > If the mailbox is large, it may take time to re-generate index and put > > lock on inbox file until it's done. However, it should not for smaller > > mailbox file. > > Are you using pop3? Do you have pop3_lock_session=yes? Other than that I > can't think of anything that could keep the lock file for a long time. > So strace would be helpful. No. All affected users use imap. This occurred after hard reboot of the imap server.
[Dovecot] Dovecot lock problem
On Tue, 2009-10-13 at 11:37 -0700, Simon Gao wrote: > We have a few users experiencing locking problem. When starting > Thunderbird, there is no new emails in Inbox. Dovecot createa a lock file > /var/spool/mail/.lock. It never completes openning Inbox. If closing > the mail client, the open imap session does not get closed, nor the lock > file get deleted. >What is the process doing? Check with "strace -p "? >How large is the user's mailbox? The size of inbox varies. Some is large, some are only a few hundred KB. If the mailbox is large, it may take time to re-generate index and put lock on inbox file until it's done. However, it should not for smaller mailbox file. Deleting index files did not help. The workaround is rename the mailbox file and copy it to ~/mail folder and let MTA re-create the mailbox. Then let mail client subscribes to the new temp mailbox. I will try strace next time. > Here are the errors in log: > > dovecot: Oct 13 11:18:35 Warning: IMAP(user1): Our dotlock file > /var/mail/user1.lock was deleted (kept it 88 secs) > dovecot: Oct 13 11:18:35 Error: IMAP(user1): file_dotlock_delete() > failed with mbox file /var/mail/user1: No such file or directory >I'd guess this is a huge mbox (or your disk I/O is very slow) and >Dovecot takes a long time trying to read it. mbox_very_dirty_syncs=yes >may be helpful. It occurred to mailbox large and small. It should not take very long to read a few hundred KB file.
[Dovecot] Dovecot lock problem
Hi, We have a few users experiencing locking problem. When starting Thunderbird, there is no new emails in Inbox. Dovecot createa a lock file /var/spool/mail/.lock. It never completes openning Inbox. If closing the mail client, the open imap session does not get closed, nor the lock file get deleted. Here are the errors in log: dovecot: Oct 13 11:18:35 Warning: IMAP(user1): Our dotlock file /var/mail/user1.lock was deleted (kept it 88 secs) dovecot: Oct 13 11:18:35 Error: IMAP(user1): file_dotlock_delete() failed with mbox file /var/mail/user1: No such file or directory We are running Dovecot 1.1.2. Any pointer to resolve this problem is appreciated. Simon
[Dovecot] How to restore old mailbox
Hi, I have issue with one user mailbox in /var/spool/mail. I have to restore older version of the same mailbox file over the newer one. What's the best way to do this? Simon
[Dovecot] Possible to run two dovecot accessing same directory?
Hi, Just wonder if it's possible to run two dovecot servers on two different machines, but serve out of the same directories. I would like to test second dovecot server before switching from first one to second one. Any suggestions? Simon
[Dovecot] Mbox vs maildir
> The upcoming dbox and cydir formats of course beat everything in > performance :) Is dbox in Dovecot 1.1 tree now? Is it the redesigned dbox? How close is dbox ready for general use? I am interested in testing it out. Where can I find instruction on how to configure dovecot to use dbox? Simon