Postfix-Mails (funktioniert) an alle außer meiner Domain unter Debian

Postfix-Mails (funktioniert) an alle außer meiner Domain unter Debian

Ich habe einen Redmine-Server eingerichtet, den ich von Turnkey Linux bekommen habe. Mail funktioniert mehr oder weniger sofort. Ich kann an jeden mailen, der nicht in meiner Domäne ist.

Lassen Sie mich erklären:
Wenn ich den Mail-Befehl von der Befehlszeile aus ausführe und an meine persönliche E-Mail-Adresse (oder eine andere nicht zu einer Domäne gehörende E-Mail-Adresse) sende, funktioniert es. Wenn ich an jemanden in meiner Domäne sende, funktioniert es nicht. Unsere E-Mails werden von Google verarbeitet und funktionieren einwandfrei. Aus irgendeinem Grund erkennt dieser Computer die Domäne und versucht, sie selbst zu verarbeiten (was ich nicht möchte). Ich möchte nur, dass die E-Mails ihren natürlichen Weg zu Google (oder wohin auch immer) nehmen. Ich habe das Gefühl, dass es einwandfrei funktionieren wird, wenn ich die Domäne des Computers in eine andere als meine ändere (und das ist für mich in Ordnung). Ich habe versucht, dies zu tun, glaube aber, dass ich etwas übersehen habe. Für jede Hilfe wäre ich sehr dankbar!

Ich dachte, dass das Ändern der Domäne vielleicht Postfix austricksen könnte. Ich habe die Hostnamendatei geändert:

redmine.hsi.com

Hier ist die Datei main.cf:

# 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 = /etc/mailname

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

# TLS parameters
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

# See /usr/share/doc/postfix/TLS_README.gz in the postfix-doc package for
# information on enabling SSL in the smtp client.

myhostname = redmine
alias_maps = hash:/etc/aliases
alias_database = hash:/etc/aliases
mydestination = localdomain, localhost, localhost.localdomain, localhost
mynetworks = 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128
mailbox_size_limit = 0
recipient_delimiter = +
inet_interfaces = localhost
smtpd_recipient_restrictions = permit_mynetworks reject_unauth_destination
smtp_sasl_password_maps = hash:/etc/postfix/smtp_sasl_password_map

Hier ist die Datei 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").
#
# Do not forget to execute "postfix reload" after editing this file.
#
# ==========================================================================
# service type  private unpriv  chroot  wakeup  maxproc command + args
#               (yes)   (yes)   (yes)   (never) (100)
# ==========================================================================
smtp      inet  n       -       -       -       -       smtpd
#smtp      inet  n       -       -       -       1       postscreen
#smtpd     pass  -       -       -       -       -       smtpd
#dnsblog   unix  -       -       -       -       0       dnsblog
#tlsproxy  unix  -       -       -       -       0       tlsproxy
#submission inet n       -       -       -       -       smtpd
#  -o syslog_name=postfix/submission
#  -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 syslog_name=postfix/smtps
#  -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       -       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
relay     unix  -       -       -       -       -       smtp
#       -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
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}
#
# ====================================================================
#
# 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}

hier ist das mail.log

Feb 27 21:13:13 redmine postfix/pickup[15860]: 56D53C0D32: uid=0 from=<[email protected]>
Feb 27 21:13:13 redmine postfix/cleanup[19150]: 56D53C0D32: message-id=<20150227211313.56D53C0D32@redmine>
Feb 27 21:13:13 redmine postfix/qmgr[15861]: 56D53C0D32: from=<[email protected]>, size=349, nrcpt=1 (queue active)
Feb 27 21:13:13 redmine postfix/smtp[19159]: 56D53C0D32: to=<[email protected]>, relay=none, delay=0.06, delays=0.05/0.01/0/0, dsn=5.4.4, status=bounced (Host or domain name not found. Name service error for name=humansolutionsinc.com type=AAAA: Host found but no data record of requested type)
Feb 27 21:13:13 redmine postfix/cleanup[19150]: 5E24FC0D33: message-id=<20150227211313.5E24FC0D33@redmine>
Feb 27 21:13:13 redmine postfix/qmgr[15861]: 5E24FC0D33: from=<>, size=2276, nrcpt=1 (queue active)
Feb 27 21:13:13 redmine postfix/bounce[19166]: 56D53C0D32: sender non-delivery notification: 5E24FC0D33
Feb 27 21:13:13 redmine postfix/qmgr[15861]: 56D53C0D32: removed
Feb 27 21:13:13 redmine postfix/smtp[19159]: 5E24FC0D33: to=<[email protected]>, relay=none, delay=0.01, delays=0.01/0/0/0, dsn=5.4.4, status=bounced (Host or domain name not found. Name service error for name=redmine.hsi.com type=AAAA: Host not found)
Feb 27 21:13:13 redmine postfix/qmgr[15861]: 5E24FC0D33: removed

hier die mail.info:

Feb 27 21:13:13 redmine postfix/pickup[15860]: 56D53C0D32: uid=0 from=<[email protected]>
Feb 27 21:13:13 redmine postfix/cleanup[19150]: 56D53C0D32: message-id=<20150227211313.56D53C0D32@redmine>
Feb 27 21:13:13 redmine postfix/qmgr[15861]: 56D53C0D32: from=<[email protected]>, size=349, nrcpt=1 (queue active)
Feb 27 21:13:13 redmine postfix/smtp[19159]: 56D53C0D32: to=<[email protected]>, relay=none, delay=0.06, delays=0.05/0.01/0/0, dsn=5.4.4, status=bounced (Host or domain name not found. Name service error for name=humansolutionsinc.com type=AAAA: Host found but no data record of requested type)
Feb 27 21:13:13 redmine postfix/cleanup[19150]: 5E24FC0D33: message-id=<20150227211313.5E24FC0D33@redmine>
Feb 27 21:13:13 redmine postfix/qmgr[15861]: 5E24FC0D33: from=<>, size=2276, nrcpt=1 (queue active)
Feb 27 21:13:13 redmine postfix/bounce[19166]: 56D53C0D32: sender non-delivery notification: 5E24FC0D33
Feb 27 21:13:13 redmine postfix/qmgr[15861]: 56D53C0D32: removed
Feb 27 21:13:13 redmine postfix/smtp[19159]: 5E24FC0D33: to=<[email protected]>, relay=none, delay=0.01, delays=0.01/0/0/0, dsn=5.4.4, status=bounced (Host or domain name not found. Name service error for name=redmine.hsi.com type=AAAA: Host not found)
Feb 27 21:13:13 redmine postfix/qmgr[15861]: 5E24FC0D33: removed

Wie von Tutul vorgeschlagen, habe ich die folgende Zeile zu main.cf hinzugefügt, Postfix neu gestartet und erneut versucht, die E-Mail zu versenden, mit dem gleichen Ergebnis: E-Mails an andere Domänen als humansolutionsinc.com funktionieren, E-Mails an Personen innerhalb dieser Domäne jedoch nicht.

inet_protocols=ipv4

Hier ist die Ausgabe von dig humansolutionsinc.com:

root@redmine ~# dig humansolutionsinc.com

; <<>> DiG 9.8.4-rpz2+rl005.12-P1 <<>> humansolutionsinc.com
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 31920
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 1, ADDITIONAL: 0

;; QUESTION SECTION:
;humansolutionsinc.com.         IN      A

;; AUTHORITY SECTION:
humansolutionsinc.com.  3600    IN      SOA     hsiwd1.hsi.com. hostmaster.hsi.com. 5 900 600 86400 3600

;; Query time: 1 msec
;; SERVER: 192.168.1.4#53(192.168.1.4)
;; WHEN: Mon Mar  2 14:03:05 2015
;; MSG SIZE  rcvd: 97

und die Ausgabe von dig humansolutionsinc.com mx:

root@redmine ~# dig humansolutionsinc.com mx

; <<>> DiG 9.8.4-rpz2+rl005.12-P1 <<>> humansolutionsinc.com mx
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 36172
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 1, ADDITIONAL: 0

;; QUESTION SECTION:
;humansolutionsinc.com.         IN      MX

;; AUTHORITY SECTION:
humansolutionsinc.com.  3600    IN      SOA     hsiwd1.hsi.com. hostmaster.hsi.com. 5 900 600 86400 3600

;; Query time: 1 msec
;; SERVER: 192.168.1.4#53(192.168.1.4)
;; WHEN: Mon Mar  2 14:03:13 2015
;; MSG SIZE  rcvd: 97

Großartig! Nach einer Reihe von Neustarts (um andere Probleme zu beheben - die nichts mit E-Mails zu tun haben)NEINMail wird versendet

OK, zurück zum Ausgangspunkt. Ich hatte /etc/host und /etc/hots in redmine geändert (ohne die Domäne). Anschließend habe ich sie wieder in redmine.hsi.com geändert und Folgendes ausgeführt:

invoke-rc.d hostname.sh start
invoke-rc.d networking force-reload 

Antwort1

Reparieren Sie Ihren NS-Server 192.168.1.4. Er sollte korrekte MX- und A-Einträge zurückgeben, statt einer leeren Antwort wie oben.

Erläuterung:

Diese Protokollzeilen

Feb 27 21:13:13 redmine postfix/pickup[15860]: 56D53C0D32: uid=0 from=<[email protected]>
Feb 27 21:13:13 redmine postfix/cleanup[19150]: 56D53C0D32: message-id=<20150227211313.56D53C0D32@redmine>
Feb 27 21:13:13 redmine postfix/qmgr[15861]: 56D53C0D32: from=<[email protected]>, size=349, nrcpt=1 (queue active)
Feb 27 21:13:13 redmine postfix/smtp[19159]: 56D53C0D32: to=<[email protected]>, relay=none, delay=0.06, delays=0.05/0.01/0/0, dsn=5.4.4, status=bounced (Host or domain name not found. Name service error for name=humansolutionsinc.com type=AAAA: Host found but no data record of requested type) 

teilen Sie uns mit, dass eine per mailBefehl aufgerufene E-Mail mit dem Absender[email geschützt]und Empfänger[email geschützt].

Weil Domainwww.humansolutionsinc.comist im mydestinationParameter nicht definiert, dann wird Postfix diese Domain als ausgehende Domain markieren, daher muss Postfix sie über Remote-SMTP senden. Um zu bestimmen, wo der Mailserver ist, der fürwww.humansolutionsinc.com, Postfix verwendet DNS-Lookup, insbesondere zum Suchen von MX-Einträgen (und optional A-Einträgen). Wir können Befehle verwenden, digum NS-Lookup zu simulieren.

Hier die (richtige) Dig-Ausgabe von MEINEM Server

$ dig humansolutionsinc.com

; <<>> DiG 9.9.3-rpz2+rl.13214.22-P2-Ubuntu-1:9.9.3.dfsg.P2-4ubuntu1 <<>> humansolutionsinc.com
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 12591
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 512
;; QUESTION SECTION:
;humansolutionsinc.com.         IN      A

;; ANSWER SECTION:
humansolutionsinc.com.  1199    IN      A       98.136.187.13

;; Query time: 1508 msec
;; SERVER: 8.8.8.8#53(8.8.8.8)
;; WHEN: Mon Mar 02 19:21:03 WIB 2015
;; MSG SIZE  rcvd: 66

Und

$ dig humansolutionsinc.com MX

; <<>> DiG 9.9.3-rpz2+rl.13214.22-P2-Ubuntu-1:9.9.3.dfsg.P2-4ubuntu1 <<>> humansolutionsinc.com MX
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 35479
;; flags: qr rd ra; QUERY: 1, ANSWER: 5, AUTHORITY: 0, ADDITIONAL: 1

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 512
;; QUESTION SECTION:
;humansolutionsinc.com.         IN      MX

;; ANSWER SECTION:
humansolutionsinc.com.  599     IN      MX      10 aspmx.l.google.com.
humansolutionsinc.com.  599     IN      MX      20 alt1.aspmx.l.google.com.
humansolutionsinc.com.  599     IN      MX      20 alt2.aspmx.l.google.com.
humansolutionsinc.com.  599     IN      MX      30 aspmx2.googlemail.com.
humansolutionsinc.com.  599     IN      MX      30 aspmx3.googlemail.com.

;; Query time: 942 msec
;; SERVER: 8.8.8.8#53(8.8.8.8)
;; WHEN: Mon Mar 02 19:21:08 WIB 2015
;; MSG SIZE  rcvd: 180

Im Vergleich zu meiner Version enthält Ihre Dig-Ausgabenull Antworten.

Das erklärt, warum Postfix sich mit einer allgemeinen Meldung beschwert wie

Host- oder Domänenname nicht gefunden. Nameservice-Fehler für Name=humansolutionsinc.com Typ=AAAA:Host gefunden, aber kein Datensatz des angeforderten Typs

Zuerst sucht Postfix nach dem MX-Eintrag. Wenn dies fehlschlägt, sucht es nach dem A-Eintrag (IPv4) und dann nach dem AAAA-Eintrag (IPv6). Da Postfix den Zielhost Ihrer Domäne in den drei oben genannten Einträgen nicht finden kann, hat Postfix Ihre E-Mail zurückgewiesen.

Antwort2

Versuchen Sie, meinen Hostnamen in etwas anderes zu ändern, zum Beispiel mail.redmine.hsi.com

verwandte Informationen