Postfix ignoriert /etc/aliases

wstuermer

Active Member
Hallo,

Postfix ignoriert mir auf 2 Maschinen (Ubuntu 10.04 LTS+Ubuntu 12.04LTS) scheinbar die /etc/aliases. Mir gehen langsam die Ideen aus. Ich würde erwarten, dass Mails vom crond u.ä., welche an "root" gehen, an log_catcher@domain.de weitergeleitet werden. Stattdessen werden diese aber an root@domain.de geschickt.

Eine /root/.forward existiert nicht. Die /etc/aliases.db wurde mit newaliases bereits neugebaut und über den Timestamp auch verifiziert. "postconf -n" entspricht dem Inhalt der main.cf.

Anbei die aliases, die Postfix-Configs und das Verbose-Log. Ersetzt wurde der Domainname mit "domain" und der local hostname mit "hostname".

Code:
# cat /etc/aliases
# See man 5 aliases for format
postmaster:    root
root:   log_catcher@domain.de

Code:
# grep -v "^#" /etc/postfix/main.cf|grep -v "^$"
smtpd_banner = $myhostname ESMTP $mail_name (Ubuntu)
biff = no
append_dot_mydomain = no
readme_directory = no
smtpd_tls_cert_file=/etc/ssl/certs/ssl-cert-snakeoil.pem
smtpd_tls_key_file=/etc/ssl/private/ssl-cert-snakeoil.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
myhostname = hostname.pci_misc.domain.de
alias_maps = hash:/etc/aliases
alias_database = hash:/etc/aliases
myorigin = /etc/mailname
mydestination = hostname.pci_misc.domain.de, localhost.pci_misc.domain.de, localhost
relayhost = smtp.ct-dmz.domain.de
mynetworks = 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128
mailbox_size_limit = 0
recipient_delimiter = +
inet_interfaces = loopback-only
inet_protocols = ipv4

Code:
# grep -v "^#" /etc/postfix/master.cf|grep -v "^$"
smtp      inet  n       -       n       -       -       smtpd -v
pickup    fifo  n       -       -       60      1       pickup
cleanup   unix  n       -       n       -       0       cleanup -v
qmgr      fifo  n       -       n       300     1       qmgr
tlsmgr    unix  -       -       -       1000?   1       tlsmgr
rewrite   unix  -       -       n       -       -       trivial-rewrite -v
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
relay     unix  -       -       -       -       -       smtp
        -o smtp_fallback_relay=
showq     unix  n       -       -       -       -       showq
error     unix  -       -       -       -       -       error
retry     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
maildrop  unix  -       n       n       -       -       pipe
  flags=DRhu user=vmail argv=/usr/bin/maildrop -d ${recipient}
uucp      unix  -       n       n       -       -       pipe
  flags=Fqhu user=uucp argv=uux -r -n -z -a$sender - $nexthop!rmail ($recipient)
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}


Code:
Jul 24 10:40:16 hostname postfix/cleanup[4974]: name_mask: ipv4
Jul 24 10:40:16 hostname postfix/cleanup[4974]: inet_addr_local: configured 2 IPv4 addresses
Jul 24 10:40:16 hostname postfix/cleanup[4974]: process generation: 6 (6)
Jul 24 10:40:16 hostname postfix/cleanup[4974]: name_mask: envelope_sender
Jul 24 10:40:16 hostname postfix/cleanup[4974]: name_mask: envelope_recipient
Jul 24 10:40:16 hostname postfix/cleanup[4974]: name_mask: header_sender
Jul 24 10:40:16 hostname postfix/cleanup[4974]: name_mask: header_recipient
Jul 24 10:40:16 hostname postfix/cleanup[4974]: name_mask: envelope_sender
Jul 24 10:40:16 hostname postfix/cleanup[4974]: name_mask: header_sender
Jul 24 10:40:16 hostname postfix/cleanup[4974]: name_mask: envelope_recipient
Jul 24 10:40:16 hostname postfix/cleanup[4974]: name_mask: header_recipient
Jul 24 10:40:16 hostname postfix/cleanup[4974]: name_mask: envelope_sender
Jul 24 10:40:16 hostname postfix/cleanup[4974]: name_mask: header_sender
Jul 24 10:40:16 hostname postfix/cleanup[4974]: name_mask: header_recipient
Jul 24 10:40:16 hostname postfix/cleanup[4974]: match_string: fast_flush_domains ~? debug_peer_list
Jul 24 10:40:16 hostname postfix/cleanup[4974]: match_string: fast_flush_domains ~? fast_flush_domains
Jul 24 10:40:16 hostname postfix/cleanup[4974]: name_mask: canonical
Jul 24 10:40:16 hostname postfix/cleanup[4974]: name_mask: virtual
Jul 24 10:40:16 hostname postfix/cleanup[4974]: connection established
Jul 24 10:40:16 hostname postfix/cleanup[4974]: master_notify: status 0
Jul 24 10:40:16 hostname postfix/cleanup[4974]: mail_flow_get: 1 1
Jul 24 10:40:16 hostname postfix/cleanup[4974]: open incoming/3CB7F1FF12
Jul 24 10:40:16 hostname postfix/cleanup[4974]: cleanup_open: open incoming/3CB7F1FF12
Jul 24 10:40:16 hostname postfix/cleanup[4974]: send attr queue_id = 3CB7F1FF12
Jul 24 10:40:16 hostname postfix/pickup[4786]: 3CB7F1FF12: uid=0 from=<root>
Jul 24 10:40:16 hostname postfix/cleanup[4974]: cleanup socket: wanted attribute: flags
Jul 24 10:40:16 hostname postfix/cleanup[4974]: input attribute name: flags
Jul 24 10:40:16 hostname postfix/cleanup[4974]: input attribute value: 115
Jul 24 10:40:16 hostname postfix/cleanup[4974]: cleanup socket: wanted attribute: (list terminator)
Jul 24 10:40:16 hostname postfix/cleanup[4974]: input attribute name: (end)
Jul 24 10:40:16 hostname postfix/cleanup[4974]: cleanup flags = enable_bad_mail_bounce enable_header_body_filter enable_automatic_bcc enable_address_mapping enable_milters
Jul 24 10:40:16 hostname postfix/cleanup[4974]: initial envelope T 1343119216 243480
Jul 24 10:40:16 hostname postfix/cleanup[4974]: initial envelope A rewrite_context=local
Jul 24 10:40:16 hostname postfix/cleanup[4974]: initial envelope F CronDaemon
Jul 24 10:40:16 hostname postfix/cleanup[4974]: initial envelope S root
Jul 24 10:40:16 hostname postfix/cleanup[4974]: connect to subsystem private/rewrite
Jul 24 10:40:16 hostname postfix/cleanup[4974]: send attr request = rewrite
Jul 24 10:40:16 hostname postfix/cleanup[4974]: send attr rule = local
Jul 24 10:40:16 hostname postfix/cleanup[4974]: send attr address = root
Jul 24 10:40:16 hostname postfix/trivial-rewrite[4975]: name_mask: ipv4
Jul 24 10:40:16 hostname postfix/trivial-rewrite[4975]: inet_addr_local: configured 2 IPv4 addresses
Jul 24 10:40:16 hostname postfix/trivial-rewrite[4975]: process generation: 7 (7)
Jul 24 10:40:16 hostname postfix/trivial-rewrite[4975]: match_string: relay_domains ~? debug_peer_list
Jul 24 10:40:16 hostname postfix/trivial-rewrite[4975]: match_string: relay_domains ~? fast_flush_domains
Jul 24 10:40:16 hostname postfix/trivial-rewrite[4975]: match_string: relay_domains ~? mynetworks
Jul 24 10:40:16 hostname postfix/trivial-rewrite[4975]: match_string: relay_domains ~? permit_mx_backup_networks
Jul 24 10:40:16 hostname postfix/trivial-rewrite[4975]: match_string: relay_domains ~? qmqpd_authorized_clients
Jul 24 10:40:16 hostname postfix/trivial-rewrite[4975]: match_string: relay_domains ~? smtpd_access_maps
Jul 24 10:40:16 hostname postfix/trivial-rewrite[4975]: match_list_match: relay_domains: no match
Jul 24 10:40:16 hostname postfix/trivial-rewrite[4975]: connection established fd 128
Jul 24 10:40:16 hostname postfix/trivial-rewrite[4975]: master_notify: status 0
Jul 24 10:40:16 hostname postfix/trivial-rewrite[4975]: rewrite socket: wanted attribute: request
Jul 24 10:40:16 hostname postfix/trivial-rewrite[4975]: input attribute name: request
Jul 24 10:40:16 hostname postfix/trivial-rewrite[4975]: input attribute value: rewrite

Jul 24 10:40:16 hostname postfix/trivial-rewrite[4975]: rewrite socket: wanted attribute: rule
Jul 24 10:40:16 hostname postfix/trivial-rewrite[4975]: input attribute name: rule
Jul 24 10:40:16 hostname postfix/trivial-rewrite[4975]: input attribute value: local
Jul 24 10:40:16 hostname postfix/trivial-rewrite[4975]: rewrite socket: wanted attribute: address
Jul 24 10:40:16 hostname postfix/trivial-rewrite[4975]: input attribute name: address
Jul 24 10:40:16 hostname postfix/trivial-rewrite[4975]: input attribute value: root
Jul 24 10:40:16 hostname postfix/trivial-rewrite[4975]: rewrite socket: wanted attribute: (list terminator)
Jul 24 10:40:16 hostname postfix/trivial-rewrite[4975]: input attribute name: (end)
Jul 24 10:40:16 hostname postfix/trivial-rewrite[4975]: `local' `root' -> `root@domain.de'
Jul 24 10:40:16 hostname postfix/trivial-rewrite[4975]: send attr flags = 0
Jul 24 10:40:16 hostname postfix/trivial-rewrite[4975]: send attr address = root@domain.de
Jul 24 10:40:16 hostname postfix/trivial-rewrite[4975]: master_notify: status 1
Jul 24 10:40:16 hostname postfix/cleanup[4974]: private/rewrite socket: wanted attribute: flags
Jul 24 10:40:16 hostname postfix/cleanup[4974]: input attribute name: flags
Jul 24 10:40:16 hostname postfix/cleanup[4974]: input attribute value: 0
Jul 24 10:40:16 hostname postfix/cleanup[4974]: private/rewrite socket: wanted attribute: address
Jul 24 10:40:16 hostname postfix/cleanup[4974]: input attribute name: address
Jul 24 10:40:16 hostname postfix/cleanup[4974]: input attribute value: root@domain.de
Jul 24 10:40:16 hostname postfix/cleanup[4974]: private/rewrite socket: wanted attribute: (list terminator)
Jul 24 10:40:16 hostname postfix/cleanup[4974]: input attribute name: (end)
Jul 24 10:40:16 hostname postfix/cleanup[4974]: rewrite_clnt: local: root -> root@domain.de
Jul 24 10:40:16 hostname postfix/cleanup[4974]: initial envelope R root
Jul 24 10:40:16 hostname postfix/cleanup[4974]: rewrite_clnt: cached: local: root -> root@domain.de
Jul 24 10:40:16 hostname postfix/cleanup[4974]: been_here: ?0?root?root@domain.de: 0
Jul 24 10:40:16 hostname postfix/cleanup[4974]: initial envelope M 
Jul 24 10:40:16 hostname postfix/cleanup[4974]: cleanup_header_callback: 'Received: by hostname.pci_misc.domain.de (Postfix, from userid 0)??id 3CB7F1FF12; Tue, 24 Jul 2012 10:40:16 +0200 (CEST)'
Jul 24 10:40:16 hostname postfix/cleanup[4974]: cleanup_header_callback: 'From: root (Cron Daemon)'
Jul 24 10:40:16 hostname postfix/cleanup[4974]: rewrite_sender: From
Jul 24 10:40:16 hostname postfix/cleanup[4974]: rewrite_clnt: cached: local: root -> root@domain.de
Jul 24 10:40:16 hostname postfix/cleanup[4974]: cleanup_header_callback: 'To: root'
Jul 24 10:40:16 hostname postfix/cleanup[4974]: rewrite_recip: To
Jul 24 10:40:16 hostname postfix/cleanup[4974]: rewrite_clnt: cached: local: root -> root@domain.de
Jul 24 10:40:16 hostname postfix/cleanup[4974]: cleanup_header_callback: 'Subject: Cron <root@hostname> nice -n 10 /root/clamav.sh 2>/dev/null'
Jul 24 10:40:16 hostname postfix/cleanup[4974]: header_token: text / plain
Jul 24 10:40:16 hostname postfix/cleanup[4974]: cleanup_header_callback: 'Content-Type: text/plain; charset=ANSI_X3.4-1968'
Jul 24 10:40:16 hostname postfix/cleanup[4974]: cleanup_header_callback: 'X-Cron-Env: <SHELL=/bin/sh>'
Jul 24 10:40:16 hostname postfix/cleanup[4974]: cleanup_header_callback: 'X-Cron-Env: <HOME=/root>'
Jul 24 10:40:16 hostname postfix/cleanup[4974]: cleanup_header_callback: 'X-Cron-Env: <PATH=/usr/bin:/bin>'
Jul 24 10:40:16 hostname postfix/cleanup[4974]: cleanup_header_callback: 'X-Cron-Env: <LOGNAME=root>'
Jul 24 10:40:16 hostname postfix/cleanup[4974]: 3CB7F1FF12: message-id=<20120724084016.3CB7F1FF12@hostname.pci_misc.domain.de>
Jul 24 10:40:16 hostname postfix/cleanup[4974]: extracted envelope E 
Jul 24 10:40:16 hostname postfix/cleanup[4974]: cleanup_flush: status 0
Jul 24 10:40:16 hostname postfix/cleanup[4974]: send attr status = 0
Jul 24 10:40:16 hostname postfix/cleanup[4974]: send attr reason = 
Jul 24 10:40:16 hostname postfix/cleanup[4974]: master_notify: status 1
Jul 24 10:40:16 hostname postfix/cleanup[4974]: connection closed
Jul 24 10:40:16 hostname postfix/qmgr[4787]: 3CB7F1FF12: from=<root@domain.de>, size=818, nrcpt=1 (queue active)
Jul 24 10:40:16 hostname postfix/trivial-rewrite[4975]: connection established fd 129
Jul 24 10:40:16 hostname postfix/trivial-rewrite[4975]: master_notify: status 0
Jul 24 10:40:16 hostname postfix/trivial-rewrite[4975]: rewrite socket: wanted attribute: request
Jul 24 10:40:16 hostname postfix/trivial-rewrite[4975]: input attribute name: request
Jul 24 10:40:16 hostname postfix/trivial-rewrite[4975]: input attribute value: resolve
Jul 24 10:40:16 hostname postfix/trivial-rewrite[4975]: rewrite socket: wanted attribute: sender
Jul 24 10:40:16 hostname postfix/trivial-rewrite[4975]: input attribute name: sender

Jul 24 10:40:16 hostname postfix/trivial-rewrite[4975]: input attribute value: root@domain.de
Jul 24 10:40:16 hostname postfix/trivial-rewrite[4975]: rewrite socket: wanted attribute: address
Jul 24 10:40:16 hostname postfix/trivial-rewrite[4975]: input attribute name: address
Jul 24 10:40:16 hostname postfix/trivial-rewrite[4975]: input attribute value: root@domain.de
Jul 24 10:40:16 hostname postfix/trivial-rewrite[4975]: rewrite socket: wanted attribute: (list terminator)
Jul 24 10:40:16 hostname postfix/trivial-rewrite[4975]: input attribute name: (end)
Jul 24 10:40:16 hostname postfix/trivial-rewrite[4975]: match_string: domain.de ~? hostname.pci_misc.domain.de
Jul 24 10:40:16 hostname postfix/trivial-rewrite[4975]: match_string: domain.de ~? localhost.pci_misc.domain.de
Jul 24 10:40:16 hostname postfix/trivial-rewrite[4975]: match_string: domain.de ~? localhost
Jul 24 10:40:16 hostname postfix/trivial-rewrite[4975]: match_list_match: domain.de: no match
Jul 24 10:40:16 hostname postfix/trivial-rewrite[4975]: match_hostname: domain.de ~? hostname.pci_misc.domain.de
Jul 24 10:40:16 hostname postfix/trivial-rewrite[4975]: match_hostname: domain.de ~? localhost.pci_misc.domain.de
Jul 24 10:40:16 hostname postfix/trivial-rewrite[4975]: match_hostname: domain.de ~? localhost
Jul 24 10:40:16 hostname postfix/trivial-rewrite[4975]: match_list_match: domain.de: no match
Jul 24 10:40:16 hostname postfix/trivial-rewrite[4975]: `root@domain.de' -> `root@domain.de' -> (`smtp' `smtp.ct-dmz.domain.de' `root@domain.de' `4096')
Jul 24 10:40:16 hostname postfix/trivial-rewrite[4975]: send attr flags = 0
Jul 24 10:40:16 hostname postfix/trivial-rewrite[4975]: send attr transport = smtp
Jul 24 10:40:16 hostname postfix/trivial-rewrite[4975]: send attr nexthop = smtp.ct-dmz.domain.de
Jul 24 10:40:16 hostname postfix/trivial-rewrite[4975]: send attr recipient = root@domain.de
Jul 24 10:40:16 hostname postfix/trivial-rewrite[4975]: send attr flags = 4096
Jul 24 10:40:16 hostname postfix/trivial-rewrite[4975]: master_notify: status 1
Jul 24 10:40:16 hostname postfix/smtp[4976]: 3CB7F1FF12: to=<root@domain.de>, orig_to=<root>, relay=smtp.ct-dmz.domain.de[192.168.70.25]:25, delay=0.06, delays=0.02/0.01/0.01/0.02, dsn=2.0.0, status=sent (250 2.0.0 Ok: queued as 6E296202A7)
Jul 24 10:40:16 hostname postfix/qmgr[4787]: 3CB7F1FF12: removed
Jul 24 10:40:21 hostname postfix/cleanup[4974]: rewrite stream disconnect
Jul 24 10:40:21 hostname postfix/trivial-rewrite[4975]: connection closed fd 128
Jul 24 10:40:21 hostname postfix/trivial-rewrite[4975]: connection closed fd 129
Jul 24 10:41:56 hostname postfix/cleanup[4974]: idle timeout -- exiting
 
Hallo wstuermer,

ist doch ziemlich klar was passiert.

Du hast myorigin gesetzt (wohl auf domain.de). Dadurch wird deine Mail an root automatisch mit domain.de qualifiziert (per trivial-rewrite):

Code:
Jul 24 10:40:16 hostname postfix/trivial-rewrite[4975]: `local' `root' -> `root@domain.de'
Jul 24 10:40:16 hostname postfix/trivial-rewrite[4975]: send attr flags = 0
Jul 24 10:40:16 hostname postfix/trivial-rewrite[4975]: send attr address = root@domain.de

Deine Mail läuft im Postfix weiter, jetzt an root@domain.de

Da aber domain.de nicht als 'local' gilt:

Code:
Jul 24 10:40:16 hostname postfix/trivial-rewrite[4975]: match_string: domain.de ~? hostname.pci_misc.domain.de
Jul 24 10:40:16 hostname postfix/trivial-rewrite[4975]: match_string: domain.de ~? localhost.pci_misc.domain.de
Jul 24 10:40:16 hostname postfix/trivial-rewrite[4975]: match_string: domain.de ~? localhost
Jul 24 10:40:16 hostname postfix/trivial-rewrite[4975]: match_list_match: domain.de: no match
Jul 24 10:40:16 hostname postfix/trivial-rewrite[4975]: match_hostname: domain.de ~? hostname.pci_misc.domain.de
Jul 24 10:40:16 hostname postfix/trivial-rewrite[4975]: match_hostname: domain.de ~? localhost.pci_misc.domain.de
Jul 24 10:40:16 hostname postfix/trivial-rewrite[4975]: match_hostname: domain.de ~? localhost
Jul 24 10:40:16 hostname postfix/trivial-rewrite[4975]: match_list_match: domain.de: no match
Jul 24 10:40:16 hostname postfix/trivial-rewrite[4975]: `root@domain.de' -> `root@domain.de' -> (`smtp' `smtp.ct-dmz.domain.de' `root@domain.de' `4096')

wird sie so an den smarthost weitergegeben.

Denn: /etc/aliases bzw. alias_database gelten nur für _local_ deliveries!

schöne Grüße,
Nils
 
... und dann sieht man vor lauter Bäumen den Wald nicht mehr.

Muchas Gracias für den Schlag mit dem Zaunpfahl :)
 
Back
Top