挖顯示外部配置?
我已經嘗試了 2 天來解決這個問題的答案。
我在某處有一個虛擬伺服器並安裝了 postfix/dovecot/mysql。它以某種方式工作。我可以使用創建的 MySQL 帳戶登錄 Outlook。
但我無法發送或接收電子郵件。我總是得到這些答案:
This message was created automatically by mail delivery software. A message that you sent could not be delivered to one or more of its recipients. This is a permanent error. The following address failed: "user1@mydomain.com": no valid MX hosts found
和
'savingbambi@notmydomain.com' am 21.11.2014 15:22 Server error: "554 5.7.1 <savingbambi@notmydomain.com>: Relay access denied"'
我更改了 named.conf.options 並添加了一個新的區域文件。我創建了區域文件並添加了 MX-Record。無論如何,我所做的更改似乎不會影響任何事情。
我的區域文件如下所示:
$TTL 604800 @ IN SOA mail.mydomain.com. ( 1 10800 3600 604800 38400) IN MX 10 mail.mydomain.com. @ IN A 46.38.124.67 mail. IN A 46.38.124.67
我的 named.conf.options
options { directory "/var/cache/bind"; forwarders { 8.8.8.8; }; dnssec-validation auto; auth-nxdomain no; # conform to RFC1035 listen-on {any;}; listen-on-v6 { any; }; }; zone "mail.mydomain.com" { type master; file "/etc/bind/db.mail.mydomain.com"; };
儘管我配置或做什麼。dig 總是得到相同的結果(例如,如果數據來自其他地方而不是我的區域文件):
; <<>> DiG 9.9.5-3-Ubuntu <<>> mail.mydomain.com ;; global options: +cmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 7485 ;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 2, ADDITIONAL: 3 ;; OPT PSEUDOSECTION: ; EDNS: version: 0, flags:; udp: 4096 ;; QUESTION SECTION: ;mail.mydomain.com. IN A ;; ANSWER SECTION: mail.mydomain.com. 6516 IN A 46.38.124.67 ;; AUTHORITY SECTION: mydomain.com. 63046 IN NS dns1.kontent.com. mydomain.com. 63046 IN NS dns2.kontent.com. ;; ADDITIONAL SECTION: dns1.kontent.com. 505 IN A 81.88.34.28 dns2.kontent.com. 1575 IN A 81.88.40.11 ;; Query time: 2 msec ;; SERVER: 46.38.225.230#53(46.38.225.230) ;; WHEN: Fri Nov 21 19:14:13 CET 2014 ;; MSG SIZE rcvd: 147
其他一些區域文件(db.0、db.127、db.255、db.empty、db.local、db.root)是否會覆蓋我的配置?
請幫忙。在這種情況下,我不是專家(顯然:-()。
更新 執行 named-checkconf -zj:
dns_rdata_fromtext: /etc/bind/db.mail.branchconcept.de:7: near eol: unexpected end of input /etc/bind/db.mail.branchconcept.de:8: ignoring out-of-zone data (branchconcept.de) zone mail.branchconcept.de/IN: loading from master file /etc/bind/db.mail.branchconcept.de failed: unexpected end of input zone mail.branchconcept.de/IN: not loaded due to errors. _default/mail.branchconcept.de/IN: unexpected end of input zone localhost/IN: loaded serial 2 zone 127.in-addr.arpa/IN: loaded serial 1 zone 0.in-addr.arpa/IN: loaded serial 1 zone 255.in-addr.arpa/IN: loaded serial 1
我的區域文件實際上看起來(經過一些嘗試並使用實際值):
$TTL 604800 @ IN SOA mail.branchconcept.de. ( 2011091202 10800 3600 604800 38400) branchconcept.de. IN MX 10 mail.branchconcept.de.
我通過我的 ISP 添加了這些條目,但它沒有幫助:
*.branchconcept.de DNS A-Record 46.38.232.105 branchconcept.de DNS MX-Record (Priorität: 10) mail.branchconcept.de *.branchconcept.de DNS-AAAA-Record 2002:2E26:E869:0:0:0:0:0
也許我會問它:假設 Postfix 和 Dovecot 安裝在域名為 domain.com 的伺服器上。我如何,
- 配置一個區域文件來獲取像 username@domain.com 這樣的郵件?
- 在後綴配置(main.cf)中我需要關心什麼?
我定義了子域mail.domain.com,因為我認為有必要定義。是這樣嗎?或者沒有必要,我只需要為@Shane 評論的 domain.com 定義一個區域文件?我快瘋了,因為我一點頭緒都沒有。
儘管我配置或做什麼。dig 總是得到相同的結果(例如,如果數據來自其他地方而不是我的區域文件):
在您的輸出中,我注意到您有 2 個 dns 伺服器。
;; AUTHORITY SECTION: mydomain.com. 63046 IN NS dns1.kontent.com. mydomain.com. 63046 IN NS dns2.kontent.com.
您的域伺服器設置為使用 dns1/2.kontent.com 而不是您的配置。更新您購買域名的那些 dns 伺服器的配置或將其切換到您自己的名稱伺服器。
*.branchconcept.de DNS A-Record 46.38.232.105 branchconcept.de DNS MX-Record (Priorität: 10) mail.branchconcept.de *.branchconcept.de DNS-AAAA-Record 2002:2E26:E869:0:0:0:0:0
您還應該為主域名添加 A 和 AAAA 記錄。不只是 *.domainname.ext。
有點題外話,但給你一些建議。您使用的 ip 沒有設置反向 ip 指針。建議設置一個,有關它的背景資訊,請參閱此網站。
其次,為了減少您的郵件被阻止或標記為垃圾郵件的機會,或者人們偽造您的域名,建議設置一個 spf 記錄,其中列出了允許從您的域下發送電子郵件的 IP 地址。這可以通過名稱伺服器設置中的簡單 TEXT 條目來完成。
text = "v=spf1 ip4:1.2.3.4 ip6:abcd:ef12:34:5678::/128 ~all"
您還需要為您的域名設置一條 A 記錄。現在 www.yourdomain.com 將解析為一個 ip,但 yourdomain.com 不會。使用您的 IP 地址創建一個 A 和 AAAA 記錄,名稱為 @ 或 branchconcept.de。
此外,您的 DNS TTL 設置為 1 天。這意味著對記錄的任何更改都需要一整天才能為客戶完全更新(這可能解釋了為什麼您現在仍然遇到問題,我建議稍微低一點,也許 1 小時?)。
至於您的區域文件,這將是有效的,但是您的域名仍然指向 kontent.com 的 dns 伺服器。
$ORIGIN mydomain.com. $TTL 1h @ IN SOA mydomain.com admin.mydomain.com. (2014111401 1d 2h 4w 1h ) mydomain.com. IN NS ns.mydomain.com. mydomain.com. IN A 46.38.124.67 mydomain.com. IN AAAA 2002:2E26:E869:0:0:0:0:0 ns.mydomain.com. IN A 46.38.124.67 ns.mydomain.com. IN AAAA 2002:2E26:E869:0:0:0:0:0 mydomain.com. IN MX 10 mail.mydomain.com. mail IN A 46.38.124.67 mail IN AAAA 2002:2E26:E869:0:0:0:0:0 *.mydomain.com. IN A 46.38.124.67 *.mydomain.com. IN AAAA 2002:2E26:E869:0:0:0:0:0
編輯:再調查一下,您的 SMTP 伺服器似乎不接受連接。確保: - 沒有防火牆阻止埠 25 連接 - 檢查您的後綴配置文件並查找 inet_interfaces。
確保它不僅綁定到 localhost,還綁定到您的 ipv4 和 ipv6 地址。至於進一步的配置,請驗證您的接收域(後綴配置文件中的 mydestination)和預設情況下您將發送電子郵件的域名。
更新 22-nov-14 我嘗試自己安裝後綴。我所做的是以下內容:
yum install postfix -y
然後我編輯了postfix配置文件:
- 編輯了 mydestination,添加了我的 .com 域名。(用逗號分隔)
- 編輯 myorigin,設置為我的 .com 域名。
將 inet_interfaces 更改為我的公共 ip,以便可以從外部訪問它。此時使用 mxtoolbox 的 SMTP 對 ip 起作用。
我添加了以下 DNS 記錄:
mydomain.com mx priority 10 mail.mydomain.com mail.mydomain.com A MY_IP
現在使用 telnet 發送郵件工作正常,但是我無法從另一台伺服器或 gmail 接收電子郵件。查看 sendmail 連接的地址後,我發現它使用的是 mydomain.com 的 A 記錄。因此,在將 mydomain.com 的 A 記錄添加到我的郵件伺服器 ip 後,我能夠接收電子郵件。
由於您的 MX 記錄是正確的並且您的郵件伺服器現在可以訪問,您應該做的最後一件事是將 branchconcept.de 的 A 記錄添加到您的伺服器 ip。那麼它應該有希望工作。
我嘗試測試您的郵件伺服器,但它說沒有已知的 root 使用者,也沒有您網站上列出的電子郵件(使用域 @branchconcept.de)。您可能想檢查您是否設置了使用者。
所以簡而言之,你應該在這一點上做兩件事:
- 設置你的主域名的A記錄到你的伺服器的ip。
- 如果尚未完成,請設置使用者名。
如果需要,您可以使用 sendmail 測試/調試來自另一台 linux 伺服器的郵件傳遞。
sendmail -v username@yourdomain.com < message.txt
message.txt 在哪裡
Subject: Testing smtp. MIME-Version: 1.0 Content-Type: text/plain Hi there, just testing.
希望這會有所幫助,祝你好運!