หลังจากตั้งค่าเซิร์ฟเวอร์ iRedMail สำหรับโดเมนหลักของฉันสำเร็จแล้ว ฉันพยายามเพิ่มโดเมนรองเป็นนามแฝงโดยทำตามขั้นตอนที่นี่: https://docs.iredmail.org/sql.add.alias.domain.html
วิธีนี้ยังไม่ได้ผล ดังนั้นฉันจึงเพิ่มโดเมนรองลงใน /etc/postfix/main.cf:
virtual_alias_domains = โดเมน 2.tld
virtual_alias_maps = แฮช:/etc/postfix/virtual
หมายเหตุ: ฉันไม่ได้ลบรายการ mysql ที่มีอยู่ภายใต้ virtual_alias_maps
และเข้าสู่การแมปใน /etc/postfix/virtual และดำเนินการ "postmap /etc/postfix/virtual" หลังจากนั้น:
@domain2.tld @domain1.tld
สิ่งนี้ทำงานภายในเซิร์ฟเวอร์ [email protected] สามารถส่งไปยัง [email protected] และ user2 จะได้รับจดหมายในกล่องจดหมายของเขา อีเมลภายนอกยังคงมาถึงเมื่อส่งไปยัง [email protected]
น่าเสียดายที่มันใช้ไม่ได้กับเมลภายนอกที่ส่งไปยังโดเมนรอง
ใน /var/logs/mail.log ฉันพบบรรทัดต่อไปนี้:
postfix/smtpd[5541]: NOQUEUE: ปฏิเสธ: RCPT จาก mail-oi1-x231.google.com[2607:f8b0:4864:20::231]: 451 4.3.5 <[email protected]>: ที่อยู่ผู้รับถูกปฏิเสธ : ปัญหาการกำหนดค่าเซิร์ฟเวอร์ จาก=<[email protected]> ถึง=<[email protected]> proto=ESMTP helo=<mail-oi1-x231.google.com>
และ:
postfix/smtpd[5644]: คำเตือน: ปัญหาในการพูดคุยกับเซิร์ฟเวอร์ 127.0.0.1:12340: การเชื่อมต่อหมดเวลา
บนพอร์ต 12340 dovecot กำลังฟัง:
dovecot 513 รูท 67u IPv4 17087 0t0 TCP 127.0.0.1:12340 (ฟัง)
ในบันทึก dovecot ของฉัน ฉันพบบรรทัดต่อไปนี้ซ้ำๆ:
dovecot: สถานะโควต้า: ข้อผิดพลาด: สถานะโควต้า: ลูกค้าส่งที่อยู่ผู้รับไม่ถูกต้อง: อักขระไม่ถูกต้องในเส้นทาง
หลังจากการทดสอบเพิ่มเติมกับโฮสต์เมลภายนอกอื่น ๆ ฉันรู้ว่า 2 ใน 4 ของเมลมาถึงเมื่อส่งไปยังโดเมนรอง GMail และ Hotmail ไม่ได้ การแลกเปลี่ยนของบริษัทของฉันและผู้ให้บริการเว็บรายอื่นเข้ามา
และนั่นคือสิ่งที่ฉันติดอยู่ ฉันสงสัยหนึ่งในสองสิ่ง:
อาจเป็นเพราะฉันพลาดการกำหนดค่าที่จำเป็น ซึ่งดูเหมือนว่าเป็นไปได้สูง เนื่องจากฉันไม่เคยตั้งค่าเซิร์ฟเวอร์อีเมลบน Debian มาก่อน หรือข้อผิดพลาด dovecot เกิดจากโดเมนรองของฉัน โดเมนรองมีเครื่องหมายเครื่องหมาย (ä/ö/ü) ซึ่งฉันทราบดีว่าอาจทำให้เกิดปัญหาได้ ดังนั้นฉันจึงเป็นเจ้าของโดเมนในรูปแบบ punycode ด้วยเช่นกัน ดังนั้น เมื่อใดก็ตามที่ฉันเพิ่มโดเมนรองที่มีเครื่องหมาย umlaut ในการกำหนดค่า ฉันยังเพิ่มเวอร์ชัน punnycode ของโดเมนนั้นด้วย โดยสมมติว่ามันสามารถแก้ปัญหาใดๆ ในเรื่องนั้นได้
iRedMail/postfix/dovecot/whateverelseisinvolved ดูเหมือนจะทำงานได้ดีกับ punnycode/umlauts ต่อ se ดูเหมือนว่าจะขึ้นอยู่กับผู้ส่ง เนื่องจากอีเมลหายไปเพียงครึ่งเดียว (ผู้ส่งจะไม่ได้รับข้อผิดพลาด) มีใครเดาว่าทำไมหรือบันทึกอะไรที่ฉันสามารถตรวจสอบเพื่อเจาะลึกลงไปกว่านี้ ฉันพลาดที่จะกำหนดค่าบางอย่างที่ชัดเจนหรือไม่
การผลักดันไปในทิศทางที่ถูกต้องจะได้รับการชื่นชมอย่างสูง
ความนับถือ,
น้ำมูก
==== ข้อมูลพื้นฐาน ====
- รุ่น iRedMail: 1.4.0 รุ่น MARIADB
- ชื่อและเวอร์ชันการแจกจ่าย Linux/BSD: Debian GNU/Linux 10 (บัสเตอร์) - 10.10
- ฐานข้อมูลที่ใช้: MySQL (MariaDB)
- เว็บเซิร์ฟเวอร์: Nginx
==== แก้ไข ====
เท่าการตั้งค่าฐาน; หลังจากติดตั้ง Debian 10 ใหม่ทั้งหมด ฉันได้ทำตามขั้นตอนในคู่มือนี้แล้ว https://www.linuxbabe.com/mail-server/debian-10-buster-iredmail-email-server
มีการกล่าวถึงการกำหนดค่าเฉพาะใด ๆ ที่เปลี่ยนแปลงจากคำแนะนำในโพสต์ ฉันได้ออกใบรับรองเพิ่มเติมซึ่งประกอบด้วยโดเมนหลักและโดเมนรองใน punnycode
นี่คือบันทึกต่าง ๆ ในการบูต:
/var/log/mail.log:
14 ส.ค. 14:24:36 น. postfix/postfix-script[1637]: คำเตือน: symlink ออกจากไดเรกทอรี: /etc/postfix/./makedefs.out
14 ส.ค. 14:24:37 น. amavis[573]: เริ่มต้น /usr/sbin/amavisd-new ที่ host.domain1.tld amavisd-new-2.11.0 (20160426), รู้จัก Unicode, LC_ALL="C", LANG="en_US.UTF-8"
14 ส.ค. 14:24:37 น. postfix/postfix-script[1819]: การเริ่มต้นระบบเมล Postfix
14 ส.ค. 14:24:37 น. postfix/master[1821]: daemon เริ่มต้น -- เวอร์ชัน 3.4.14, การกำหนดค่า /etc/postfix
14 ส.ค. 14:24:39 น. amavis[1915]: Net::Server: ไม่ได้กำหนดกลุ่ม ค่าเริ่มต้นเป็น EGID '121 121'
14 ส.ค. 14:24:39 น. amavis[1915]: Net::Server: ไม่ได้กำหนดผู้ใช้ ค่าเริ่มต้นเป็น EUID '113'
14 ส.ค. 14:24:39 น. amavis[1915]: ไม่มีโปรแกรมเสริมสำหรับ .F, พยายาม: ยกเลิกการตรึง, แช่แข็ง -d, ละลาย, fcat
14 ส.ค. 14:24:39 น. amavis[1915]: ไม่มีโปรแกรมเสริมสำหรับ .zoo, ลองแล้ว: zoo, unzoo
14 ส.ค. 14:24:39 น. amavis[1915]: ไม่มีตัวถอดรหัสสำหรับ .F
14 ส.ค. 14:24:39 น. amavis[1915]: ไม่มีตัวถอดรหัสสำหรับ .zoo
14 ส.ค. 14:24:39 น. amavis[1915]: การใช้รหัสสแกนเนอร์ av ภายในหลักสำหรับซ็อกเก็ต clamav
14 ส.ค. 14:24:39 น. amavis[1915]: พบเครื่องสแกน av รอง clamav-clamscan ที่ /usr/bin/clamscan
/var/log/dovecot/dovecot.log:
14 ส.ค. 14:24:26 น. dovecot: master: Dovecot v2.3.4.1 (f79e8e7e4) เริ่มต้นขึ้นสำหรับ pop3, imap, sieve, lmtp (ปิดใช้งานการถ่ายโอนข้อมูลหลัก)
14 ส.ค. 14:24:43 น. dovecot: stats: Error: (stats-reader): ไม่ได้ตอบกลับด้วยบรรทัด VERSION ที่ถูกต้อง: EXPORT#011global
14 ส.ค. 14:24:43 น. dovecot: stats: Error: (stats-reader): ไม่ได้ตอบกลับด้วยบรรทัด VERSION ที่ถูกต้อง: EXPORT#011global
grep postfix /var/log/syslog:
14 ส.ค. 14:24:36 น. postfix/postfix-script[1637]: คำเตือน: symlink ออกจากไดเรกทอรี: /etc/postfix/./makedefs.out
14 ส.ค. 14:24:37 น. postfix/postfix-script[1819]: การเริ่มต้นระบบเมล Postfix
14 ส.ค. 14:24:37 น. postfix/master[1821]: daemon เริ่มต้น -- เวอร์ชัน 3.4.14, การกำหนดค่า /etc/postfix
ฉันได้ปิดใช้งานคุณสมบัติโควต้าและเปิดใช้งาน SMTPUTF8 ใน postfix main.cf ของฉันแล้ว ไม่มีการเปลี่ยนแปลงที่น่าสังเกตยกเว้นจากบรรทัดเพิ่มเติมในการบูตใน mail.log:
14 ส.ค. 14:59:46 น. amavis[571]: เริ่มต้น /usr/sbin/amavisd-new ที่ host.domain1.tld amavisd-new-2.11.0 (20160426), รู้จัก Unicode, LC_ALL="C", LANG="en_US.UTF-8"
พฤติกรรมยังคงเหมือนเดิม น่าเสียดาย หลังจากวิเคราะห์บันทึกเพิ่มเติม ฉันรู้ว่าดูเหมือนว่าอีเมลจากผู้ให้บริการที่ผ่านเข้ามาจะถูกส่งผ่าน punycode (แม้ว่าฉันจะส่งมันไปยังโดเมนด้วยเครื่องหมาย umlaut/non-ASCII-char โดยเฉพาะก็ตาม) ในทางกลับกัน GMail ส่งอีเมลไปยังโดเมนที่มีเครื่องหมายเครื่องหมายบน (Non-punycode แม้ว่าฉันจะใช้รูปแบบ punycode ในที่อยู่อีเมลของผู้รับโดยเฉพาะก็ตาม)
ดังนั้น ฉันจะต้องสอนเซิร์ฟเวอร์ของฉันให้จัดการอักขระที่ไม่ใช่ ASCII หรือไม่ก็ต้องสอน Google ให้ส่งผ่าน punycode หรือสอนเซิร์ฟเวอร์ของฉันให้แปลเครื่องหมายอัศเจรีย์เป็น punycode เห็นได้ชัดว่าตัวเลือก 2 ไม่ได้อยู่ในตัวเลือก ดังนั้น 1 หรือ 3 ก็คือ
รายการ mail.log จากเมลโฮสต์ที่ไม่ใช่ GMail:
postfix/amavis/smtp[2300]: 4Gn0zh0z4FzLnSJ: to=<[email protected]>, orig_to=<[email protected]>, relay=127.0.0.1[127.0.0.1]:10024, delay=4, delays= 0.1/0/0.01/3.9, dsn=2.0.0, สถานะ=ส่ง (250 2.0.0 จาก MTA(smtp:[127.0.0.1]:10025): 250 2.0.0 ตกลง: เข้าคิวเป็น 4Gn0zm04JHzLxc0)
รายการ mail.log จากเมล GMail:
14 ส.ค. 15:06:44 น. postfix / smtpd [2281]: คำเตือน: ปัญหาในการพูดคุยกับเซิร์ฟเวอร์ 127.0.0.1:12340: หมดเวลาการเชื่อมต่อ
14 ส.ค. 15:06:44 น. postfix/smtpd[2281]: NOQUEUE: ปฏิเสธ: RCPT จาก mail-ot1-x32b.google.com[2607:f8b0:4864:20::32b]: 451 4.3.5 <user@ dömain2.tld>: ที่อยู่ผู้รับถูกปฏิเสธ: ปัญหาการกำหนดค่าเซิร์ฟเวอร์; จาก=<[email protected]> ถึง=<user@dömain2.tld> proto=ESMTP helo=<mail-ot1-x32b.google.com>