debian: gmail + postfix

การแก้ปัญหาการส่งเมล สำหรับโฮสต์ที่ใช้ dynamic ip โดยใช้ gmail และ postfix

ปัญหาคือเมลเซิร์ฟเวอร์สาธารณะไม่ยอมรับจดหมายจากเครื่องที่มีไอพีไม่คงที่
จะแก้โดยให้ gmail เป็นผู้ส่งจดหมายให้
สมมุติว่าเราได้ติดตั้ง postfix ไว้แล้ว

ขั้นตอนสำหรับ gmail

  1. สมัครสมาชิก gmail
  2. ไปที่ การตั้งค่า(settings) -> การส่งต่อและ POP/IMAP (Forwarding and POP/IMAP) ->
    การเข้าถึงแบบ IMAP: (IMAP Access:) เลือก ใช้งาน IMAP (Enable IMAP)

เสร็จแล้ว

ขั้นตอนของ postfix

  1. เปิดใช้ relay โดยใช้คำสั่งชุดนี้
    postconf -e 'relayhost = smtp.gmail.com'
    postconf -e 'smtp_sasl_auth_enable = yes'
    postconf -e 'smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd'
    postconf -e 'smtp_sasl_security_options ='
  2. ตั้งค่ารหัสผ่าน ใช้รหัสผ่านชุดเดียวกับตอนที่สมัคร gmail โดยใช้คำสั่งชุดนี้
    echo "smtp.gmail.com USER@gmail.com:PASSWORD" >> /etc/postfix/sasl_passwd
    chown root:root /etc/postfix/sasl_passwd
    chmod 600 /etc/postfix/sasl_passwd
    postmap /etc/postfix/sasl_passwd
  3. แล้วก็เริ่ม postfix ใหม่
    /etc/init.d/postfix restart

เสร็จแล้ว
หลังจากนี้เวลาเซิร์ฟเวอร์เราส่งเมลออก เขาจะใช้กูเกิลในการส่งแทน

อ้างอิง