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

virtual transport overwrites recipient

Expand Messages
  • Ondrej Pachner
    hello all, I have problems with postfix 2.3.8-2+b1 (debian etch) when delivering mail to the virtual catch-all address. When I try to send email with Bcc:
    Message 1 of 11 , Jan 2, 2008
    • 0 Attachment
      hello all,
      I have problems with postfix 2.3.8-2+b1 (debian etch) when delivering mail
      to the virtual catch-all address.
      When I try to send email with Bcc: someone@..., which goes to the
      mailbox all@... (based on mysql query)
      postfix receives it, pipe it to the amavisd and then receives back on port
      10025, and then overwrites recipient to all@... and puts it via
      maildrop to the mailbox. It doesn't preserve the original recipient, so
      the owner of teh mailbox can't sort/filter it on the recipient base.

      I put the lline:
      enable_original_recipient = yes
      to the main.cf, but nothing happened (it's postfix default setting, isn't
      it?), thhe problem is still the same.
      When I have the recipient in To: header, everything is OK.

      Does anybody know how to fix it to deliver to the right maillbox
      (al@...) with To: header with the original address
      (someuser@...)?
      thank you for any hint

      Ondrej Pachner
    • Sahil Tandon
      ... But you did not send the email *To:* someuser@domain.tld; you set *Bcc:*. -- Sahil Tandon
      Message 2 of 11 , Jan 2, 2008
      • 0 Attachment
        * Ondrej Pachner <op@...> [2008-01-02 10:13:09 +0100]:

        > hello all,
        > I have problems with postfix 2.3.8-2+b1 (debian etch) when delivering mail
        > to the virtual catch-all address.
        > When I try to send email with Bcc: someone@..., which goes to the
        > mailbox all@... (based on mysql query)
        > postfix receives it, pipe it to the amavisd and then receives back on port
        > 10025, and then overwrites recipient to all@... and puts it via
        > maildrop to the mailbox. It doesn't preserve the original recipient, so the
        > owner of teh mailbox can't sort/filter it on the recipient base.
        >
        > I put the lline:
        > enable_original_recipient = yes
        > to the main.cf, but nothing happened (it's postfix default setting, isn't
        > it?), thhe problem is still the same.
        > When I have the recipient in To: header, everything is OK.
        >
        > Does anybody know how to fix it to deliver to the right maillbox
        > (al@...) with To: header with the original address
        > (someuser@...)?
        > thank you for any hint

        But you did not send the email *To:* someuser@...; you set *Bcc:*.

        --
        Sahil Tandon <sahil@...>
      • Ondrej Pachner
        hi, ... That s right. On the other postfix machine with totally another configuration it takes me X-Original-To: header into an email with the original
        Message 3 of 11 , Jan 2, 2008
        • 0 Attachment
          hi,

          On Wed, 2 Jan 2008, Sahil Tandon wrote:
          >> Does anybody know how to fix it to deliver to the right maillbox
          >> (al@...) with To: header with the original address
          >> (someuser@...)?
          >> thank you for any hint
          > But you did not send the email *To:* someuser@...; you set *Bcc:*.

          That's right. On the other postfix machine with totally another
          configuration it takes me X-Original-To: header into an email with the
          original recipient incuded. from postfix man:

          The virtual(8) delivery agent prepends a Delivered-To:
          message header with the final envelope recipient address,
          prepends an X-Original-To: header with the recipient
          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
          address as given to Postfix, and prepends a Return-Path:
          message header with the envelope sender address.

          this is what I'm missing :-(

          O.Pachner
        • mouss
          ... disable address rewrite before the filter. only do address rewrite after the filter. More infos in the FILTER README.
          Message 4 of 11 , Jan 2, 2008
          • 0 Attachment
            Ondrej Pachner wrote:
            > hi,
            >
            > On Wed, 2 Jan 2008, Sahil Tandon wrote:
            >>> Does anybody know how to fix it to deliver to the right maillbox
            >>> (al@...) with To: header with the original address
            >>> (someuser@...)?
            >>> thank you for any hint
            >> But you did not send the email *To:* someuser@...; you set *Bcc:*.
            >
            > That's right. On the other postfix machine with totally another
            > configuration it takes me X-Original-To: header into an email with the
            > original recipient incuded. from postfix man:
            >
            > The virtual(8) delivery agent prepends a Delivered-To:
            > message header with the final envelope recipient address,
            > prepends an X-Original-To: header with the recipient
            > ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
            > address as given to Postfix, and prepends a Return-Path:
            > message header with the envelope sender address.
            >
            > this is what I'm missing :-(
            >

            disable address rewrite before the filter. only do address rewrite after
            the filter. More infos in the FILTER README.
          • Ondrej Pachner
            hi, ... I m trying to do it this way: smtp inet n - - - - smtpd -o smtpd_use_tls=no -o smtpd_sasl_auth_enable=no -o
            Message 5 of 11 , Jan 2, 2008
            • 0 Attachment
              hi,

              On Wed, 2 Jan 2008, mouss wrote:
              >> message header with the final envelope recipient address,
              >> prepends an X-Original-To: header with the recipient
              >> ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
              >> address as given to Postfix, and prepends a Return-Path:
              >> message header with the envelope sender address.
              >> this is what I'm missing :-(
              >
              > disable address rewrite before the filter. only do address rewrite after the
              > filter. More infos in the FILTER README.

              I'm trying to do it this way:

              smtp inet n - - - - smtpd
              -o smtpd_use_tls=no
              -o smtpd_sasl_auth_enable=no
              -o content_filter=smtp-amavis:[127.0.0.1]:10024
              -o receive_override_options=no_address_mappings

              but it bounces me the message back saying:

              This is the mail system at host xxx.my.domain.

              I'm sorry to have to inform you that your message could not
              be delivered to one or more recipients. It's attached below.

              For further assistance, please send mail to postmaster.

              If you do so, please include this problem report. You can
              delete your own text from the attached returned message.

              The mail system

              <lalala@...>: user unknown. Command output: Invalid user
              specified.

              when I comment out the receive_override_options line, then it works the
              way I described :-( so I probably need just a control (not expansion) of
              the virtual user.. but I really don't know how :-( maybe some
              smtpd_recipient_restrictions which will say some OK or ACCEPT if it finds
              the virtual catch-all for the recipient? really, I have no glue how to
              fix this..
              O.Pachner
            • mouss
              ... Your first mission for this year would be to abandon giving bounce messages more importance than they deserve. the real infos are in postfix _logs_. ...
              Message 6 of 11 , Jan 2, 2008
              • 0 Attachment
                Ondrej Pachner wrote:
                > hi,
                >
                > On Wed, 2 Jan 2008, mouss wrote:
                >>> message header with the final envelope recipient address,
                >>> prepends an X-Original-To: header with the recipient
                >>> ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
                >>> address as given to Postfix, and prepends a Return-Path:
                >>> message header with the envelope sender address.
                >>> this is what I'm missing :-(
                >>
                >> disable address rewrite before the filter. only do address rewrite
                >> after the filter. More infos in the FILTER README.
                >
                > I'm trying to do it this way:
                >
                > smtp inet n - - - - smtpd
                > -o smtpd_use_tls=no
                > -o smtpd_sasl_auth_enable=no
                > -o content_filter=smtp-amavis:[127.0.0.1]:10024
                > -o receive_override_options=no_address_mappings
                >
                > but it bounces me the message back saying:
                >
                > This is the mail system at host xxx.my.domain.
                >
                > I'm sorry to have to inform you that your message could not
                > be delivered to one or more recipients. It's attached below.
                >
                > For further assistance, please send mail to postmaster.
                >
                > If you do so, please include this problem report. You can
                > delete your own text from the attached returned message.
                >
                > The mail system
                >
                > <lalala@...>: user unknown. Command output: Invalid user
                > specified.
                >

                Your first mission for this year would be to abandon giving bounce
                messages more importance than they deserve. the real infos are in
                postfix _logs_.

                > when I comment out the receive_override_options line, then it works the
                > way I described :-( so I probably need just a control (not expansion) of
                > the virtual user.. but I really don't know how :-( maybe some
                > smtpd_recipient_restrictions which will say some OK or ACCEPT if it
                > finds the virtual catch-all for the recipient? really, I have no glue
                > how to fix this..

                make sure address rewrite is not disabled after the filter. you need to
                show: 'postconf -n' output and master.cf. feel free to hide private
                infos, but this coherently.
              • Ondrej Pachner
                hi, ... postconf -n: alias_maps = hash:/etc/postfix/aliases append_dot_mydomain = no biff = no broken_sasl_auth_clients = yes config_directory = /etc/postfix
                Message 7 of 11 , Jan 2, 2008
                • 0 Attachment
                  hi,

                  On Wed, 2 Jan 2008, mouss wrote:
                  > Your first mission for this year would be to abandon giving bounce messages
                  > more importance than they deserve. the real infos are in postfix _logs_.
                  >
                  > make sure address rewrite is not disabled after the filter. you need to show:
                  > 'postconf -n' output and master.cf. feel free to hide private infos, but this
                  > coherently.

                  postconf -n:

                  alias_maps = hash:/etc/postfix/aliases
                  append_dot_mydomain = no
                  biff = no
                  broken_sasl_auth_clients = yes
                  config_directory = /etc/postfix
                  enable_original_recipient = yes
                  inet_interfaces = all
                  mailbox_command = procmail -a "$EXTENSION"
                  mailbox_size_limit = 0
                  message_size_limit = 20480000
                  mydestination = myserver.domain.tld, localhost.domain.tld, localhost
                  mydomain = domain.tld
                  myhostname = smtp.domain.tld
                  mynetworks = /etc/postfix/mynetworks
                  myorigin = domain.tld
                  recipient_delimiter = +
                  relay_domains = proxy:mysql:/etc/postfix/mysql_relay_domains_maps.cf
                  relayhost =
                  smtp_tls_session_cache_database = btree:${queue_directory}/smtp_scache
                  smtpd_banner = $myhostname ESMTP $mail_name (Debian/GNU)
                  smtpd_data_restrictions = reject_unauth_pipelining
                  smtpd_hard_error_limit = 10
                  smtpd_helo_required = yes
                  smtpd_recipient_restrictions = permit_mynetworks, permit_sasl_authenticated, reject_unauth_destination, reject_unlisted_recipient, check_recipient_access hash:/etc/postfix/reject_over_quota, check_sender_access hash:/etc/postfix/rbl_sender_exceptions, check_client_access hash:/etc/postfix/rbl_client_exceptions, check_recipient_access hash:/etc/postfix/rbl_recipient_exceptions, reject_rbl_client sbl-xbl.spamhaus.org
                  smtpd_sasl_auth_enable = yes
                  smtpd_sasl_authenticated_header = yes
                  smtpd_sasl_local_domain = $myhostname
                  smtpd_sasl_security_options = noanonymous
                  smtpd_sender_restrictions = check_sender_access hash:/etc/postfix/sender_access, reject_non_fqdn_sender, reject_unknown_sender_domain
                  smtpd_soft_error_limit = 8
                  smtpd_tls_CAfile = /etc/postfix/ssl/cacert.domain.tld.pem
                  smtpd_tls_cert_file = /etc/postfix/ssl/cert.smtp.domain.tld.pem
                  smtpd_tls_key_file = /etc/postfix/ssl/privkey.smtp.domain.tld.pem
                  smtpd_tls_received_header = yes
                  smtpd_tls_session_cache_database = btree:${queue_directory}/smtpd_scache
                  smtpd_use_tls = yes
                  transport_maps = hash:/etc/postfix/transport
                  virtual_alias_maps = proxy:mysql:/etc/postfix/mysql_virtual_alias_maps.cf, hash:/etc/postfix/virtual
                  virtual_gid_maps = static:6060
                  virtual_mailbox_base = /var/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 = 6060
                  virtual_transport = maildrop
                  virtual_uid_maps = static:6060

                  master.cf:

                  #
                  # Postfix master process configuration file. For details on the format
                  # of the file, see the master(5) manual page (command: "man 5 master").
                  #
                  # ==========================================================================
                  # service type private unpriv chroot wakeup maxproc command + args
                  # (yes) (yes) (yes) (never) (100)
                  # ==========================================================================
                  smtp inet n - - - - smtpd
                  -o smtpd_use_tls=no
                  -o smtpd_sasl_auth_enable=no
                  -o content_filter=smtp-amavis:[127.0.0.1]:10024
                  # -o receive_override_options=no_address_mappings
                  # ^^^^^^^^^^^^^^^^ with this ine uncommented postfix doesn't deliver
                  # mail into catch-all box at all

                  # If they want to relay, make them use port 587 (submission) or port 465 (smtps)
                  # If using submission port, configure client to use CRAM-MD5
                  submission inet n - - - - smtpd
                  -o smtpd_use_tls=no
                  -o smtpd_sasl_auth_enable=yes
                  -o smtpd_client_restrictions=permit_sasl_authenticated,reject
                  -o content_filter=smtp-amavis:[127.0.0.1]:10026
                  # -o receive_override_options=no_address_mappings
                  # Outlook and OE (and many others) expect smtpd_tls_wrappermode,
                  # so have them submit here (port 465):
                  smtps inet n - - - - smtpd
                  -o smtpd_enforce_tls=yes
                  -o smtpd_tls_wrappermode=yes
                  -o smtpd_sasl_auth_enable=yes
                  -o smtpd_client_restrictions=permit_sasl_authenticated,reject
                  -o content_filter=smtp-amavis:[127.0.0.1]:10026
                  # -o receive_override_options=no_address_mappings
                  # We will use port 4650 for clients that use STARTTLS:
                  4650 inet n - - - - smtpd
                  -o smtpd_enforce_tls=yes
                  -o smtpd_sasl_auth_enable=yes
                  -o smtpd_client_restrictions=permit_sasl_authenticated,reject
                  -o content_filter=smtp-amavis:[127.0.0.1]:10026
                  # -o receive_override_options=no_address_mappings
                  #628 inet n - - - - qmqpd
                  pickup fifo n - - 60 1 pickup
                  -o content_filter=
                  cleanup unix n - - - 0 cleanup
                  amavis-cleanup unix n - - - 0 cleanup
                  -o virtual_alias_maps=
                  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
                  smtp unix - - - - - smtp
                  # When relaying mail as backup MX, disable fallback_relay to avoid MX loops
                  relay unix - - - - - smtp
                  -o fallback_relay=
                  # -o smtp_helo_timeout=5 -o smtp_connect_timeout=5
                  showq unix n - - - - showq
                  error unix - - - - - error
                  discard unix - - - - - discard
                  local unix - n n - - local
                  virtual unix - n n - - virtual
                  lmtp unix - - - - - lmtp
                  anvil unix - - - - 1 anvil
                  scache unix - - - - 1 scache
                  #
                  # ====================================================================
                  # 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}
                  maildrop unix - n n - - pipe
                  flags=DRhu user=vmail:daemon argv=/usr/bin/maildrop -w 90
                  -d ${user}@${nexthop} ${extension} ${recipient} ${user} ${nexthop}
                  vacation unix - n n - - pipe
                  flags=Rq user=vacation argv=/var/spool/vacation/vacation.pl
                  -f ${sender} -- ${recipient}
                  #
                  # 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}
                  smtp-amavis unix - - n - 6 smtp
                  -o smtp_data_done_timeout=1200
                  -o smtp_send_xforward_command=yes
                  -o disable_dns_lookups=yes
                  -o receive_override_options=no_header_body_checks,no_unknown_recipient_checks
                  127.0.0.1:10025 inet n - n - - smtpd
                  -o cleanup_service_name=amavis-cleanup
                  -o content_filter=
                  -o local_recipient_maps=
                  -o relay_recipient_maps=
                  -o smtpd_restriction_classes=
                  -o smtpd_delay_reject=no
                  -o smtpd_client_restrictions=permit_mynetworks,reject
                  -o smtpd_helo_restrictions=
                  -o smtpd_sender_restrictions=
                  -o smtpd_recipient_restrictions=permit_mynetworks,reject
                  -o smtpd_data_restrictions=reject_unauth_pipelining
                  -o smtpd_end_of_data_restrictions=
                  -o mynetworks=127.0.0.0/8
                  -o smtpd_error_sleep_time=0
                  -o smtpd_soft_error_limit=1001
                  -o smtpd_hard_error_limit=1000
                  -o smtpd_client_connection_count_limit=0
                  -o smtpd_client_connection_rate_limit=0
                  -o receive_override_options=no_header_body_checks,no_unknown_recipient_checks


                  log output:

                  with -o receive_override_options=no_address_mappings (as shown upper)

                  Jan 2 14:16:51 smtp amavis[12465]: (12465-07) Passed CLEAN, MYNETS LOCAL [X.Y.Z.W] [X.Y.W.Q] <some@...> -> <prdprd@...>, Message-ID: <Pine.LNX.4.64.0801021405310.5021@localhost>, mail_id: sR4aAPT26nQS, Hits: -2.459, queued_as: 2FE9F5417D, 1198 ms
                  Jan 2 14:16:51 smtp postfix/smtp[12968]: EBB0B5412C: to=<prdprd@...>, relay=127.0.0.1[127.0.0.1]:10024, delay=1.3, delays=0.09/0/0/1.2, dsn=2.6.0, status=sent (250 2.6.0 Ok, id=12465-07, from MTA([127.0.0.1]:10025): 250 2.0.0 Ok: queued as 2FE9F5417D)
                  Jan 2 14:16:51 smtp postfix/pipe[13000]: 2FE9F5417D: to=<prdprd@...>, relay=maildrop, delay=0.07, delays=0.05/0.01/0/0.01, dsn=5.1.1, status=bounced (user unknown. Command output: Invalid user specified. )

                  with -o receiv... commented:

                  Jan 2 13:26:31 smtp postfix/smtp[3135]: 4E4B654888:
                  to=<pikacu@...>, orig_to=<prdprd@...>,
                  relay=127.0.0.1[127.0.0.1]:10024, delay=1.4, delays=0.11/0/0/1.2,
                  dsn=2.6.0, status=sent (250 2.6.0 Ok, id=02776-06, from
                  MTA([127.0.0.1]:10025): 250 2.0.0 Ok: queued as 8EBC454A3D)

                  BUT doesn't incude X-Original-To header :-(
                • mouss
                  ... This is it. The after the filter smtpd have no virtual_alias_maps. don t play games with *_maps when filtering. you should not need any setting like this.
                  Message 8 of 11 , Jan 2, 2008
                  • 0 Attachment
                    Ondrej Pachner wrote:
                    > hi,
                    >
                    > On Wed, 2 Jan 2008, mouss wrote:
                    >> Your first mission for this year would be to abandon giving bounce
                    >> messages more importance than they deserve. the real infos are in
                    >> postfix _logs_.
                    >>
                    >> make sure address rewrite is not disabled after the filter. you need
                    >> to show: 'postconf -n' output and master.cf. feel free to hide private
                    >> infos, but this coherently.
                    >
                    > postconf -n:
                    >
                    > alias_maps = hash:/etc/postfix/aliases
                    > append_dot_mydomain = no
                    > biff = no
                    > broken_sasl_auth_clients = yes
                    > config_directory = /etc/postfix
                    > enable_original_recipient = yes
                    > inet_interfaces = all
                    > mailbox_command = procmail -a "$EXTENSION"
                    > mailbox_size_limit = 0
                    > message_size_limit = 20480000
                    > mydestination = myserver.domain.tld, localhost.domain.tld, localhost
                    > mydomain = domain.tld
                    > myhostname = smtp.domain.tld
                    > mynetworks = /etc/postfix/mynetworks
                    > myorigin = domain.tld
                    > recipient_delimiter = +
                    > relay_domains = proxy:mysql:/etc/postfix/mysql_relay_domains_maps.cf
                    > relayhost = smtp_tls_session_cache_database =
                    > btree:${queue_directory}/smtp_scache
                    > smtpd_banner = $myhostname ESMTP $mail_name (Debian/GNU)
                    > smtpd_data_restrictions = reject_unauth_pipelining
                    > smtpd_hard_error_limit = 10
                    > smtpd_helo_required = yes
                    > smtpd_recipient_restrictions = permit_mynetworks,
                    > permit_sasl_authenticated, reject_unauth_destination,
                    > reject_unlisted_recipient, check_recipient_access
                    > hash:/etc/postfix/reject_over_quota, check_sender_access
                    > hash:/etc/postfix/rbl_sender_exceptions, check_client_access
                    > hash:/etc/postfix/rbl_client_exceptions, check_recipient_access
                    > hash:/etc/postfix/rbl_recipient_exceptions, reject_rbl_client
                    > sbl-xbl.spamhaus.org
                    > smtpd_sasl_auth_enable = yes
                    > smtpd_sasl_authenticated_header = yes
                    > smtpd_sasl_local_domain = $myhostname
                    > smtpd_sasl_security_options = noanonymous
                    > smtpd_sender_restrictions = check_sender_access
                    > hash:/etc/postfix/sender_access, reject_non_fqdn_sender,
                    > reject_unknown_sender_domain
                    > smtpd_soft_error_limit = 8
                    > smtpd_tls_CAfile = /etc/postfix/ssl/cacert.domain.tld.pem
                    > smtpd_tls_cert_file = /etc/postfix/ssl/cert.smtp.domain.tld.pem
                    > smtpd_tls_key_file = /etc/postfix/ssl/privkey.smtp.domain.tld.pem
                    > smtpd_tls_received_header = yes
                    > smtpd_tls_session_cache_database = btree:${queue_directory}/smtpd_scache
                    > smtpd_use_tls = yes
                    > transport_maps = hash:/etc/postfix/transport
                    > virtual_alias_maps =
                    > proxy:mysql:/etc/postfix/mysql_virtual_alias_maps.cf,
                    > hash:/etc/postfix/virtual
                    > virtual_gid_maps = static:6060
                    > virtual_mailbox_base = /var/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 = 6060
                    > virtual_transport = maildrop
                    > virtual_uid_maps = static:6060
                    >
                    > master.cf:
                    >
                    > #
                    > # Postfix master process configuration file. For details on the format
                    > # of the file, see the master(5) manual page (command: "man 5 master").
                    > #
                    > #
                    > ==========================================================================
                    > # service type private unpriv chroot wakeup maxproc command + args
                    > # (yes) (yes) (yes) (never) (100)
                    > #
                    > ==========================================================================
                    > smtp inet n - - - - smtpd
                    > -o smtpd_use_tls=no
                    > -o smtpd_sasl_auth_enable=no
                    > -o content_filter=smtp-amavis:[127.0.0.1]:10024
                    > # -o receive_override_options=no_address_mappings
                    > # ^^^^^^^^^^^^^^^^ with this ine uncommented postfix doesn't deliver
                    > # mail into catch-all box at all
                    >
                    > # If they want to relay, make them use port 587 (submission) or port 465
                    > (smtps)
                    > # If using submission port, configure client to use CRAM-MD5
                    > submission inet n - - - - smtpd
                    > -o smtpd_use_tls=no
                    > -o smtpd_sasl_auth_enable=yes
                    > -o smtpd_client_restrictions=permit_sasl_authenticated,reject
                    > -o content_filter=smtp-amavis:[127.0.0.1]:10026
                    > # -o receive_override_options=no_address_mappings # Outlook and OE (and
                    > many others) expect smtpd_tls_wrappermode,
                    > # so have them submit here (port 465):
                    > smtps inet n - - - - smtpd
                    > -o smtpd_enforce_tls=yes
                    > -o smtpd_tls_wrappermode=yes
                    > -o smtpd_sasl_auth_enable=yes
                    > -o smtpd_client_restrictions=permit_sasl_authenticated,reject
                    > -o content_filter=smtp-amavis:[127.0.0.1]:10026
                    > # -o receive_override_options=no_address_mappings
                    > # We will use port 4650 for clients that use STARTTLS:
                    > 4650 inet n - - - - smtpd
                    > -o smtpd_enforce_tls=yes
                    > -o smtpd_sasl_auth_enable=yes
                    > -o smtpd_client_restrictions=permit_sasl_authenticated,reject
                    > -o content_filter=smtp-amavis:[127.0.0.1]:10026
                    > # -o receive_override_options=no_address_mappings
                    > #628 inet n - - - - qmqpd
                    > pickup fifo n - - 60 1 pickup
                    > -o content_filter=
                    > cleanup unix n - - - 0 cleanup
                    > amavis-cleanup unix n - - - 0 cleanup
                    > -o virtual_alias_maps=

                    This is it. The after the filter smtpd have no virtual_alias_maps.
                    don't play games with *_maps when filtering. you should not need any
                    setting like this.

                    > 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
                    > smtp unix - - - - - smtp
                    > # When relaying mail as backup MX, disable fallback_relay to avoid MX loops
                    > relay unix - - - - - smtp
                    > -o fallback_relay=
                    > # -o smtp_helo_timeout=5 -o smtp_connect_timeout=5
                    > showq unix n - - - - showq
                    > error unix - - - - - error
                    > discard unix - - - - - discard
                    > local unix - n n - - local
                    > virtual unix - n n - - virtual
                    > lmtp unix - - - - - lmtp
                    > anvil unix - - - - 1 anvil
                    > scache unix - - - - 1 scache
                    > #
                    > # ====================================================================
                    > # 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}
                    > maildrop unix - n n - - pipe
                    > flags=DRhu user=vmail:daemon argv=/usr/bin/maildrop -w 90
                    > -d ${user}@${nexthop} ${extension} ${recipient} ${user} ${nexthop}
                    > vacation unix - n n - - pipe
                    > flags=Rq user=vacation argv=/var/spool/vacation/vacation.pl
                    > -f ${sender} -- ${recipient}
                    > #
                    > # 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}
                    > smtp-amavis unix - - n - 6 smtp
                    > -o smtp_data_done_timeout=1200
                    > -o smtp_send_xforward_command=yes
                    > -o disable_dns_lookups=yes
                    > -o
                    > receive_override_options=no_header_body_checks,no_unknown_recipient_checks
                    > 127.0.0.1:10025 inet n - n - - smtpd
                    > -o cleanup_service_name=amavis-cleanup
                    > -o content_filter=
                    > -o local_recipient_maps=

                    nor do you need this.

                    > -o relay_recipient_maps=

                    nor this.

                    > -o smtpd_restriction_classes=
                    > -o smtpd_delay_reject=no
                    > -o smtpd_client_restrictions=permit_mynetworks,reject
                    > -o smtpd_helo_restrictions=
                    > -o smtpd_sender_restrictions=
                    > -o smtpd_recipient_restrictions=permit_mynetworks,reject
                    > -o smtpd_data_restrictions=reject_unauth_pipelining
                    > -o smtpd_end_of_data_restrictions=
                    > -o mynetworks=127.0.0.0/8
                    > -o smtpd_error_sleep_time=0
                    > -o smtpd_soft_error_limit=1001
                    > -o smtpd_hard_error_limit=1000
                    > -o smtpd_client_connection_count_limit=0
                    > -o smtpd_client_connection_rate_limit=0
                    > -o
                    > receive_override_options=no_header_body_checks,no_unknown_recipient_checks
                    >
                    >
                    > log output:
                    >
                    > with -o receive_override_options=no_address_mappings (as shown upper)
                    >
                    > Jan 2 14:16:51 smtp amavis[12465]: (12465-07) Passed CLEAN, MYNETS
                    > LOCAL [X.Y.Z.W] [X.Y.W.Q] <some@...> -> <prdprd@...>,
                    > Message-ID: <Pine.LNX.4.64.0801021405310.5021@localhost>, mail_id:
                    > sR4aAPT26nQS, Hits: -2.459, queued_as: 2FE9F5417D, 1198 ms
                    > Jan 2 14:16:51 smtp postfix/smtp[12968]: EBB0B5412C:
                    > to=<prdprd@...>, relay=127.0.0.1[127.0.0.1]:10024, delay=1.3,
                    > delays=0.09/0/0/1.2, dsn=2.6.0, status=sent (250 2.6.0 Ok, id=12465-07,
                    > from MTA([127.0.0.1]:10025): 250 2.0.0 Ok: queued as 2FE9F5417D)
                    > Jan 2 14:16:51 smtp postfix/pipe[13000]: 2FE9F5417D:
                    > to=<prdprd@...>, relay=maildrop, delay=0.07,
                    > delays=0.05/0.01/0/0.01, dsn=5.1.1, status=bounced (user unknown.
                    > Command output: Invalid user specified. )
                    >
                    > with -o receiv... commented:
                    >
                    > Jan 2 13:26:31 smtp postfix/smtp[3135]: 4E4B654888:
                    > to=<pikacu@...>, orig_to=<prdprd@...>,
                    > relay=127.0.0.1[127.0.0.1]:10024, delay=1.4, delays=0.11/0/0/1.2,
                    > dsn=2.6.0, status=sent (250 2.6.0 Ok, id=02776-06, from
                    > MTA([127.0.0.1]:10025): 250 2.0.0 Ok: queued as 8EBC454A3D)
                    >
                    > BUT doesn't incude X-Original-To header :-(
                  • Ondrej Pachner
                    hi, thank you for advice, but the problem persists: I still don t have X-Original-To header in the mail, although I have enable_original_recipient = yes :-(
                    Message 9 of 11 , Jan 2, 2008
                    • 0 Attachment
                      hi,
                      thank you for advice, but the problem persists: I still don't have
                      X-Original-To header in the mail, although I have
                      enable_original_recipient = yes :-(

                      O.Pachner

                      --8<-- the header of received email --8<--
                      Return-Path: <sender@...>
                      Delivered-To: pikacu@... <- this is catch-all box
                      Received: from localhost (localhost [127.0.0.1])
                      by smtp.domain.tld (Postfix) with ESMTP id CD4C9542BB
                      for <papagaj@...>; Wed, 2 Jan 2008 14:50:17 +0100 (CET)
                      X-Virus-Scanned: Debian amavisd-new at lam.cz
                      X-Spam-Score: -2.465
                      X-Spam-Level:
                      X-Spam-Status: No, score=-2.465 required=6.31 tests=[AWL=0.134,
                      BAYES_00=-2.599]
                      Received: from smtp.domain.tld ([127.0.0.1])
                      by localhost (smtp.domain.tld [127.0.0.1]) (amavisd-new, port
                      10024)
                      with ESMTP id 0T4n58xNM5ZL for <papagaj@...>;
                      Wed, 2 Jan 2008 14:50:16 +0100 (CET)
                      Received: from [X.Y.Z.Q] (unknown [A.B.C.D])
                      by smtp.domain.tld (Postfix) with ESMTP id 902D05429A
                      for <papagaj@...>; Wed, 2 Jan 2008 14:50:16 +0100 (CET)
                      Date: Wed, 2 Jan 2008 14:39:35 +0100 (CET)
                      From: Sender <sender@...>
                      X-X-Sender: myname@mymachine
                      To: undisclosed-recipients: ;
                      Subject: testik jiso raz
                      Message-ID: <Pine.LNX.4.64.0801021439020.5021@localhost>
                      MIME-Version: 1.0
                      Content-Type: TEXT/PLAIN; charset=US-ASCII; format=flowed
                      --8<--

                      On Wed, 2 Jan 2008, mouss wrote:

                      >> amavis-cleanup unix n - - - 0 cleanup
                      >> -o virtual_alias_maps=
                      >
                      > This is it. The after the filter smtpd have no virtual_alias_maps.
                      > don't play games with *_maps when filtering. you should not need any setting
                      > like this.
                      >
                      >> -o local_recipient_maps=
                      >
                      > nor do you need this.
                      >
                      >> -o relay_recipient_maps=
                      >
                      > nor this.
                    • Ondrej Pachner
                      Hi, thank you a lot, this helped :-) How could I forgot maildrop?! O.Pachner
                      Message 10 of 11 , Jan 2, 2008
                      • 0 Attachment
                        Hi,
                        thank you a lot, this helped :-) How could I forgot maildrop?!
                        O.Pachner

                        On Wed, 2 Jan 2008, mouss wrote:
                        > Ondrej Pachner wrote:
                        >> hi,
                        >> thank you for advice, but the problem persists: I still don't have
                        >> X-Original-To header in the mail, although I have
                        >> enable_original_recipient = yes :-(
                        >
                        > maildrop unix - n n - - pipe
                        > flags=DRhu user=vmail:daemon argv=/usr/bin/maildrop -w 90
                        > -d ${user}@${nexthop} ${extension} ${recipient} ${user} ${nexthop}
                        >
                        > look at the flags=...
                      • mouss
                        ... You have maildrop unix - n n - - pipe flags=DRhu user=vmail:daemon argv=/usr/bin/maildrop -w 90 -d ${user}@${nexthop}
                        Message 11 of 11 , Jan 2, 2008
                        • 0 Attachment
                          Ondrej Pachner wrote:
                          > hi,
                          > thank you for advice, but the problem persists: I still don't have
                          > X-Original-To header in the mail, although I have
                          > enable_original_recipient = yes :-(
                          >

                          You have

                          maildrop unix - n n - - pipe
                          flags=DRhu user=vmail:daemon argv=/usr/bin/maildrop -w 90
                          -d ${user}@${nexthop} ${extension} ${recipient} ${user} ${nexthop}

                          look at the flags=...

                          From http://www.postfix.org/pipe.8.html

                          O Prepend an "X-Original-To: recipient" mes-
                          sage header with the recipient address as
                          given to Postfix. Note: for this to work,
                          the transport_destination_recipient_limit
                          must be 1 (see SINGLE-RECIPIENT DELIVERY
                          above for details).

                          This feature is available as of Postfix 2.0.
                        Your message has been successfully submitted and would be delivered to recipients shortly.