การตั้งค่า Exim เพื่อส่งต่อเมล


10

ฉันกำลังพยายามติดตั้ง Exim บน CentOS ที่ติดตั้งใหม่เพื่อที่จะได้รับจดหมายสำหรับการรวบรวมที่อยู่ที่กำหนดและส่งต่อจดหมายตามลำดับไปยังที่อยู่อื่น ตัวอย่างเช่นการรับจดหมายจาก me@example.com จะถูกส่งต่อไปยัง me@gmail.com

ฉันคิดว่าสิ่งนี้ควรจะตรงไปตรงมา ... ฉันเคยใช้ Sendmail ก่อนหน้านี้โดยใช้virtusertable- มีอะไรที่คล้ายกันกับ Exim บ้างไหม?

ฉันยังต้องการที่จะส่งจดหมาย แต่สำหรับจดหมายที่ถูกส่งจากเครื่องท้องถิ่น (เช่นจากแอปพลิเคชันที่ทำงานบนเซิร์ฟเวอร์) - ฉันไม่ต้องการ / ต้องการเซิร์ฟเวอร์ SMTP ที่มีอยู่ทั่วไป

มีการตั้งค่าอื่น ๆ ที่ฉันควรคำนึงถึงเพื่อให้แน่ใจว่าเซิร์ฟเวอร์อีเมลปลอดภัยหรือไม่ (เช่นป้องกันการถ่ายทอด) ฉันคิดว่ามันจะปลอดภัยจากกล่อง

ขอบคุณ

คำตอบ:


7

คุณจะต้องใช้เราเตอร์เปลี่ยนเส้นทาง อ่านข้อมูลจำเพาะ Exim Router เนื่องจากสามารถทำสิ่งต่าง ๆ ได้และทำให้ค่อนข้างซับซ้อน

โดยทั่วไปคุณจะต้องตั้งค่าแบบนี้ (ยังไม่ทดลอง)


sender_redirect:
  driver = redirect
  data = ${lookup{$sender_address}lsearch{/etc/exim4/sender_redirects}}

จากนั้นสร้างไฟล์ใน/etc/exim4/sender_redirectsที่มีการเปลี่ยนเส้นทางในรูปแบบที่คั่นด้วยโคลอนบรรทัดคั่นเช่นนี้:


me@example.com: me@gmail.com

1
ขอบคุณกาวินที่ทำให้ฉันไปในทิศทางที่ถูกต้อง ฉันใช้บรรทัดเหล่านี้: ไดรเวอร์ = เปลี่ยนเส้นทางโดเมน = dsearch; / etc / exim / ข้อมูลเสมือน = $ {ค้นหา {$ local_part} lsearch {/ etc / exim / เสมือน / $ โดเมน}} โดยที่ 'virtual' เป็นไดเรกทอรีที่มี ไฟล์ 'example.com' และบรรทัดของแบบฟอร์ม: 'me: me@gmail.com' ฉันต้องตั้งค่า 'local_domains' ให้รวม 'example.com' (เคล็ดลับกับ dsearch ที่ใช้ด้านบนสามารถใช้ได้ที่นี่ด้วย)
Joe Freeman

5

การเปลี่ยนแปลงสิ่งที่ Joe Freeman พูดโดยไม่ใช้ dsearch (ซึ่งทำให้ฉันเกิดข้อผิดพลาดในการค้นหา "dsearch" ที่ไม่รู้จัก):

ในตอนต้นของ exim.conf:

#Replace:
domainlist local_domains = lsearch;/etc/virtual/domains
#With:
domainlist local_domains = lsearch;/etc/virtual/domains : lsearch;/etc/virtual/forwarding_domains

ในส่วน "เริ่มต้นเราเตอร์" เพิ่ม:

sender_redirect:
    driver = redirect
    domains = lsearch;/etc/virtual/forwarding_domains
    data = ${lookup{$local_part}lsearch{/etc/virtual/forwarding/$domain}}

ใน lsearch; / etc / virtual / forwarding_domains เพิ่มโดเมนของคุณหนึ่งรายการต่อบรรทัด:

example.com

และสร้าง /etc/virtual/forwarding/example.com containg:

me: me@gmail.com

3

exim4 ยังสนับสนุนแบบเก่า.forwardไฟล์บวก Exim แบบไฟล์ที่เริ่มต้นด้วย.forward # Exim filterตัวอย่างเช่นหากต้องการใช้บัญชีหลังเพื่อส่งต่อไปยังบัญชีสำรองของฉันในขณะที่เก็บต้นฉบับไว้ในสปูลของฉันสำหรับการเข้าถึง POP3:

# Exim filter  <== do not edit or remove this line!

unseen deliver jcomeau_ictx@example.com

ง่ายกว่าและอันตรายน้อยกว่าการลิงรอบ ๆ เป็นรากในลำไส้เอ็กซิมที่ตั้งค่า IMO รายละเอียดเกี่ยวกับเรื่องนี้อยู่ที่นี่

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.