|
รายละเอียดของบทความ
จัดทำเมื่อ
: 10 เมษายน 2548
แก้ไขล่าสุดเมื่อ : 10 เมษายน
2548
ทดลองใช้งานบน : RedHat Fedora Core 3
ผู้เขียน
: อดิศร
ขาวสังข์
บทนำ
ต่อไปนี้เป็นขั้นตอนการเซ็ต
Mail Server ที่เป็น
Sendmail บน RedHat Fedora
Core 3 และเพื่อให้สามารถทำงานร่วมกับ
Web-based email เช่น
squirrelmail
ที่ต้องเชื่อมต่อเมล์เซิร์ฟเวอร์ผ่าน IMAP
ได้ และให้โปรแกรม Mail
Client อย่างเช่น Outlook,
Kmail, Mozilla mail, Netscape mail
ฯลฯ สามารถรับส่งเมล์ได้โดยผ่านโปรโตคอล POP3
หรือ IMAP ก็จะกล่าวถึงวิธีการเซ็ตโปรแกรม
IMAP & POP3 Server
ด้วย โดยโปรแกรม IMAP &
POP3 Server ที่มีติดมากับระบบ
Add/Remove Application ของ
Fedura Core 3 เท่าที่เห็นมีอยู่ 2
ตัวคือ ที่เป็น Dovecot
กับ cyrus-imapd
แต่เนื่องจาก cyrus-imapd
จะนิยมใช้กับระบบที่มี User
จำนวนมาก
ดังนั้นการเซ็ตค่อนข้างจะยุ่งยาก
จึงไม่ขอเลือกใช้ นั่นคือในที่นี้จะขอเลือกเป็น
Dovecot
(แต่ถ้าท่านต้องกการจะดูวีธีการเซ็ต
cyrus-imapd ดูได้
ที่นี่)
ขั้นตอนการติดตั้ง
โปรแกรมที่ต้องติดตั้งในที่นี้ขอใช้โปรแกรมที่มีมากับแผ่น
Fedora Core 3 ทั้งหมด
โดยโปรแกรมที่ต้องติดตั้งประกอบด้วย 3 โปรแกรมหลัก ๆ
คือ
1. โปรแกรม Sendmail
ประกอบด้วยโปรแกรม Semdmail
และโปรแกรม Sendmail-cf โดย
Sendmail-cf
เป็นไฟล์คอนฟิกกูเรชันของโปรแกรม Sendmail
ใช้กำหนดหน้าที่การทำงานต่าง ๆ
2. โปรแกรมที่ทำหน้าที่เป็น
IMAP & POP3 Server
ซึ่งขอใช้เป็นโปรแกรม dovecot (Sovecot Secure imap server)
3. โปรแกรม Web-based email
ที่เป็น
Squirrelmail
4. โปรแกรมป้องกันไวรัส
spamassassin (อาจจะไม่เลือกก็ได้นะครับ)
ซึ่งวิธีการติดตั้งโปรแกรมทั้งหมดอาจจะติดตั้งได้โดยผ่าน
shell prompt (ซึ่งจะไม่ขอกล่าวในที่นี้)
หรือจะติดตั้งผ่าน GUI (Add/Remove Application
ดังรูป

ขั้นตอนการคอนฟิก
1. การคอนฟิก Sendmail
1.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 ได้เลย
แต่การคอนฟิกจากไฟล์มาโครอาจจะสะดวกกว่าครับ
1.2
กำหนดว่าจะอนุญาตให้เครื่องไหนมารีเลย์ผ่าน smtp
ของเราได้บ้าง โดยให้กำหนดที่ไฟล์
/etc/mail/access
ซึ่งอาจมีข้อความเป็นดังนี้:
หมายเหตุ
ในกรณีระบบเมล์ของท่านไม่สนับสนุนการใช้งานเมล์ผ่านโปรแกรม
Mail Client อย่าง
Outlook , Kmail, Mozilla mail
ฯลฯ ก็ไม่ต้องเซ็ตในข้อนี้นะครับเพราะค่า
default
ของการรีเลย์มีการอนุญาตให้สำหรับ
localhost.localdomain, localhost, 127.0.0.1
อยู่แล้ว ซึ่งการใช้สำหรับ
Web-based email ที่เป็น
squirrelmail
ก็สามารถใช้งานได้โดยไม่ต้องทำข้อนี้ครับ
localhost.localdomain RELAY
localhost
RELAY
127.0.0.1
RELAY
ให้ต่อท้ายเพิ่มดังนี้เช่น
172.16.0
RELAY
itwizard.info
RELAY
spammer.com
DISCARD
cyberpromo.com
REJECT
ซึ่งก็หมายถึงเป็นการอนุญาติให้เครื่องที่มี IP Address
ขึ้นต้นด้วย
172.16.0
และเครื่องที่มีโดเมนเป็น
itwizard.info
สามารถรีเลย์ผ่าน SMTP ได้
แต่ปฏิเสธเมล์หรือการรีเลย์ที่มาจากโดเมล์
spammer.com และ
cyberrpromo.com
จากนั้นให้แปลงข้อมูลจาก access
ไปเป็น access.db
ดังนี้ :
#makemap hash access < access
1.3
กำหนดโดเมนที่จะรับ
mail เป็นการกำหนดว่าจะให้โดเมนไหนรับเมล์ได้บ้าง
โดยให้ใส่ชื่อโดเมนที่จะยอมรับเมล์ในไฟล์ /etc/mail/local-host-names
ซึ่งในที่นี้เราจะอนุญาตให้รับเมล์ของโดเมน
itwizard.info
และ
south.cattelecom.com
ก็ให้เพิ่มค่าโดเมนดังกล่าวเข้าไปในไฟล์
/etc/mail/local-host-names
ดังนี้
itwizard.info,
south.cattelecom.com
หรืออาจจะใส่ค่าในไฟล์
/etc/mail/sendmail.cf
ดังนี้
Cwlocalhost itwizard.info,
south.cattelecom.com
โดยให้ #
หน้าบรรทัดที่มีข้อความว่า Fw /etc/mail/local-host-names
เพื่อไม่ให้ไปเรียกใช้งานไฟล์
/etc/mail/local-host-names ดังนี้
:
#Fw /etc/mail/local-host-names
1.4 ทำการ
start หรือ restart
โปรแกรม Sendmail
โดยอาจจะทำผ่าน GUI
หรืออาจใช้คำสั่งดังนี้ :
#service sendmail restart
2.การคอนฟิกโปรแกรม IMAP
& POP3 Server
(Dovecot)
ในกรณีที่ไม่ต้องการให้ใช้งานกับ
mail client ค่า default
ของโปรแกรม dovecot
จะเปิดบริการสำหรับ IMAP Server
อยู่แล้ว จึงไม่ต้องมีการคอนฟิกใด ๆ
แต่ถ้าต้องการให้ระบบเมล์สามารถสนับสนุนโปรแกรม
Mail Client ที่ทำงานโดยใช้
POP3
ได้ก็ต้องกมีการคอนฟิกเพิ่มเติมดังนี้
:
2.1
แก้ไขไฟล์คอนฟิกของ dovecot
คือไฟล์ /etc/dovecot.conf เพื่อเปิดการทำงานของทั้ง
imap และ pop3 โดยจากบรรทัดที่มีข้อความเดิมเป็น
:
protocol = imap impas ให้เป็น
protocol = imap imaps pop3 pop3s
2.2 สั่งให้ dovecot
ทำงานใหม่ด้วยคำสั่ง
/etc/init.d/dovecot reload
หรือ
service dovecot restart
2.3
ทดสอบการทำงานด้วยคำสั่ง telnet
เช่น
telnet
mail.itwizard.info 143 สำหรับ
IMAP --->
ถ้าการทำงาน OK
ก็อาจจะมีข้อความว่า * OK
dovecot ready.
telnet mail.itwizard.info 110 สำหรบ
POP3
---> ถ้าการทำงาน
OK ก็อาจจะมีข้อความว่า
* OK dovecot ready.
เช่นกัน
3.การคอนฟิก SquirrelMail
3.1
เปลี่ยนไดเร็คทอรี่เข้าไปยังตำแหน่งที่มีไฟล์คอนฟิกของ
Squirrelmail ดังนี้
cd /usr/share/squirrelmail/config
3.2 รันไฟล์ที่ใช้ในการคอนฟิกคือ conf.pl
ดังนี้
./conf.pl
3.3
เลือกโดเมนให้ตรงกับโดเมนของตัวเองซึ่งในที่นี้เป็น
itwizard.info ดังนี้
- เลือกเมนู 2 (Server
Settings)
- เลือกเมนูย่อย 1 (Domain)
- ป้อนชื่อโดเมน
(itwizard.info)
3.4 เลือกชนิดของ Mail Server
เป็น SMTP ดังนี้
- เลือกเมนูหมายเลข 2 (Server Settings)
- เลือกเมนูย่อย 3 (Sendmail
or SMTP)
- เลือก SMTP
3.5 ให้เลือกชนิดของ IMAP เป็น
other
- เลือกเมนูหมายเลข 2 (Server Settings)
- เลือกเมนูย่อย A
(Update IMAP Settings)
- เลือกเมนูย่อย 8 (Server
Software)
- เลือก
other
3.6
เลือกเซ็ตค่าอื่น ๆ ที่ต้องการเพิ่มเติมได้ตามใจชอบ
3.6
บันทึกการเซ็ตค่าด้วยการเลือกเมนู
S (Save data)
3.7 ทดสอบการทำงานของ
squirrelmail ด้วยการเปิด
web mail ขึ้นมา
ซึ่งการติดตั้ง squirrelmail
แบบนี้จะมีการสร้าง Alias
ไว้ที่ไฟล์
/etc/httpd/conf.d/squirrelmail.conf
เอาไว้โดยอัตโนมัติเป็นดังนี้
:
Alias /webmail /usr/share/squirrelmail
ดังนั้นการเรียกใช้งานจึงสามารถเรียกเป็น
http://hostname/webmail
หรือ http://ip_address/webmail
ได้เลย
ซึ่งจากการทดลองเรียกใช้งานปรากฎว่าสามารถใช้งานได้ดีครับ
แต่มีปัญหาเรื่องการ attach file
คือจะมีฟ้องว่า
"Could
not move/copy file. File not attached"
ซึ่งตอนนี้ผู้เขียนเองยังแก้ปัญหานี้ไม่ได้
ใครแก้ได้แล้วช่วยบอกบ้างนะครับ
หมายเหตุ สำหรับการใช้งานกับ
Mail Client
ซึ่งผู้เขียนได้ทดลองใช้กับโปรแกรม
MS Outlook ก็ปรากฎว่าสามารถใช้งานได้ดีทั้ง
IMAP และ
POP3 ครับ
---จบครับ--- |