ตัวอย่า่งการเซ็ต Mail Server บน
FC5 (Sendmail + Squirrelmail
+ Dovecot + Clamav + Spamassassin)
โดย : อดิศร
ขาวสังข์
จัดทำเืมื่อ
: 14/08/2549
บทนำ
ต่อไปนี้เป็นตัวอย่างขั้นตอนการเซ็ต Mail Server ที่เป็น Sendmail บน Fedora Core 5 ให้ทำงานร่วมกับ squirrelmail ที่ต้องเชื่อมต่อเมล์เซิร์ฟเวอร์ผ่าน IMAP และจะกล่าวถึงการทำให้โปรแกรม
Mail Client อย่างเช่น Outlook, Kmail,
Mozilla mail ฯลฯ สามารถรับส่งเมล์ได้โดยผ่านโปรโตคอล
POP3 หรือ IMAP โดยโปรแกรมที่เป็น
IMAP & POP3 Server จะใช้ของ Dovecot รวมถึงการติดตั้งโปรแกรม
Antivirus ที่เป็น Clamav และโปรแกรมป้องกันสแปมที่เป็น Spamassassin ด้วย
ขั้นตอนการติดตั้ง
การติดตั้งขอติดตั้งผ่านเมนู
Add/Remove
Applications ซึ่งประกอบด้วยโปรแกรมต่อไปนี้
- โปรแกรม Sendmail ประกอบด้วยโปรแกรม
Semdmail และโปรแกรม Sendmail-cf โดย Sendmail-cf เป็นไฟล์คอนฟิกกูเรชันของโปรแกรม Sendmail
ใช้กำหนดหน้าที่การทำงานต่าง ๆ
- โปรแกรมที่ทำหน้าที่เป็น IMAP & POP3 Server ซึ่งขอใช้เป็นโปรแกรม dovecot (Dovecot Secure imap server)
- โปรแกรม Web-based email ที่เป็น Squirrelmail
- โปรแกรมป้องกันสแปมที่เป็น
spamassassin
- สำหรับโปรแกรมป้องกันไวรัส
clamav ผู้เีขียนขอติดตั้งด้วยการ Download โปรแกรมจากเว็บมาติดตั้งด้วยคำสั่ง
rpm ครับ

โปรดระวัง จากรูปข้างบนนี้อย่า remove โปรแกรม
cyrus-sasl ออกนะครับ
เพราะจะส่งผลให้ลบ sendmail และ squirrelmail ออกไปด้วย
การคอนฟิก Sendmail
- แก้ไขไฟล์
/etc/mail/sendmail.mc
ในบรรทัดที่เขียนว่า DAEMON_OPTIONS(Port=smtp,Addr=127.0.0.1, Name=MTA) ให้เปลี่ยน
127.0.0.1 เป็น 0.0.0.0 เพื่อเปิดกว้างให้ทุกคนสามารถใช้
Sendmail (SMTP) ได้ แล้ว run macro ดังนี้:
#make -C /etc/mail


หมายเหตุ
ไฟล์ sendmail.mc เป็น macro
file ซึ่งเมื่อเราแก้ไขค่าในไฟล์นี้แล้วและใช้คำสั่ง make
-C /etc/mail ก็จะทำให้มีการเปลี่ยนแปลงค่าในไฟล์คอนฟิกคือไฟล์
sendmail.cf ตามที่เราสั่งจากไฟล์มาโคร ซึ่งจริง ๆ
แล้วเราสามารถทำการคอนฟิกตรงที่ไฟล์ sendmail.cf
ได้เลย แต่การคอนฟิกจากไฟล์มาโครอาจจะสะดวกกว่าครับ
- กำหนดว่าจะอนุญาตให้เครื่องหรือเครือข่ายไหนมารีเลย์ผ่าน
smtp
ของเราได้บ้าง โดยให้กำหนดที่ไฟล์ /etc/mail/access ซึ่งอาจมีข้อความเป็น 3 บรรทัดแรกของรูปข้างล่าง
ส่วน 3 บรรทัดล่างเป็นส่วนที่ผู้เขียนเพิ่มเข้าไปใหม่เพื่ออนุญาตให้เครือข่ายของผู้เขียนที่มี
IP ขึ้นต้นด้วย 202.129.16, 172.24.51, 61.19 สามารถใช้งานได้
หมายเหตุ ในกรณีระบบเมล์ของท่านไม่สนับสนุนการใช้งานเมล์ผ่านโปรแกรม
Mail Client อย่าง Outlook , Kmail, Mozilla mail ฯลฯ ก็ไม่ต้องเซ็ตในข้อนี้นะครับเพราะค่า default
ของการรีเลย์มีการอนุญาตให้สำหรับ localhost.localdomain,
localhost, 127.0.0.1 อยู่แล้ว
ซึ่งการใช้สำหรับ Web-based email ที่เป็น
squirrelmail ก็สามารถใช้งานได้โดยไม่ต้องทำข้อนี้ครับ

จากนั้นให้แปลงข้อมูลจาก access ไปเป็น access.db ดังนี้
:
#makemap hash access <
access

- กำหนดโดเมนที่จะรับ
mail เป็นการกำหนดว่าจะให้โดเมนไหนรับเมล์ได้บ้าง
โดยให้ใส่ชื่อโดเมนที่จะยอมรับเมล์ในไฟล์ /etc/mail/local-host-names
ซึ่งในที่นี้เราจะอนุญาตให้รับเมล์ของโดเมน itwizard.info ก็ให้เพิ่มค่าโดเมนดังกล่าวเข้าไปในไฟล์
/etc/mail/local-host-names ดังนี้

- ทำการ
start หรือ restart โปรแกรม Sendmail โดยอาจจะทำผ่าน GUI หรืออาจใช้คำสั่งดังนี้ :
#service sendmail
restart
การคอนฟิกโปรแกรม
IMAP & POP3 Server (Dovecot)
ไฟล์คอนฟิกของ Dovecot
คือไฟล์ /etc/dovecot.conf ซึ่งในที่นี้ผู้เขียนใช้ค่าคอนฟิกที่เป็น Default ก็สามารถใช้งานได้ทั้งที่เป็นแบบ
Webmail (Squirrelmail)
และใช้กับ Mail Client ซึ่งค่าที่สำคัญของการคอนฟิกก็อาจจะเ็็ป็นค่าที่ำกำหนดว่าจะบริการโปรโตคอลอะไรบ้างดังรูป
ซึ่งผู้เขียนเข้าใจว่าค่า Default จะเป็นการบริการทุกโปรโตคอลที่เกี่ยวข้องคือ
imap, imaps, pop3 และ pop3s และถ้าต้องการจะบริการเฉพาะบริการโปรโตคอนไหน ก็ให้เอาเครื่องหมาย # หน้าคำว่า
protocols ออกป้อนเฉพาะโปรโตคอลที่ต้องการเท่านั้น

สำหรับค่าคอนฟิกอื่น ๆ ของ Dovecot
ผู้เขียนไม่ขอกล่าวถึงนะครับ ใครต้องการจะใช้ฟังก์ชันที่
Advanced มากกว่านี้ก็ขอให้ศึกษาเองก็แล้วกัน
และสำหรับการ restart บริการของ
Dovecot สามารถใช้คำสั่ง service dovecot restart ดังรูปได้

การคอนฟิกโปรแกรม Squirrelmail
- เปลี่ยนไดเร็คทอรี่เข้าไปยังตำแหน่งที่มีไฟล์คอนฟิกของ Squirrelmail ดังนี้
cd /usr/share/squirrelmail/config
- รันไฟล์ที่ใช้ในการคอนฟิกคือ
conf.pl
ดังนี้
./conf.pl

- จากนั้นก็ปรับค่าคอนฟิกที่จำเป็นซึ่งของผู้เขียนเริ่มต้นจากข้อ
1
คือ Organization Preferences ดังรูป

- จาำกนั้นก็เลือกเมนูข้อ
2
คือ Server Settings ซึ่งตรงนี้จำเป็นต้องกำหนดค่าของ
Domain เพราะจะถูกแสดงในรายละเอียดของเมล์ที่ส่งไปยังผู้รับว่ามาจากโดเมนไหน

- จากนั้นผู้เขียนขอเลือกเมนูข้อ
4
เิพื่อกำหนดให้
Hide SM attributions เป็น true

- และสุดท้ายผู้เขียนเลือกเมนูข้อ
10
เพื่อกำหนดค่าของภาษาให้เป็นไทยดังรูป

- และสุดท้ายให้เลือกเมนู
S
เพื่อ Save data ซึ่งผลของการปรับเปลี่นค่าของคอนฟิกทั้งหมดจะอยู่ที่ไฟล์ /usr/share/squirrelmail/config/config.php
การคอนฟิก
Spamassassin
ในที่นี้ขอใช้ตัวช่วยนะครับให้ลอง
Search หาคำว่า How to config spamassassin จาก Google จากนั้นจะเจอเว็บไซต์ที่เ็ป็น SpamAssassin
Configuration Generator จากเว็บไซต์ http://www.yrex.com/spam/spamconfig.php ซึ่งเป็นเว็บไซต์ที่เป็นเครื่องมือสำหรับอำนวยความสะดวกในการสร้างไฟล์คอนฟิกของ
Spamassassin แบบอัตโนมัติ
- ทำการเลือกค่าต่าง
ๆ ตามคำแนะนำ และตามระดับขั้นที่้ต้องการ
- เืมื่อเลือกค่าทุกอย่างแล้วก็คลิ๊กปุ่ม Generate the Configuration File
- จากนั้นก็จะได้ค่าของไฟล์คอนฟิกของ
Spamassassin ดังรูป ซึ่งเราสามารถดาวน์โหลดหรือจะก็อปปี้ไป Paste ในไฟล์คอนฟิกของ Spamassassin ก็ได้

- ไฟล์คอนฟิกของ Spamassassin จะเป็นไฟล์ /etc/mail/spamassassin/local.cf
(สำหรับ system-wide configuration) หรือ
~user/.spamassassin/user_prefs (สำหรับ individual user) ซึ่งในที่นี้ผู้เขียนขอคอนฟิกเฉพาะ
system-wide configuration (/etc/mail/spamassassin/local.cf)
ก็ให้ก็อปปี้ค่าคอนฟิกที่ถูก Generated ขึ้นมาไปไว้ในไฟล์ดังกล่าว
แต่เพื่อความปลอดภัย อาจจะต้องสำเนาไฟล์ต้นฉบับไว้ก่อนก็ดีนะครับ
- จากนั้นเราสามารถ
restart
การทำงานของ spamassassin ได้ดังรูป

การติดตั้งโปรแกรม
clamav
การติดตั้งโปรแกรม ClamAV ให้ดูวิธีการติดตั้งจากบทความอีกชุดหนึ่งของผู้เีขียนทีอยู่ในเมนูที่ใกล้เคียงกันครับ -------จบครับ--------