Re: JMAP support in Dovecot

2020-01-22 Thread Mike Gao
Hi,

Any news for jmap Support in Dovecot?

Thanks,
Mike


Re: Package repository now available

2017-12-29 Thread Gao




./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

2017-12-28 Thread Gao

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

2017-12-17 Thread Gao
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

2017-12-15 Thread Gao

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

2017-12-14 Thread Gao

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

2017-12-14 Thread Gao

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

2017-12-14 Thread 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



===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?

2017-11-30 Thread Gao
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

2017-11-30 Thread Gao

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

2017-11-30 Thread Gao

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?

2017-11-09 Thread Gao

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

2013-07-15 Thread J Gao

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

2009-11-04 Thread Simon Gao
> >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

2009-10-16 Thread Simon Gao
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

2009-10-16 Thread Simon Gao
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

2009-10-13 Thread Simon Gao

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

2007-12-21 Thread Simon Gao
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?

2007-07-24 Thread Simon Gao

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

2007-07-01 Thread Simon Gao
> 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