<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
  </head>
  <body text="#000000" bgcolor="#FFFFFF">
    <p><br>
    </p>
    <br>
    <div class="moz-cite-prefix">On 07.03.2018 22:07, Odhiambo
      Washington wrote:<br>
    </div>
    <blockquote type="cite"
cite="mid:CAAdA2WMuyreBL9Rex9PWdkALgVj_WTb2t2sTbSD-oyvOuiWeWw@mail.gmail.com">
      <div dir="ltr">I am a little confused here.
        <div><br>
        </div>
        <div>I have been running 2.2.34 which I installed in
          /opt/dovecot2.2</div>
        <div>I installed 2.3.0.1 to /opt/dovecot23</div>
        <div><br>
        </div>
        <div>I then used config files from /opt/dovecot2.2/etc/dovecot
          to /opt/dovecot2.3/etc/dovecot and all I did was sed -i.BAK
          's/dovecot2.2/dovecot2.3/g'. Dovecot started and was running
          file.</div>
        <div><br>
        </div>
        <div>Next, I manually crafted config files for 2.3.0.1 based on
          the example config files provided which diff-ing those with
          what I had for 2.2.34. I doub't if I missed something crucial
          during the process.</div>
        <div>
          <div><br>
          </div>
          <div>1. I realized that I cannot start 2.3.0.1 when I enable
            submission, since my Exim MTA is already using that port.
            This persists even if I tell the submission protocol to use
            a different port than 587. I tested 2587, but it would
            appear that 587 is hard-coded!</div>
          <div><br>
          </div>
          <div>2. I realize that "unix_listener auth-client" service
            ceased to exist!</div>
          <div><br>
          </div>
          <div>3. <b>I realized that while 2.2.34 runs
              with default_pass_scheme = MD5-CRYPT, 2.3.0.1 would not
              run with it.</b></div>
          <div><b><br>
            </b></div>
          <div>4. I have run dovecot -n from my 2.2.x installation and
            2.3.x installation and here is the diff from the two files.</div>
          <div><br>
          </div>
          <div>I am confused why authentication is failing with
            dovecot-2.3.0.1 when it uses 2.3.x config files using
            MD5-CRYPT scheme while it is succeeding with dovecot-2.2.34
            using the same.</div>
          <div><b>Mar 07 22:30:22 auth: Info: sql(<a
                href="mailto:user.name@domain.name"
                moz-do-not-send="true">user.name@domain.name</a>,192.168.55.97,<4CETl9dmscvAqDdh>):
              Requested DIGEST-MD5 scheme, but we have only MD5-CRYPT</b><br>
          </div>
          <div><br>
          </div>
          <div>Maybe the problem is elsewhere??? I need a 3rd eye to
            help me.</div>
          <div><br>
          </div>
          <div>For now</div>
          <div><br>
          </div>
          <div>
            <div>root@gw:~wash/public_html # sdiff dovecot-2.2.txt
              dovecot-2.3.txt | less</div>
            <div># 2.2.34 (874deae):
              /opt/dovecot2.2/etc/dovecot/dovecot.conf  | # 2.3.0.1
              (ffd8a29): /opt/dovecot2.3/etc/dovecot/dovecot.conf</div>
            <div># OS: FreeBSD 9.3-STABLE i386  ufs                     
                      # OS: FreeBSD 9.3-STABLE i386  ufs</div>
            <div># Hostname: localhost                                 
                     <</div>
            <div>auth_cache_size = 20 M                                 
                      auth_cache_size = 20 M</div>
            <div>auth_master_user_separator = *                         
                      auth_master_user_separator = *</div>
            <div>auth_mechanisms = plain login digest-md5               
                      auth_mechanisms = plain login digest-md5</div>
            <div>auth_socket_path = /var/run/dovecot/auth-userdb       
                       auth_socket_path = /var/run/dovecot/auth-userdb</div>
            <div>base_dir = /var/run/dovecot/                           
                      base_dir = /var/run/dovecot/</div>
            <div>default_login_user = dovecot                           
                      default_login_user = dovecot</div>
            <div>disable_plaintext_auth = no                           
                       disable_plaintext_auth = no</div>
            <div>first_valid_gid = 0                                   
                       first_valid_gid = 0</div>
            <div>first_valid_uid = 26                                   
                      first_valid_uid = 26</div>
            <div>hostname = gw                                         
                     hostname = gw</div>
            <div>info_log_path = /var/log/dovecot.log                   
                      info_log_path = /var/log/dovecot.log</div>
            <div>mail_location =
              maildir:/var/spool/virtual/%d/%n/Maildir:INDE 
               mail_location =
              maildir:/var/spool/virtual/%d/%n/Maildir:INDE</div>
            <div>mail_plugins = " quota"                               
                     <</div>
            <div>namespace inbox {                                     
                       namespace inbox {</div>
            <div>  inbox = yes                                         
                         inbox = yes</div>
            <div>  location =                                           
                        location =</div>
            <div>  mailbox Drafts {                                     
                        mailbox Drafts {</div>
            <div>    special_use = \Drafts                             
                           special_use = \Drafts</div>
            <div>  }                                                   
                         }</div>
            <div>  mailbox Junk {                                       
                        mailbox Junk {</div>
            <div>    special_use = \Junk                               
                           special_use = \Junk</div>
            <div>  }                                                   
                         }</div>
            <div>  mailbox Sent {                                       
                        mailbox Sent {</div>
            <div>    special_use = \Sent                               
                           special_use = \Sent</div>
            <div>  }                                                   
                         }</div>
            <div>  mailbox "Sent Messages" {                           
                         mailbox "Sent Messages" {</div>
            <div>    special_use = \Sent                               
                           special_use = \Sent</div>
            <div>  }                                                   
                         }</div>
            <div>  mailbox Trash {                                     
                         mailbox Trash {</div>
            <div>    special_use = \Trash                               
                          special_use = \Trash</div>
            <div>  }                                                   
                         }</div>
            <div>  prefix =                                             
                        prefix =</div>
            <div>}                                                     
                       }</div>
            <div>passdb {                                               
                      passdb {</div>
            <div>  args =
              /opt/dovecot2.2/etc/dovecot/passwd.master_users.ext  | 
               args =
              /opt/dovecot2.3/etc/dovecot/passwd.master_users.ext</div>
            <div>  driver = passwd-file                                 
                        driver = passwd-file</div>
            <div>  master = yes                                         
                        master = yes</div>
            <div>  pass = yes                                           
                        pass = yes</div>
            <div>}                                                     
                       }</div>
            <div>passdb {                                               
                      passdb {</div>
            <div>  args =
              /opt/dovecot2.2/etc/dovecot/dovecot-sql.conf.ext     | 
               args = /opt/dovecot2.3/etc/dovecot/dovecot-sql.conf.ext</div>
            <div>  driver = sql                                         
                        driver = sql</div>
            <div>}                                                     
                       }</div>
            <div>plugin {                                               
                      plugin {</div>
            <div>  mail_log_fields = uid box msgid size                 
                        mail_log_fields = uid box msgid size</div>
            <div>  quota_rule = *:storage=1G                           
                         quota_rule = *:storage=1G</div>
            <div>  quota_rule2 = Trash:storage=+100M                   
                         quota_rule2 = Trash:storage=+100M</div>
            <div>  quota_warning = storage=95%% quota-warning 95 %u     
                        quota_warning = storage=95%% quota-warning 95 %u</div>
            <div>  quota_warning2 = storage=80%% quota-warning 80 %u   
                         quota_warning2 = storage=80%% quota-warning 80
              %u</div>
            <div>  quota_warning3 = -storage=100%% quota-warning below
              %u          quota_warning3 = -storage=100%% quota-warning
              below %u</div>
            <div>}                                                     
                       }</div>
            <div>service auth {                                         
                      service auth {<br>
            </div>
            <div>  unix_listener auth-client {                         
                     <</div>
            <div>    mode = 0600                                       
                        <</div>
            <div>    user = mailnull                                   
                          <</div>
            <div>  }                                                   
                                  <</div>
            <div>  unix_listener auth-userdb {                         
                         unix_listener auth-userdb {</div>
            <div>    group = mailnull                                   
                          group = mailnull</div>
            <div>    user = mailnull                                   
                           user = mailnull</div>
            <div>  }                                                   
                         }</div>
            <div>}                                                     
                       }</div>
            <div>service quota-warning {                               
                       service quota-warning {</div>
            <div>  executable = script
              /opt/dovecot2.2/scripts/quota-warning.s |   executable =
              script /opt/dovecot2.3/scripts/quota-warning.s</div>
            <div>  unix_listener quota-warning {                       
                         unix_listener quota-warning {</div>
            <div>    user = mailnull                                   
                           user = mailnull</div>
            <div>  }                                                   
                         }</div>
            <div>  user = dovecot                                       
                        user = dovecot</div>
            <div>}                                                     
                       }</div>
            <div>ssl_cert = </usr/local/etc/letsencrypt/live/<a
                href="http://gw.crownkenya.com" moz-do-not-send="true">gw.crownkenya.com</a> 
               ssl_cert = </usr/local/etc/letsencrypt/live/<a
                href="http://gw.crownkenya.com" moz-do-not-send="true">gw.crownkenya.com</a></div>
            <div>ssl_key =  # hidden, use -P to show it                 
                      ssl_key =  # hidden, use -P to show it</div>
            <div>                                                       
                    > submission_max_mail_size = 4 G</div>
            <div>userdb {                                               
                      userdb {</div>
            <div>  args =
              /opt/dovecot2.2/etc/dovecot/dovecot-sql.conf.ext     | 
               args = /opt/dovecot2.3/etc/dovecot/dovecot-sql.conf.ext</div>
            <div>  driver = sql                                         
                        driver = sql</div>
            <div>}                                                     
                       }</div>
            <div>protocol lda {                                         
                    <</div>
            <div>  mail_plugins = quota                                 
                    <</div>
            <div>}                                                     
                     <</div>
            <div>protocol imap {                                       
                       protocol imap {</div>
            <div>  mail_max_userip_connections = 5                     
                         mail_max_userip_connections = 5</div>
            <div>  mail_plugins = " quota imap_quota"                   
                    <</div>
            <div>}                                                     
                       }</div>
            <div>protocol pop3 {                                       
                     | protocol lda {</div>
            <div>  mail_max_userip_connections = 5                     
                     |   mail_plugins = quota</div>
            <div>}                                                     
                       }</div>
          </div>
          <div><br>
          </div>
          <div><br>
          </div>
          <div>Maybe I am just suffering brainlock and need to debug
            auth further, but I have see a question about this auth
            issue already from another poster, and it's not been
            answered by anyone.</div>
          <div><br>
          </div>
          <div><br>
          </div>
          <div><br>
          </div>
          <br>
        </div>
      </div>
    </blockquote>
    <br>
    Can you send 'doveconf -n' for the 2.3.0.1 instance?<br>
    <br>
    Also. You cannot use hashed passwords with DIGEST-MD5. MD5-CRYPT is
    hashed password scheme.<br>
    <br>
    To change dovecot's submission service port, use<br>
    <br>
    service submission-login {<br>
       inet_listener {<br>
          port = 2587<br>
       }<br>
    }<br>
    <br>
    "auth-client" cannot be missing, since you can specify arbitrary
    listeners in dovecot, so
    <a class="moz-txt-link-freetext" href="https://wiki.dovecot.org/HowTo/EximAndDovecotSASL">https://wiki.dovecot.org/HowTo/EximAndDovecotSASL</a> is still quite
    valid. <br>
    <br>
    Aki<br>
  </body>
</html>