ฉันคิดว่านี่เป็นสถานการณ์ที่ค่อนข้างพบได้บ่อย แต่ฉันกำลังดิ้นรนเล็กน้อยเพื่อให้สิ่งนี้ทำงานในวิธีที่ง่ายที่สุดเท่าที่จะเป็นไปได้ และตอนนี้ฉันยังไม่แน่ใจว่าฉันกำลังทำมันด้วยวิธีที่ดี/แนะนำอยู่หรือไม่
ฉันมีเซิร์ฟเวอร์สองเครื่องที่สามารถสื่อสารผ่าน LAN (และทั้งคู่มีที่อยู่ IP อินเทอร์เน็ตสาธารณะด้วย) อันหนึ่งรัน Postfix ส่วนอีกอันให้บริการบางเว็บไซต์
สิ่งที่ฉันต้องการทำคือสามารถส่งเมล (เช่น เมลยืนยัน และอื่นๆ) ผ่าน PHP จากโฮสต์เว็บเซิร์ฟเวอร์ นี่คือทั้งหมดที่เครื่องทำ ฉันไม่ต้องการตั้งค่า Postfix เต็มรูปแบบที่นั่น แต่ใช้โฮสต์อื่นในการส่งจดหมาย
สิ่งที่ฉันทำคือตั้งค่า msmtp บนเว็บเซิร์ฟเวอร์และประกาศว่าที่อยู่ IP ของ LAN นั้นเชื่อถือได้ (โดยเพิ่มไปยัง my_networks ของ Postfix เป็นต้น) บนเมลเซิร์ฟเวอร์ ใช้งานได้ ฉันสามารถส่งจดหมายจากโฮสต์นี้ แต่ â ตามที่คาดไว้ â Postfix ทำหน้าที่เป็นรีเลย์สำหรับอีเมลที่ส่งด้วยวิธีนี้ เพิ่มส่วนหัวที่เกี่ยวข้อง แสดงความคิดเห็นว่าการตรวจสอบ SPF ถูกข้าม และอื่นๆ
ตอนนี้ฉันสงสัยว่าสามารถทำได้ด้วยวิธีที่ง่ายกว่านี้หรือไม่ เนื่องจากเว็บเซิร์ฟเวอร์มีการเข้าถึง LAN ไปยังเมลเซิร์ฟเวอร์ เป็นไปได้ไหมที่จะใช้ sendmail บนเมลเซิร์ฟเวอร์จากเว็บเซิร์ฟเวอร์โดยตรง? เช่นเดียวกับผ่านไพพ์ ssh โดยใช้ผู้ใช้ที่ไม่มีสิทธิ์ด้วยคีย์ SSH แบบไม่มีรหัสผ่าน หรือผ่านโปรแกรมเล็ก ๆ บนเมลเซิร์ฟเวอร์ (ฉันไม่พบ) ที่ฟังพอร์ตที่ไม่เปิดเผยและส่งต่อข้อมูลขาเข้าไปยัง sendmail เพื่อให้บนเว็บเซิร์ฟเวอร์ เราสามารถใช้สคริปต์ sendmail จำลองที่ส่งข้อมูลไปยังที่อยู่ LAN ของเซิร์ฟเวอร์อีเมลและพอร์ตดังกล่าว
ขอบคุณสำหรับคำแนะนำทั้งหมด :-)