1. Linux Server Admin
Mail Systems
Chatchai J
2012-12-11
2012-12-24
2012-12-26
2. Mail Systems
Picture from wikipedia
http://upload.wikimedia.org/wikipedia/commons/thumb/7/72/Email.svg/400px-Email.svg.png
3. Mail Systems
● การรับ/ส่ง e-mail กระบวนค่อนข้างซับซ้อน
– ถ้าสนใจลองอ่านจาก wikipedia: “Email”
● เราจะสนใจเฉพาะ ส่วนทีสำาคัญ
่
– Server สำาหรับการ รับ/ส่ง mail
(Computer ↔ Computer)
– Server สำาหรับติดต่อผ้้ใช้ (Computer ↔ User)
4. Mail Servers
● SMTP Server
– รับ mail message จากผ้ใช้
้
– รับ/ส่ง mail message จาก SMTP Server อื่น
● IMAP/POP3 Server
– รับ mail จาก mailbox/storage ให้ user
5. SMTP Server
● Simple Mail Transfer Protocol Server
(Simple!)
● มีหลายตัวเลือก
– postfix
– exim
– sendmail
– …
● Debian ใช้ default smtp server เป็ น exim4
6. IMAP/POP3 Server
● Internet Message Access Protocol
Post Office Protocol (version 3)
● สำาหรับ mail reader เข้าถึง mailbox ของผ้้ใช้
● มีหลายตัวเลือกเช่นกัน
– uw-imap (Woshington Univ)
– cyrus-imapd (Cyrus Mail Systems)
– dovecot
● ใช้ Dovecot เพราะรองรับ Maildir format
7. Exim4
● ติดตั้งเป็ น default smtp อย่้แล้ว
– แต่ config ให้รับเฉพาะ local อย่างเดียว
● ทดสอบ
$ echo test | mail s test `whoami`
$ mail
หรือ
$ mutt
18. ทดสอบ (ต่อ)
● ใช้คำาสั่ง mutt สำาหรับการอ่าน mail ทีส่งมา
่
แล้วเก็บอย่ในระบบแบบ Maildir format
้
– bsd mailx อ่าน Maildir format ไม่ได้
$ mutt f $HOME/Maildir
● ด้ directory และ ไฟล์ใน $HOME/Maildir
$ ls -l Maildir/{cur,new,tmp}
19. ทดสอบ SMTP Operation
● การรับ/ส่ง email ระหว่าง SMTP Server กับ SMTP Server
● ต้องการ Name Server Config ที่ถกต้อง
้
● SMTP Server จะส่ง mail ไปยัง user@host.domain.com
จะต้องร้้ IP Address ของ host.domain.com
● SMTP Server จะส่ง mail ไปยัง user@domain.com
จะต้องร้้ IP Address ของ Mail-Exchanger (MX) ของ
domain.com
20. SMTP Operation (cont)
● IP Address ของ smtp.cheshirecat2012.net
$ host t a smtp.cheshirecat2012.net
● IP Address ของ MX ของ cheshirecat2012.net
$ host t mx cheshirecat2012.net
$ host t a mx.cheshirecat2012.net
● จะต้อง config ใน DNS ให้ถ้กต้อง
และกำาหนด dnscache ให้ใช้ lsa-svr.coe.psu.ac.th
– สำาหรับกรณีทดลองจาก CoE'NEt (เท่านั้น)
21. zone new config
$TTL 240
...
$ORIGIN cheshirecat2012.net.
IN NS lsasvr.coe.psu.ac.th.
IN MX 5 mx.cheshirecat2012.net.
IN MX 10 lsasvr.coe.psu.ac.th.
smtp 30 IN A $IP
mx 30 IN A $IP
imap 30 IN A $IP
pop3 30 IN A $IP
22. zone new config (cont)
● เพิ่มข้อม้ลใน
/var/cache/bind/master/$YOURDOMAIN
● $IP คือ IP Address ของเครื่อง
● บรรทัด
IN MX 5 mx.$YOURDOMAIN
IN MX 10 lsasvr.coe.psu.ac.th
● ค่า $YOURDOMAIN จะต้องน้อยกว่า ของ
lsa-svr เพื่อให้ lsa-svr ส่งต่อไปยังปลายทางได้ถ้กต้อง