ลง Zimbra แบบ High Availability ด้วย DRBD, Heartbeat และ Pacemaker บน Ubuntu

Tags: 

Linux

หลังจากตอนที่แล้ว ลง Zimbra บน Ubuntu เพื่อใช้งานเป็นอีเมลเซิร์ฟเวอร์แบบมืออาชีพ ในความเป็นจริงหลายๆ บริษัทถือว่าอีเมลเซิร์ฟเวอร์ถือเป็นสิ่งที่มีความสำคัญมาก บางบริษัทถ้าอีเมลล่มไปก็อาจจะทำให้บริษัทแทบจะล้มละลายได้เลยทีเดียว (ว่าไปนั่น แต่ก็จริงนะเออ) เพราะฉะนั้นเทคนิคในการทำให้เซิร์ฟเวอร์สามารถให้บริการได้ตลอดเวลานั้นเราเรียกว่า High Availability ซึ่งในทางปฏิบัติจริงนั้นสามารถทำได้หลายรูปแบบมากๆ แต่สำหรับบทความนี้ผมจะแนะนำการทำ High Availability บน Zimbra ด้วยซอฟต์แวร์สามตัวที่มีชื่อว่า DRBD, Heartbeat และ Pacemaker

DRBD เป็นซอฟต์แวร์สำหรับทำสำเนาข้อมูลฮาร์ดดิสก์ทั้งสองลูกให้เหมือนกันผ่านทางระบบเครือข่าย หรือพูดแบบง่ายๆ คือ RAID1 ผ่านทางระบบเครือข่ายนั่นเอง ซึ่งในทาง High Availability แล้ว DRBD คือการทำให้เซิร์ฟเวอร์สองเครื่องมีข้อมูลเหมือนกันอยู่เสมอ ถ้ามีเครื่องใดเครื่องหนึ่งล่มไป ก็สามารถนำอีกเครื่องหนึ่งเข้ามาทำงานแทนได้ทันที โดยที่ข้อมูลไม่มีการสูญหาย

ส่วน Heartbeat และ Pacemaker จะมีหน้าที่ตามชื่อเลยครับ Heartbeat คือส่วนของการดูการทำงานของหัวใจ ในที่นี้หัวใจก็คือเซิร์ฟเวอร์ ถ้าเซิร์ฟเวอร์มีปัญหาอย่างใดอย่างหนึ่งที่ไม่สามารถให้บริการตามปกติได้ Pacemaker จะทำการกระตุ้นหัวใจ ซึ่งในที่นี้ก็คือการทำให้เซิร์ฟเวอร์สำรองเข้ามาทำงานแทนโดยอัตโนมัติโดยที่ผู้ดูแลระบบไม่จำเป็นต้องเข้ามาจัดการอะไรเลยแม้แต่อย่างเดียว

บทความนี้จะเน้นเอา Zimbra มาทำ High Availability ด้วย DRBD, Heartbeat และ Pacemaker โดยให้อ้างอิงจากวิธีการลง Zimbra บน Ubuntu เพื่อใช้งานเป็นอีเมลเซิร์ฟเวอร์แบบมืออาชีพ นำมาปรับแต่งบางขั้นตอนนะครับ

ลง Zimbra บน Ubuntu เพื่อใช้งานเป็นอีเมลเซิร์ฟเวอร์แบบมืออาชีพ

Tags: 

Linux

Zimbra เป็นซอฟต์แวร์สำหรับทำอีเมลเซิร์ฟเวอร์ที่มีความสามารถมากตัวหนึ่ง ซึ่งสามารถนำมาใช้ทดแทน Exchange Server ได้เป็นอย่างดีเลยทีเดียว (รายละเอียดเพิ่มเติม) ซึ่งแม้ภายหลังจะถูก VMware ซื้อไป และเปลี่ยนชื่อเป็น VMware Zimbra แต่ลักษณะโมเดลธุรกิจก็ยังไม่เปลี่ยนแปลงจากเดิม คือมี ZCS Open Source Edition ซึ่งเป็นเวอร์ชันที่สามารถนำไปใช้งานได้ฟรีๆ หรือถ้าอยากได้เวอร์ชันที่มีความสามารถมากขึ้น เช่น ใช้ร่วมกับ Microsoft Outlook, iPhone, Android, Windows Mobile ได้เป็นอย่างดี รวมถึงสามารถขยายการใช้งานแบบ Clustering ได้ ก็สามารถซื้อ ZCS Network Edition ที่ราคาถูกกว่า Exchange Server อย่างแน่นอน (รายละเอียดเพิ่มเติม)

ซึ่งสำหรับในบทความนี้ จะเน้นไปที่การลง ZCS Open Source Edition บน Ubuntu ซึ่งก่อนจะเริ่มติดตั้งจะต้องเตรียม

  • เครื่องเซิร์ฟเวอร์ที่ติดตั้ง Ubuntu 10.04 LTSเพียงอย่างเดียว โดยไม่มีซอฟต์แวร์อื่น
    • ในตัวอย่างการติดตั้งนี้จะตั้งชื่อ hostname เป็น webmail.zimbra.wingfoss.com
  • ไอพีจริงอย่างน้อย 1 ไอพี
  • โดเมนที่ผูกกับไอพีจริง และทำการตั้งค่า MX record และ hostname ให้ตรงกับเซิร์ฟเวอร์ที่ใช้ติดตั้ง
    • ในตัวอย่างนี้จะใช้โดเมน @zimbra.wingfoss.com ในการติดตั้ง

วิธีการตั้งค่าให้ DirectAdmin Block IP อัตโนมัติเมื่อตรวจพบการ Brute Force บน Debian 6 64-bit

Tags: 

Linux

DirectAdmin ตั้งแต่เวอร์ชัน 1.39 เป็นต้นไป ได้เพิ่มความสามารถในการตรวจสอบการ Brute Force หรือการเดาสุ่มรหัสผ่านไปเรื่อยๆ (รายละเอียด) แต่สิ่งหนึ่งที่ DirectAdmin ไม่ได้ทำมาให้คือ ทำการแบนไอพีที่มา Brute Force เราโดยอัตโนมัติ ทำให้ DirectAdmin ทำได้เพียงแค่แจ้งเตือนว่ามีไอพีใด Brute Force เครื่องเราเรื่อยๆ โดยไม่ได้มีประโยชน์อันใดเพิ่มขึ้นมา (นอกจากทำให้รำคาญอีเมลแจ้งเตือน) เพราะฉะนั้นบทความนี้จะมาบอกถึงขั้นตอนทำให้ DirectAdmin แบนไอพีที่มา Brute Force โดยอัตโนมัติ โดยลินุกซ์ดิสโทรที่ผมใช้คือ Debian 6 64-bit ถ้าใช้ CentOS ลองทำตามขั้นตอนที่นี่ดูครับ

  • ขั้นแรกให้ลง iptables ก่อนด้วยคำสั่ง
apt-get install iptables

ว่าด้วยเรื่อง MySQL backend ของ OpenLDAP

Tags: 

Linux

จาก วิธีการลง OpenLDAP บน Debian 6 64-bit โดยใช้ MySQL เป็นฐานข้อมูล ที่ผมติดไว้เรื่องของจะสร้าง MySQL Schema อย่างไร วันนี้ก็จะมาอธิบายถึง Schema ตัวอย่างที่ผมใช้งานอยู่ ผู้อ่านอาจจะต้องมีพื้นฐานของ LDAP บ้างนิดหน่อยเพราะผมคงไม่ได้อธิบายตั้งแต่พื้นฐาน และขอออกตัวไว้ก่อนว่า ตัวอย่างที่ได้มานี้ก็ได้มาจากการมั่วๆ ลองผิดลองถูก รวมถึงผมก็ไม่ได้เป็นผู้เชี่ยวชาญเรื่อง Directory Service ด้วย เพราะฉะนั้นถ้ามีตรงไหนอธิบายผิดไป ก็แย้งหรือแก้ไขได้ในคอมเมนท์เลยนะครับ

วิธีการลง OpenLDAP บน Debian 6 64-bit โดยใช้ MySQL เป็นฐานข้อมูล

Tags: 

Linux

ช่วงนี้จะสังเกตได้ว่ามาเขียนบ่อย เพราะว่ามีโปรเจคที่ต้องทำเยอะมาก ได้ค้นคว้าหาความรู้ใหม่ๆ ทุกวัน แต่ถ้าปล่อยทิ้งไว้มันก็จะละลายหายไป เพราะฉะนั้นต้องรีบๆ มาเขียนไว้ก่อนที่จะลืม สำหรับวันนี้ก็จะเป็นเรื่อง OpenLDAP โดยใช้ MySQL ในการเก็บโครงสร้างของข้อมูล

LDAP (Lightweight Directory Access Protocol) คือโปรโตคอลสำหรับการเข้าถึงข้อมูลแบบ Directory Service (LDAP คืออะไร?) ส่วน OpenLDAP คือซอฟต์แวร์ทำ LDAP แบบ Open Source ที่มักจะใช้กันในลินุกซ์ ถ้าระบบ LDAP ในหมู่ผู้ดูแลระบบวินโดว์ที่จะรู้จักกันดีก็คือ Active Directory ครับ

ปกติแล้วการเก็บข้อมูลบน OpenLDAP จะเก็บอยู่ในรูปของ LDIF File (ตัวอย่าง) แต่ OpenLDAP ตั้งแต่เวอร์ชัน 2.0 เป็นต้นมา เริ่มสนับสนุนการเก็บข้อมูลแบบ back-sql (SQL Backend) หรือการเก็บข้อมูลที่อยู่ในรูปแบบ RDBMS ซึ่งมีข้อดีคือ เราสามารถเชื่อมต่อกับระบบอื่นได้สะดวก เช่น สามารถใส่ข้อมูลของผู้ใช้ที่เราเก็บไว้อยู่ในฐานข้อมูลอยู่แล้วได้ทันที โดยไม่ต้องมานั่งแปลงเป็นรูปแบบ LDIF

สำหรับบทความนี้จะสอนถึงวิธีการลง OpenLDAP โดยใช้ MySQL เป็นฐานข้อมูลบน Debian 6 64-bit ครับ

วิธีการลง VMware Tools แบบ Command Line บน Debian, Ubuntu และ CentOS

Tags: 

Linux

ทุกวันนี้ คิดว่าเกือบทุกคนที่จะทดสอบระบบ คงจะใช้ Virtualization เป็นระบบจำลองสำหรับการทดสอบระบบ ซึ่งรวมถึงหลายๆ บริษัทที่อาจจะใช้ Virtualization เป็นระบบใช้งานจริงแล้วด้วยซ้ำ ซึ่งทุกคนคงปฏิเสธไม่ได้ว่า VMware ตอนนี้เป็นเจ้าตลาด Virtualization แถมด้วยแจกบางตัวฟรีๆ อีก เช่น VMware Player, VMware vSphere Hypervisor (ESXi) แค่นี้ก็แทบจะทำให้คนหลายคนยอมถวายหัวให้ VMware กันไปเลยทีเดียว (ผมก็หนึ่งในนั้น)

ในการที่จะใช้งาน Virtualization บน VMware ให้ได้อย่างมีประสิทธิภาพนั้น สิ่งหนึ่งที่จะต้องทำคือ การลงซอฟต์แวร์ VMware Tools ลงบนตัว Guest OS ซึ่งคนที่ลงวินโดว์บน VMware คงจะรู้กันดีว่ามันคือตัวที่ทำให้เลื่อนเมาส์ได้ไม่กระตุก และไม่ต้องคอยกด Ctrl + Alt เพื่อออกจาก Guest OS แต่จริงๆ แล้ว VMware Tools มีประโยชน์มากกว่านั้น เช่น การลงไดร์เวอร์ การอ่านค่าหลายๆ อย่างจาก Guest OS รวมถึงการควบคุมด้วย

การลง VMware Tools บน Guest OS ประเภทวินโดว์นั้นลงไม่ยาก เหมือนเป็นการลงโปรแกรมทั่วๆ ไป แต่ถ้าจะลงบนลินุกซ์ที่ทำเป็นเซิร์ฟเวอร์แบบไม่มี GUI ล่ะ จะทำยังไง บทความนี้มีคำตอบครับ

การติดตั้ง CentOS 6 64-bit แบบ minimal

Tags: 

Linux

หลายๆ คนที่เล่นลินุกซ์ย่อมรู้จัก Red Hat ซึ่งเป็นทั้งชื่อบริษัทและชื่อดิสโทรของลินุกซ์ที่ได้รับความนิยมมากที่สุดตัวหนึ่ง แต่อีกหลายๆ คนอาจไม่รู้ว่าจริงๆ แล้วเราสามารถใช้งาน Red Hat ได้ฟรี (ถ้าสามารถหา ISO มาลงเองได้) แต่จะไม่สามารถติดตั้ง หรืออัพเดตซอฟต์แวร์จาก Red Hat Repository ได้ ถ้าไม่ได้ลงทะเบียน Red Hat Subscription ไว้

แต่ในความเป็นจริงแล้ว การนำลินุกซ์มาปรับแต่งเป็นดิสโทรต่างๆ นั้น สิ่งหนึ่งที่ถูกระบุไว้ในข้อตกลงก็คือ คุณจะต้องเปิดเผยซอร์สโค้ดที่คุณนำไปปรับแต่งเรียบร้อยแล้ว ซึ่ง Red Hat ก็ได้ทำตามข้อกำหนดนี้เช่นกัน แต่ปัญหาคือ Red Hat ไม่ได้เปิดเผยวิธีการคอมไพล์ซอร์สโค้ดเหล่านั้น ทำให้ต่อให้ได้โค้ดมา ก็ไม่สามารถนำมาใช้งานได้อยู่ดี

CentOS (Community ENTerprise Operating System) จึงเป็นลินุกซ์ดิสโทรที่นำโค้ดของ Red Hat มาหาวิธีคอมไพล์ด้วยตัวเอง ซึ่งจะพบว่าทุกอย่างนั้นเหมือนกับ Red Hat หมดทุกอย่าง ยกเว้นเพียงแค่เรื่องของแบรนด์ และซอฟต์แวร์เฉพาะของ Red Hat บางอย่างที่ไม่มีเท่านั้นเอง

ปัจจุบันนี้ CentOS ได้รับความนิยมในเมืองไทยมาก เนื่องจากชื่อเสียงของ Red Hat ที่ทุกคนเชื่อถือว่ามันมีความปลอดภัยสูง และเสถียร เพราะฉะนั้น CentOS ก็สมควรที่จะได้รับคุณสมบัติเดียวกัน ซึ่งเวอร์ชันล่าสุดของ CentOS ก็จะไล่ตาม Red Hat คือเวอร์ชัน 6 และในบทความนี้ผมจะมาแนะนำวิธีการติดตั้ง CentOS 6 64-bit แบบ minimal หรือแบบที่ลงซอฟต์แวร์เท่าที่จำเป็นเท่านั้น ซึ่งเหมาะสมสำหรับใช้งานเป็นเซิร์ฟเวอร์ โดยสามารถดาวน์โหลด ISO แบบ minimal ได้จาก ที่นี่ เลยครับ

การติดตั้ง Ubuntu Server 10.04 LTS (Lucid Lynx) 64-bit

Tags: 

Linux

ช่วงนี้มีโปรเจคที่จะต้องลง Zimbra ซึ่งเป็นซอฟต์แวร์ทำระบบอีเมลเซิร์ฟเวอร์ มีระบบปฏิบัติการที่รองรับเพียงแค่ Red Hat Enterprise Linux, SUSE Linux Enterprise Server และ Ubuntu Server เท่านั้น ซึ่งถ้าพิจารณาจากตัวเลือกที่ทำให้เสียค่าใช้จ่ายน้อยที่สุดก็คงต้องใช้ Ubuntu Server เท่านั้น

หลายคนอาจจะรู้จัก Ubuntu จากเวอร์ชัน Desktop ซึ่งเป็นลินุกซ์ที่ถูกปรับปรุงจาก Debian และพยายามทำให้ผู้ใช้สามารถใช้งานได้ง่ายที่สุด แต่จริงๆ แล้ว Ubuntu ยังมีเวอร์ชัน Server ที่ถูกออกแบบมาสำหรับการใช้งานเป็นเครื่องแม่ข่ายโดยเฉพาะด้วยเหมือนกัน

เพราะฉะนั้นบทความนี้ผมจะมาแนะนำวิธีการติดตั้ง Ubuntu Server กันแบบทีละขั้นตอน ซึ่งเวอร์ชันของ Ubuntu Server ที่ผมจะใช้เขียนบทความนี้ (และเป็นเวอร์ชันที่รองรับ Zimbra) คือ Ubuntu Server 10.04 LTS (Lucid Lynx) 64-bit สามารถดาวน์โหลด ISO ได้จาก ที่นี่ เลยครับ

Pages

Subscribe to WingFOSS RSS