ตัวอย่า่งการเซ็ต 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 ซึ่งประกอบด้วยโปรแกรมต่อไปนี้

  1. โปรแกรม Sendmail ประกอบด้วยโปรแกรม Semdmail และโปรแกรม Sendmail-cf  โดย Sendmail-cf เป็นไฟล์คอนฟิกกูเรชันของโปรแกรม Sendmail ใช้กำหนดหน้าที่การทำงานต่าง ๆ
  2. โปรแกรมที่ทำหน้าที่เป็น IMAP & POP3 Server ซึ่งขอใช้เป็นโปรแกรม dovecot (Dovecot Secure imap server)
  3. โปรแกรม Web-based email ที่เป็น Squirrelmail
  4. โปรแกรมป้องกันสแปมที่เป็น spamassassin
  5. สำหรับโปรแกรมป้องกันไวรัส clamav ผู้เีขียนขอติดตั้งด้วยการ Download โปรแกรมจากเว็บมาติดตั้งด้วยคำสั่ง rpm ครับ



    โปรดระวัง 
    จากรูปข้างบนนี้อย่า remove โปรแกรม cyrus-sasl ออกนะครับ  เพราะจะส่งผลให้ลบ sendmail และ squirrelmail ออกไปด้วย

การคอนฟิก Sendmail

  1. แก้ไขไฟล์ /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 ได้เลย  แต่การคอนฟิกจากไฟล์มาโครอาจจะสะดวกกว่าครับ
  2. กำหนดว่าจะอนุญาตให้เครื่องหรือเครือข่ายไหนมารีเลย์ผ่าน 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


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

  4. ทำการ 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

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

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

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

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

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

  7. และสุดท้ายให้เลือกเมนู 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 แบบอัตโนมัติ

  1. ทำการเลือกค่าต่าง ๆ ตามคำแนะนำ และตามระดับขั้นที่้ต้องการ
  2. เืมื่อเลือกค่าทุกอย่างแล้วก็คลิ๊กปุ่ม Generate the Configuration File
  3. จากนั้นก็จะได้ค่าของไฟล์คอนฟิกของ Spamassassin ดังรูป ซึ่งเราสามารถดาวน์โหลดหรือจะก็อปปี้ไป Paste ในไฟล์คอนฟิกของ Spamassassin ก็ได้

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

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