Navigation

    Kopano
    • Register
    • Login
    • Search
    • Categories
    • Get Official Kopano Support
    • Recent
    Statement regarding the closure of the Kopano community forum and the end of the community edition

    multi-domain setup with kopano and dovecot

    Kopano Groupware Core
    2
    2
    230
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • alex1452
      alex1452 last edited by

      Hi all,
      I am hosting emails for multiple domains. I would like to switch for domain1 to Kopano but domain2 needs to remain with dovecot. MTA is postfix on Debian 10. Unfortunately, both domains use a shared IP so need to be managed by the same postfix instance.

      I have a test-setup that delivers to Kopano but it does not deliver to dovecot (dovecot-lda). Does anyone know how I can configure postfix to deliver all mail for
      domain1 to /usr/sbin/kopano-dagent and all mail to
      domain2 to /usr/sbin/dovecot-lda?

      Here is my main.cf (currently only delivery to kopano, need delivery to dovecot for domain2)

      # See /usr/share/postfix/main.cf.dist for a commented, more complete version
      
      
      # Debian specific:  Specifying a file name will cause the first
      # line of that file to be used as the name.  The Debian default
      # is /etc/mailname.
      myorigin = domain.com
      
      smtpd_banner = $myhostname ESMTP $mail_name (Debian/GNU)
      biff = no
      
      # appending .domain is the MUA's job.
      append_dot_mydomain = no
      
      # Uncomment the next line to generate "delayed mail" warnings
      #delay_warning_time = 4h
      
      readme_directory = no
      
      # See http://www.postfix.org/COMPATIBILITY_README.html -- default to 2 on
      # fresh installs.
      compatibility_level = 2
      
      # TLS parameters
      smtpd_tls_cert_file = /etc/ssl/private/server.crt
      smtpd_tls_key_file = /etc/ssl/private/server.key
      smtpd_use_tls=yes
      smtpd_tls_session_cache_database = btree:${data_directory}/smtpd_scache
      smtp_tls_session_cache_database = btree:${data_directory}/smtp_scache
      
      # See /usr/share/doc/postfix/TLS_README.gz in the postfix-doc package for
      # information on enabling SSL in the smtp client.
      
      smtpd_relay_restrictions = permit_mynetworks permit_sasl_authenticated defer_unauth_destination
      myhostname = $myorigin
      alias_maps = hash:/etc/aliases
      alias_database = hash:/etc/aliases
      mydestination = $myhostname, intranet, localhost.localdomain, localhost
      #mydestination =
      
      mynetworks = 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128
      mailbox_size_limit = 0
      recipient_delimiter = +
      inet_interfaces = all
      inet_protocols = all
      
      # Virtual Mailbox Domain Settings
      virtual_mailbox_domains = proxy:mysql:/etc/postfix/mysql/virtual-mailbox-domains.cf
      virtual_mailbox_maps = proxy:mysql:/etc/postfix/mysql/virtual-mailbox-maps.cf
      virtual_alias_maps = proxy:mysql:/etc/postfix/mysql/virtual-alias-maps.cf,proxy:mysql:/etc/postfix/mysql/virtual-alias-maps-regex.cf
      virtual_mailbox_limit = 51200000
      virtual_minimum_uid = 5000
      virtual_uid_maps = static:5000
      virtual_gid_maps = static:5000
      virtual_mailbox_base = /home/vmail
      
      
      smtputf8_enable = no
      virtual_transport = lmtp:127.0.0.1:2003
      smtpd_tls_security_level = may
      smtpd_tls_auth_only = yes
      smtpd_tls_received_header = yes
      smtpd_discard_ehlo_keywords = silent-discard, dsn
      message_size_limit = 52428800
      smtp_tls_CAfile = /etc/ssl/certs/ca-certificates.crt
      disable_vrfy_command = yes
      
      # GMAiL as smarthost
      #smtp_use_tls = yes
      #relayhost = [smtp.gmail.com]:587
      #smtp_sasl_password_maps = hash:/etc/postfix/sasl/gmail_passwd
      
      smtp_tls_note_starttls_offer = yes
      smtp_sasl_auth_enable = yes
      smtpd_tls_mandatory_protocols=!SSLv2,!SSLv3
      smtpd_tls_exclude_ciphers = aNULL, eNULL, EXPORT, DES, RC4, MD5, PSK, aECDH, EDH-DSS-DES-CBC3-SHA, EDH-RSA-DES-CDC3-SHA, KRB5-DE5, CBC3-SHA
      smtp_sasl_auth_enable = yes
      smtp_sasl_security_options = noanonymous
      smtp_tls_security_level = encrypt
      #receive_override_options = no_address_mappings
      maillog_file = /var/log/postfix.log
      debug_peer_level = 2
      #debug_peer_list = zoho.com 
      debug_peer_list = gmx.net
      
      #
      # Postfix master process configuration file.  For details on the format
      # of the file, see the master(5) manual page (command: "man 5 master" or
      # on-line: http://www.postfix.org/master.5.html).
      #
      # Do not forget to execute "postfix reload" after editing this file.
      #
      # ==========================================================================
      # service type  private unpriv  chroot  wakeup  maxproc command + args
      #               (yes)   (yes)   (no)    (never) (100)
      # ==========================================================================
      smtp      inet  n       -       y       -       -       smtpd
      #smtp      inet  n       -       y       -       1       postscreen
      #smtpd     pass  -       -       y       -       -       smtpd
      #dnsblog   unix  -       -       y       -       0       dnsblog
      #tlsproxy  unix  -       -       y       -       0       tlsproxy
      #submission inet n       -       y       -       -       smtpd
      #  -o syslog_name=postfix/submission
      #  -o smtpd_tls_security_level=encrypt
      #  -o smtpd_sasl_auth_enable=yes
      #  -o smtpd_tls_auth_only=yes
      #  -o smtpd_reject_unlisted_recipient=no
      #  -o smtpd_client_restrictions=$mua_client_restrictions
      #  -o smtpd_helo_restrictions=$mua_helo_restrictions
      #  -o smtpd_sender_restrictions=$mua_sender_restrictions
      #  -o smtpd_recipient_restrictions=
      #  -o smtpd_relay_restrictions=permit_sasl_authenticated,reject
      #  -o milter_macro_daemon_name=ORIGINATING
      #smtps     inet  n       -       y       -       -       smtpd
      #  -o syslog_name=postfix/smtps
      #  -o smtpd_tls_wrappermode=yes
      #  -o smtpd_sasl_auth_enable=yes
      #  -o smtpd_reject_unlisted_recipient=no
      #  -o smtpd_client_restrictions=$mua_client_restrictions
      #  -o smtpd_helo_restrictions=$mua_helo_restrictions
      #  -o smtpd_sender_restrictions=$mua_sender_restrictions
      #  -o smtpd_recipient_restrictions=
      #  -o smtpd_relay_restrictions=permit_sasl_authenticated,reject
      #  -o milter_macro_daemon_name=ORIGINATING
      #628       inet  n       -       y       -       -       qmqpd
      pickup    unix  n       -       y       60      1       pickup
      cleanup   unix  n       -       y       -       0       cleanup
      qmgr      unix  n       -       n       300     1       qmgr
      #qmgr     unix  n       -       n       300     1       oqmgr
      tlsmgr    unix  -       -       y       1000?   1       tlsmgr
      rewrite   unix  -       -       y       -       -       trivial-rewrite
      bounce    unix  -       -       y       -       0       bounce
      defer     unix  -       -       y       -       0       bounce
      trace     unix  -       -       y       -       0       bounce
      verify    unix  -       -       y       -       1       verify
      flush     unix  n       -       y       1000?   0       flush
      proxymap  unix  -       -       n       -       -       proxymap
      proxywrite unix -       -       n       -       1       proxymap
      smtp      unix  -       -       y       -       -       smtp
      relay     unix  -       -       y       -       -       smtp
              -o syslog_name=postfix/$service_name
      #       -o smtp_helo_timeout=5 -o smtp_connect_timeout=5
      showq     unix  n       -       y       -       -       showq
      error     unix  -       -       y       -       -       error
      retry     unix  -       -       y       -       -       error
      discard   unix  -       -       y       -       -       discard
      local     unix  -       n       n       -       -       local
      virtual   unix  -       n       n       -       -       virtual
      lmtp      unix  -       -       y       -       -       lmtp
      anvil     unix  -       -       y       -       1       anvil
      scache    unix  -       -       y       -       1       scache
      postlog   unix-dgram n  -       n       -       1       postlogd
      #
      # ====================================================================
      # Interfaces to non-Postfix software. Be sure to examine the manual
      # pages of the non-Postfix software to find out what options it wants.
      #
      # Many of the following services use the Postfix pipe(8) delivery
      # agent.  See the pipe(8) man page for information about ${recipient}
      # and other message envelope options.
      # ====================================================================
      #
      # maildrop. See the Postfix MAILDROP_README file for details.
      # Also specify in main.cf: maildrop_destination_recipient_limit=1
      #
      maildrop  unix  -       n       n       -       -       pipe
        flags=DRhu user=vmail argv=/usr/bin/maildrop -d ${recipient}
      #
      # ====================================================================
      #
      # Recent Cyrus versions can use the existing "lmtp" master.cf entry.
      #
      # Specify in cyrus.conf:
      #   lmtp    cmd="lmtpd -a" listen="localhost:lmtp" proto=tcp4
      #
      # Specify in main.cf one or more of the following:
      #  mailbox_transport = lmtp:inet:localhost
      #  virtual_transport = lmtp:inet:localhost
      #
      # ====================================================================
      #
      # Cyrus 2.1.5 (Amos Gouaux)
      # Also specify in main.cf: cyrus_destination_recipient_limit=1
      #
      #cyrus     unix  -       n       n       -       -       pipe
      #  user=cyrus argv=/cyrus/bin/deliver -e -r ${sender} -m ${extension} ${user}
      #
      # ====================================================================
      # Old example of delivery via Cyrus.
      #
      #old-cyrus unix  -       n       n       -       -       pipe
      #  flags=R user=cyrus argv=/cyrus/bin/deliver -e -m ${extension} ${user}
      #
      # ====================================================================
      #
      # See the Postfix UUCP_README file for configuration details.
      #
      uucp      unix  -       n       n       -       -       pipe
        flags=Fqhu user=uucp argv=uux -r -n -z -a$sender - $nexthop!rmail ($recipient)
      #
      # Other external delivery methods.
      #
      ifmail    unix  -       n       n       -       -       pipe
        flags=F user=ftn argv=/usr/lib/ifmail/ifmail -r $nexthop ($recipient)
      bsmtp     unix  -       n       n       -       -       pipe
        flags=Fq. user=bsmtp argv=/usr/lib/bsmtp/bsmtp -t$nexthop -f$sender $recipient
      scalemail-backend unix	-	n	n	-	2	pipe
        flags=R user=scalemail argv=/usr/lib/scalemail/bin/scalemail-store ${nexthop} ${user} ${extension}
      mailman   unix  -       n       n       -       -       pipe
        flags=FR user=list argv=/usr/lib/mailman/bin/postfix-to-mailman.py
        ${nexthop} ${user}
      
      1 Reply Last reply Reply Quote 0
      • gentrix
        gentrix last edited by

        You should be able to use postfix transport maps to achieve this.

        1 Reply Last reply Reply Quote 0
        • First post
          Last post