ฉันกำลังเรียกใช้ postfix บน Raspberry Pi ด้านหลังเราเตอร์โฮมที่มีการกำหนดค่า DNS แบบไดนามิก postfix สามารถส่งอีเมลได้ แต่ไม่ได้รับ
ฉันคิดว่าเราเตอร์ที่บ้านและ DNS แบบไดนามิกนั้นใช้ได้ฉันกำลังโฮสต์เว็บไซต์บน Raspberry Pi มันใช้งานได้ดีและเข้าถึงได้ทั่วไป ดังนั้นระเบียน MX ของฉันไม่ได้รับการกำหนดค่าอย่างเหมาะสมหรือไม่ได้เป็น postfix (ฉันคิดว่า)
(ฉันเขียนชื่อโฮสต์ของฉันใหม่ด้านล่าง)
การกำหนดค่า DNS แบบไดนามิกสำหรับ myhostname.ddns.net
- ที่อยู่ IPv4: ที่อยู่ IP ของ Raspberry Pi ของฉัน
- ระเบียน MX: myhostname.ddns.net, Priority 1
การกำหนดค่าการส่งต่อพอร์ตบนเราเตอร์ในบ้าน
D Service Port Internal Port IP Address Protocol
1 80 80 192.168.0.10 ALL # web server
2 22 22 192.168.0.10 ALL # ssh
3 25 25 192.168.0.10 TCP # mail server
บนคอมพิวเตอร์เครื่องที่สามไม่ใช่ Raspberry Pi
ping myhostname.ddns.net
: ใช้ได้ฉันเห็นที่อยู่ IP ของ Raspberry Pi ของฉันตอบกลับ- ชี้เบราว์เซอร์ไปที่
http://myhostname.ddns.net
: ใช้งานได้ฉันเห็นรากของเว็บไซต์ นี่เป็นการยืนยันว่า DNS แบบไดนามิกทำงานและการส่งต่อเราเตอร์ในบ้านกำลังทำงาน - ในบัญชี gmail การส่งเมลจะ
pi@myhostname.ddns.net
ล้มเหลวหลังจากผ่านไปประมาณ 24 ชั่วโมงด้วย "การส่งไม่สมบูรณ์เซิร์ฟเวอร์ผู้รับไม่ยอมรับคำขอเชื่อมต่อของเราหมดเวลา" หากคุณรู้วิธีที่รวดเร็วกว่าในการทดสอบที่ไม่ต้องรอ 24 ชั่วโมงโปรดแจ้งให้เราทราบ
บน Raspberry Pi เข้าสู่ระบบในชื่อ "pi"
$ mail
No mail for pi
$ dig myhostname.ddns.net MX +short
1 myhostname.ddns.net
$ sudo postfix status
postfix/postfix-script: the Postfix mail system is running: PID: 16232
$ sudo netstat -plutn | grep 25
tcp 0 0 0.0.0.0:25 0.0.0.0:* LISTEN 16232/master
$ sudo iptables -L -n -v
Chain INPUT (policy ACCEPT 0 packets, 0 bytes)
pkts bytes target prot opt in out source destination
Chain FORWARD (policy ACCEPT 0 packets, 0 bytes)
pkts bytes target prot opt in out source destination
Chain OUTPUT (policy ACCEPT 0 packets, 0 bytes)
pkts bytes target prot opt in out source destination
$ cat /etc/postfix/main.cf
smtpd_banner = $myhostname ESMTP $mail_name (Raspbian)
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_security_level = may
smtpd_tls_session_cache_database = btree:${data_directory}/smtpd_scache
smtp_tls_session_cache_database = btree:${data_directory}/smtp_scache
smtpd_recipient_restrictions =
permit_sasl_authenticated,
permit_mynetworks,
reject_unauth_destination
smtpd_relay_restrictions =
permit_mynetworks,
permit_sasl_authenticated,
defer_unauth_destination
myhostname = myhostname.ddns.net
alias_maps = hash:/etc/aliases
alias_database = hash:/etc/aliases
myorigin = /etc/mailname
mydestination = myhostname.ddns.net, myhostname, 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 = all
inet_protocols = ipv4
home_mailbox = Maildir/
mailbox_command =
relayhost = [smtp.gmail.com]:587
smtp_sasl_auth_enable = yes
smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd
smtp_sasl_security_options = noanonymous
smtp_tls_CAfile = /etc/postfix/cacert.pem
smtp_use_tls = yes
$ cat /etc/mailname
myhostname.ddns.net
ปรับปรุง
Comcast บล็อกพอร์ต 25 ดูhttps://www.xfinity.com/support/articles/email-port-25-no-longer-supported