Loading ...
Sorry, an error occurred while loading the content.

Virtual Alias Translation to User Mailbox Not Passed to Dovecot LDA

Expand Messages
  • Marc Veary
    Hi, I have a problem with my installation of postfix and virtual aliases (mysql). When an email is sent to a virtual alias, the smtp subsystem translates the
    Message 1 of 13 , Mar 1, 2011
    • 0 Attachment
      Hi,

      I have a problem with my installation of postfix and virtual aliases (mysql).  When an email is sent to a virtual alias, the smtp subsystem translates the alias to the correct real mailbox.  However, when the dovecot/pipe subsystem is called, the recipient is the alias and NOT the real mailbox.  For instance, abuse@... is resolved to myuser@..., but the recipient that the dovecot LDA receives is abuse@... rather than myuser@..., and since dovecot's SQL does query users from the 'alias' table only the 'users' table, thus the message is bounced.

      I have tried all that I can think of to resolve this, but to no avail...

      Any help gratefully received.

      Kind regards,
      --
      Marc

      Log Output:


      Mar  1 08:47:39 ims1 postfix/smtpd[9561]: dict_proxy_lookup: table=mysql:/etc/postfix/mysql_virtual_alias_maps.cf flags=lock|fold_fix key=abuse@... -> status=0 result=marc@...
      Mar  1 08:47:39 ims1 postfix/smtpd[9561]: maps_find: virtual_alias_maps: proxy:mysql:/etc/postfix/mysql_virtual_alias_maps.cf(0,lock|
      fold_fix): abuse@... = marc@...
      Mar  1 08:47:39 ims1 postfix/smtpd[9561]: mail_addr_find: abuse@... -> marc@...
      Mar  1 08:47:39 ims1 postfix/smtpd[9561]: smtpd_check_rewrite: trying: permit_inet_interfaces

      ...

      Mar  1 08:47:39 ims1 postfix/pipe[9566]: deliver_request_get: file active/1A0F639AF0
      Mar  1 08:47:39 ims1 postfix/pipe[9566]: deliver_message: from <someone@...>
      Mar  1 08:47:39 ims1 postfix/pipe[9566]: dict_eval: const  1000s
      Mar  1 08:47:39 ims1 postfix/pipe[9566]: get_service_params: time_limit 1000
      Mar  1 08:47:39 ims1 postfix/pipe[9566]: get_service_attr: uid 5000, gid 5000, flags 196632, size 0
      Mar  1 08:47:39 ims1 postfix/pipe[9566]: dict_eval: const  /usr/lib/dovecot/deliver
      Mar  1 08:47:39 ims1 postfix/pipe[9566]: dict_eval: const  -f
      Mar  1 08:47:39 ims1 postfix/pipe[9566]: dict_eval: expand ${sender} -> someone@...
      Mar  1 08:47:39 ims1 postfix/pipe[9566]: dict_eval: const  -d
      Mar  1 08:47:39 ims1 postfix/pipe[9566]: dict_eval: expand ${user}@${nexthop} -> abuse@...
      Mar  1 08:47:39 ims1 postfix/pipe[9566]: connect to subsystem private/bounce
    • Noel Jones
      ... You don t give us much to go on here... For further help, please see: http://www.postfix.org/DEBUG_README.html#mail Do NOT post debug output unless
      Message 2 of 13 , Mar 1, 2011
      • 0 Attachment
        On 3/1/2011 7:29 AM, Marc Veary wrote:
        > Any help gratefully received.

        You don't give us much to go on here...

        For further help, please see:
        http://www.postfix.org/DEBUG_README.html#mail

        Do NOT post debug output unless specifically asked for it.
        Do post your "postconf -n" and modifications to master.cf.
        Do post unmodified non-debug log entries demonstrating the
        problem. Usernames may be changed, but in a consistent way.
        Use example.com/example.net/etc. for redacted domain names,
        don't use real domains that aren't yours.




        -- Noel Jones
      • marc@veary.org.uk
        Hi, I have a problem with my installation of postfix and virtual aliases (mysql). When an email is sent to a virtual alias, the smtp subsystem translates the
        Message 3 of 13 , Mar 1, 2011
        • 0 Attachment
          Hi,

          I have a problem with my installation of postfix and virtual aliases
          (mysql). When an email is sent to a virtual alias, the smtp subsystem
          translates the alias to the correct real mailbox. However, when the
          dovecot/pipe subsystem is called, the recipient is the alias and NOT the
          real mailbox. For instance, abuse@... is resolved to
          myuser@..., but the recipient that the dovecot LDA receives is
          abuse@... rather than myuser@..., and since dovecot's
          SQL does query users from the 'alias' table only the 'users' table, thus
          the message is bounced.

          I have tried all that I can think of to resolve this, but to no
          avail...

          Any help gratefully received.

          Kind regards,
          --
          Marc

          Log Output:

          Mar 1 08:47:39 ims1 postfix/smtpd[9561]: dict_proxy_lookup:
          table=mysql:/etc/postfix/mysql_virtual_alias_maps.cf flags=lock|fold_fix
          key=abuse@... -> status=0 result=marc@...
          Mar 1 08:47:39 ims1 postfix/smtpd[9561]: maps_find:
          virtual_alias_maps:
          proxy:mysql:/etc/postfix/mysql_virtual_alias_maps.cf(0,lock|fold_fix):
          abuse@... = marc@...
          Mar 1 08:47:39 ims1 postfix/smtpd[9561]: mail_addr_find:
          abuse@... -> marc@...
          Mar 1 08:47:39 ims1 postfix/smtpd[9561]: smtpd_check_rewrite: trying:
          permit_inet_interfaces

          ...

          Mar 1 08:47:39 ims1 postfix/pipe[9566]: deliver_request_get: file
          active/1A0F639AF0
          Mar 1 08:47:39 ims1 postfix/pipe[9566]: deliver_message: from
          <someone@...>
          Mar 1 08:47:39 ims1 postfix/pipe[9566]: dict_eval: const 1000s
          Mar 1 08:47:39 ims1 postfix/pipe[9566]: get_service_params: time_limit
          1000
          Mar 1 08:47:39 ims1 postfix/pipe[9566]: get_service_attr: uid 5000,
          gid 5000, flags 196632, size 0
          Mar 1 08:47:39 ims1 postfix/pipe[9566]: dict_eval: const
          /usr/lib/dovecot/deliver
          Mar 1 08:47:39 ims1 postfix/pipe[9566]: dict_eval: const -f
          Mar 1 08:47:39 ims1 postfix/pipe[9566]: dict_eval: expand ${sender} ->
          someone@...
          Mar 1 08:47:39 ims1 postfix/pipe[9566]: dict_eval: const -d
          Mar 1 08:47:39 ims1 postfix/pipe[9566]: dict_eval: expand
          ${user}@${nexthop} -> abuse@...
          Mar 1 08:47:39 ims1 postfix/pipe[9566]: connect to subsystem
          private/bounce
        • Noel Jones
          ... Right. We ve seen your message three times now. Maybe you re not aware that gmail suppresses duplicate messages; the copy sent by the list doesn t show
          Message 4 of 13 , Mar 1, 2011
          • 0 Attachment
            On 3/1/2011 7:55 AM, marc@... wrote:
            > Hi,
            >
            > I have a problem with my installation of postfix and virtual
            > aliases (mysql).


            Right. We've seen your message three times now. Maybe you're
            not aware that gmail suppresses duplicate messages; the copy
            sent by the list doesn't show in your inbox.

            You need to provide some useful information as requested.


            -- Noel Jones
          • Marc L. Veary
            My sincere apologies to all. I was not aware of the supression. I ll dig it out an reply from this address as I have stopped using the gmail account. Many
            Message 5 of 13 , Mar 1, 2011
            • 0 Attachment
              My sincere apologies to all. I was not aware of the supression. I'll
              dig it out an reply from this address as I have stopped using the gmail
              account.

              Many apologies again.
              --
              Marc


              On 01/03/2011 14:01, Noel Jones wrote:
              > On 3/1/2011 7:55 AM, marc@... wrote:
              >> Hi,
              >>
              >> I have a problem with my installation of postfix and virtual
              >> aliases (mysql).
              >
              >
              > Right. We've seen your message three times now. Maybe you're not
              > aware that gmail suppresses duplicate messages; the copy sent by the
              > list doesn't show in your inbox.
              >
              > You need to provide some useful information as requested.
              >
              >
              > -- Noel Jones
            • Marc L. Veary
              I have nothing in gmail. Could someone let me know what further info is required? Kind regards, -- Marc
              Message 6 of 13 , Mar 1, 2011
              • 0 Attachment
                I have nothing in gmail.

                Could someone let me know what further info is required?

                Kind regards,
                --
                Marc

                On 01/03/2011 14:01, Noel Jones wrote:
                > On 3/1/2011 7:55 AM, marc@... wrote:
                >> Hi,
                >>
                >> I have a problem with my installation of postfix and virtual
                >> aliases (mysql).
                >
                >
                > Right. We've seen your message three times now. Maybe you're not
                > aware that gmail suppresses duplicate messages; the copy sent by the
                > list doesn't show in your inbox.
                >
                > You need to provide some useful information as requested.
                >
                >
                > -- Noel Jones
              • Noel Jones
                ... [please bottom post on this list] It s in the archives http://archives.neohapsis.com/archives/postfix/2011-03/0011.html
                Message 7 of 13 , Mar 1, 2011
                • 0 Attachment
                  On 3/1/2011 8:15 AM, Marc L. Veary wrote:
                  > I have nothing in gmail.
                  >
                  > Could someone let me know what further info is required?
                  >
                  > Kind regards,
                  > --
                  > Marc
                  >

                  [please bottom post on this list]


                  It's in the archives

                  http://archives.neohapsis.com/archives/postfix/2011-03/0011.html
                • marc@veary.org.uk
                  ... Here is some more details on the config, etc. The OS is Debian 5.x and postfix, dovecot are apt installs. Thank you for the help -- Marc postconf -n
                  Message 8 of 13 , Mar 1, 2011
                  • 0 Attachment
                    On Tue, 01 Mar 2011 08:26:09 -0600, Noel Jones wrote:
                    > On 3/1/2011 8:15 AM, Marc L. Veary wrote:
                    >> I have nothing in gmail.
                    >>
                    >> Could someone let me know what further info is required?
                    >>
                    >> Kind regards,
                    >> --
                    >> Marc
                    >>
                    >
                    > [please bottom post on this list]
                    >
                    >
                    > It's in the archives
                    >
                    > http://archives.neohapsis.com/archives/postfix/2011-03/0011.html

                    Here is some more details on the config, etc.
                    The OS is Debian 5.x and postfix, dovecot are apt installs.

                    Thank you for the help
                    --
                    Marc

                    postconf -n
                    ===========
                    append_dot_mydomain = no
                    biff = no
                    config_directory = /etc/postfix
                    disable_vrfy_command = yes
                    inet_interfaces = all
                    local_recipient_maps = $virtual_alias_maps
                    local_transport = virtual
                    mailbox_size_limit = 0
                    mydestination = localhost
                    myhostname = smtp.mydomain.com
                    mynetworks = 127.0.0.0/8, 192.168.1.0/24
                    myorigin = mydomain.com
                    proxy_read_maps = $local_recipient_maps $virtual_alias_maps
                    $virtual_mailbox_domains $virtual_mailbox_maps
                    readme_directory = no
                    receive_override_options = no_address_mappings
                    recipient_delimiter = +
                    relayhost =
                    show_user_unknown_table_name = no
                    smtpd_banner = $myhostname ESMTP $mail_name
                    smtpd_client_restrictions =
                    smtpd_data_restrictions = reject_unauth_pipelining, permit
                    smtpd_hard_error_limit = 10
                    smtpd_helo_required = yes
                    smtpd_helo_restrictions =
                    smtpd_recipient_limit = 128
                    smtpd_recipient_restrictions = permit_mynetworks,
                    permit_sasl_authenticated, reject_unauth_destination, permit
                    smtpd_sasl_path = private/auth
                    smtpd_sasl_tls_security_options = noanonymous
                    smtpd_sasl_type = dovecot
                    smtpd_sender_restrictions =
                    smtpd_soft_error_limit = 8
                    smtpd_tls_auth_only = yes
                    smtpd_tls_cert_file = /etc/ssl/certs/mycert.pem
                    smtpd_tls_key_file = /etc/ssl/private/mykey.pem
                    smtpd_tls_security_level = may
                    strict_rfc821_envelopes = yes
                    virtual_alias_maps =
                    proxy:mysql:/etc/postfix/mysql_virtual_alias_maps.cf
                    virtual_gid_maps = static:5000
                    virtual_mailbox_base = /opt/vmail/
                    virtual_mailbox_domains =
                    proxy:mysql:/etc/postfix/mysql_virtual_domains_maps.cf
                    virtual_mailbox_maps =
                    proxy:mysql:/etc/postfix/mysql_virtual_mailbox_maps.cf
                    virtual_minimum_uid = 5000
                    virtual_transport = dovecot
                    virtual_uid_maps = static:5000

                    master.cf
                    =========
                    smtp inet n - - - - smtpd -v
                    #submission inet n - - - - smtpd
                    # -o smtpd_tls_security_level=encrypt
                    # -o smtpd_sasl_auth_enable=yes
                    # -o smtpd_client_restrictions=permit_sasl_authenticated,reject
                    # -o milter_macro_daemon_name=ORIGINATING
                    smtps inet n - - - - smtpd
                    # -o smtpd_tls_wrappermode=yes
                    -o smtpd_sasl_auth_enable=yes
                    -o smtpd_client_restrictions=permit_sasl_authenticated,reject
                    # -o milter_macro_daemon_name=ORIGINATING
                    #628 inet n - - - - qmqpd
                    pickup fifo n - - 60 1 pickup
                    cleanup unix n - - - 0 cleanup
                    qmgr fifo n - n 300 1 qmgr
                    #qmgr fifo n - - 300 1 oqmgr
                    tlsmgr unix - - - 1000? 1 tlsmgr
                    rewrite unix - - - - - trivial-rewrite
                    bounce unix - - - - 0 bounce
                    defer unix - - - - 0 bounce
                    trace unix - - - - 0 bounce
                    verify unix - - - - 1 verify
                    flush unix n - - 1000? 0 flush
                    proxymap unix - - n - - proxymap
                    proxywrite unix - - n - 1 proxymap
                    smtp unix - - - - - smtp
                    # When relaying mail as backup MX, disable fallback_relay to avoid MX
                    loops
                    relay unix - - - - - smtp
                    # -o smtp_fallback_relay=
                    # -o smtp_helo_timeout=5 -o smtp_connect_timeout=5
                    showq unix n - - - - showq
                    error unix - - - - - error
                    retry unix - - - - - error
                    discard unix - - - - - discard
                    local unix - n n - - local -v
                    virtual unix - n n - - virtual -v
                    lmtp unix - - - - - lmtp
                    anvil unix - - - - 1 anvil
                    scache unix - - - - 1 scache
                    # Dovecot Delivery
                    dovecot unix - n n - - pipe -v
                    flags=DRhu user=vmail:vmail argv=/usr/lib/dovecot/deliver -f
                    ${sender} -d ${user}@${nexthop}
                  • Victor Duchovni
                    ... There s your problem. -- Viktor.
                    Message 9 of 13 , Mar 1, 2011
                    • 0 Attachment
                      On Tue, Mar 01, 2011 at 02:44:25PM +0000, marc@... wrote:

                      > postconf -n
                      > ===========
                      > receive_override_options = no_address_mappings

                      There's your problem.

                      --
                      Viktor.
                    • Marc L. Veary
                      ... Ah! That s sorted it! This had been driving me around the bend... Really appreciate the help. Kind regards, -- Marc
                      Message 10 of 13 , Mar 1, 2011
                      • 0 Attachment
                        On 01/03/2011 15:34, Victor Duchovni wrote:
                        >> postconf -n
                        >> ===========
                        >> receive_override_options = no_address_mappings
                        > There's your problem.
                        >
                        Ah! That's sorted it! This had been driving me around the bend...

                        Really appreciate the help.

                        Kind regards,
                        --
                        Marc
                      • /dev/rob0
                        ... You are still lacking useful (non-verbose) logs. That said, I think ... snip ... Wrong. Why did you do this? ... Ugly. Why? ... This should only be used in
                        Message 11 of 13 , Mar 1, 2011
                        • 0 Attachment
                          On Tue, Mar 01, 2011 at 02:44:25PM +0000, marc@... wrote:
                          > On Tue, 01 Mar 2011 08:26:09 -0600, Noel Jones wrote:
                          > >On 3/1/2011 8:15 AM, Marc L. Veary wrote:
                          > >>I have nothing in gmail.
                          > >>
                          > >>Could someone let me know what further info is required?
                          > >
                          > >It's in the archives
                          > >
                          > >http://archives.neohapsis.com/archives/postfix/2011-03/0011.html
                          >
                          > Here is some more details on the config, etc.
                          > The OS is Debian 5.x and postfix, dovecot are apt installs.

                          You are still lacking useful (non-verbose) logs. That said, I think
                          the problem is quite obvious:
                          > receive_override_options = no_address_mappings

                          More nitpicks:

                          > postconf -n
                          > ===========
                          snip
                          > local_recipient_maps = $virtual_alias_maps

                          Wrong. Why did you do this?

                          > local_transport = virtual

                          Ugly. Why?

                          > receive_override_options = no_address_mappings

                          This should only be used in conjunction with content filtering, on
                          either side of the filter. You don't have a content filter.

                          > show_user_unknown_table_name = no

                          Bad idea.

                          You have numerous settings of defaults. Those should not be in your
                          main.cf. You have numerous settings that I don't think you
                          understood. Why? Leave things at default unless you know why you're
                          changing it.

                          I'd suggest scrapping the whole install and starting over with this
                          guide:
                          http://www.postfix.org/BASIC_CONFIGURATION_README.html

                          Why do you need mysql at this point? Why do you need the dovecot
                          transport? Learn to walk before you try to run.

                          > master.cf
                          > =========
                          > smtp inet n - - - - smtpd -v

                          Again. You do NOT need verbose logs. Do NOT use -v here.
                          1. You won't be able to understand them
                          2. Those who do understand them won't be willing to dig through
                          all the noise.

                          Remove the -v here.
                          --
                          Offlist mail to this address is discarded unless
                          "/dev/rob0" or "not-spam" is in Subject: header
                        • Marc L. Veary
                          ... I ll take your suggestions on board and have a clean up. Basically, I have been adding configs to try to fix the original issue. Thanks again for the
                          Message 12 of 13 , Mar 1, 2011
                          • 0 Attachment
                            On 01/03/2011 15:42, /dev/rob0 wrote:
                            > On Tue, Mar 01, 2011 at 02:44:25PM +0000, marc@... wrote:
                            >> On Tue, 01 Mar 2011 08:26:09 -0600, Noel Jones wrote:
                            >>> On 3/1/2011 8:15 AM, Marc L. Veary wrote:
                            >>>> I have nothing in gmail.
                            >>>>
                            >>>> Could someone let me know what further info is required?
                            >>> It's in the archives
                            >>>
                            >>> http://archives.neohapsis.com/archives/postfix/2011-03/0011.html
                            >> Here is some more details on the config, etc.
                            >> The OS is Debian 5.x and postfix, dovecot are apt installs.
                            > You are still lacking useful (non-verbose) logs. That said, I think
                            > the problem is quite obvious:
                            >> receive_override_options = no_address_mappings
                            > More nitpicks:
                            >
                            >> postconf -n
                            >> ===========
                            > snip
                            >> local_recipient_maps = $virtual_alias_maps
                            > Wrong. Why did you do this?
                            >
                            >> local_transport = virtual
                            > Ugly. Why?
                            >
                            >> receive_override_options = no_address_mappings
                            > This should only be used in conjunction with content filtering, on
                            > either side of the filter. You don't have a content filter.
                            >
                            >> show_user_unknown_table_name = no
                            > Bad idea.
                            >
                            > You have numerous settings of defaults. Those should not be in your
                            > main.cf. You have numerous settings that I don't think you
                            > understood. Why? Leave things at default unless you know why you're
                            > changing it.
                            >
                            > I'd suggest scrapping the whole install and starting over with this
                            > guide:
                            > http://www.postfix.org/BASIC_CONFIGURATION_README.html
                            >
                            > Why do you need mysql at this point? Why do you need the dovecot
                            > transport? Learn to walk before you try to run.
                            >
                            >> master.cf
                            >> =========
                            >> smtp inet n - - - - smtpd -v
                            > Again. You do NOT need verbose logs. Do NOT use -v here.
                            > 1. You won't be able to understand them
                            > 2. Those who do understand them won't be willing to dig through
                            > all the noise.
                            >
                            > Remove the -v here.
                            I'll take your suggestions on board and have a clean up. Basically, I
                            have been adding configs to try to fix the original issue.

                            Thanks again for the help.
                          • Benny Pedersen
                            ... dovecot can be wery powerfull at times, but how did you manage to get passwords working on aliases ? :-) problem you have is to let postfix do alias
                            Message 13 of 13 , Mar 1, 2011
                            • 0 Attachment
                              On Tue, 01 Mar 2011 13:55:49 +0000, marc@... wrote:

                              > I have tried all that I can think of to resolve this, but to no
                              > avail...

                              dovecot can be wery powerfull at times, but how did you manage to get
                              passwords working on aliases ? :-)

                              problem you have is to let postfix do alias rewrite before calling dovecot
                              lda (so it only see mailbox)

                              see dovecot wiki on howto configure postfix with lda
                            Your message has been successfully submitted and would be delivered to recipients shortly.