domain aliased to target with catchall

Dan
2012-12-18
2013-01-23
  • Dan
    Dan
    2012-12-18

    Hi,

    I have just setup my postfix/dovecot/mysql/etc. according to this page:
    http://www.exratione.com/2012/05/a-mailserver-on-ubuntu-1204-postfix-dovecot-mysql/

    It is working well, with one exception so far as I have tested.
    When I create a domain with a catch-all, and then alias another domain to it, I get 550 error when sending to an arbitrary address. Here's what I do to recreate the issue:

    I create a domain domain1.com, add a catchall address to it.
    I test it by sending a mail to abritraryaddress@domain1.com, with success.
    I create a domain domain2.com, and alias it to domain1.com.
    I test it by sending a mail to arbitraryaddress@domain2.com, with 550 failure, "user unknown in virtual mailbox table'.

    I have tried a workaround in which I delete the alias domain2.com,
    and add an alias *@domain2.com -> *@domain1.com,
    which works fine, but I suspect something has gone awry with my SQL or something.
    Has anybody got any insight as to what I have done wrong?

    Thanks,
    Dan

     
  • Your HowTo looks very good, but it is also affected by this paragraph from PostfixAdmin's INSTALL.TXT:

    There are also lots of HOWTOs around the web. Be warned that many of them  may be outdated or incomplete.
    Please stick to the PostfixAdmin documentation, and use those HOWTOs only if you need some additional information that is missing in the PostfixAdmin DOCUMENTS/ folder.

    In other words: the Postfix configuration described there is incomplete. Please use the configuration in POSTFIX_CONF.TXT and it will work.

    You might also want to contact the author of the (otherwise very good, at the first look) HowTo and ask him to add all virtual_* maps that are needed for alias domains.

     
  • Charles
    Charles
    2012-12-19

    Just fyi, you do realize that in 99.9% of cases, a catchall is a really, really bad idea, since it totally breaks recipient validation?

    Implementing one just to try to avoid dictionary harvest attacks is like chopping off your head to cure a pimple.