Showing posts with label CentOS. Show all posts
Showing posts with label CentOS. Show all posts

Tuesday, January 20, 2009

สร้าง DNS server ด้วย MyDNS และ MyDNSConfig ด้วย CentOS

เดือนนี้ได้มีโอกาสจัดทำเครื่อง mail server ให้กับบริษัทแห่งหนึ่ง เพื่อใช้เป็นช่องทางหนึ่งของการสื่อสารภายใน วัตถุประสงค์เพื่อลดการใช้กระดาษ และใช้เทคโนโลยีทางด้านเน็ตเวิร์กให้เกิดประโยชน์สูงสุด แน่นอนเครือง server ใช้ PC เก่า ๆ ธรรมดาๆ
และใช้ os เป็น CentOS โดยมีเครื่องปรุงที่สำคัญคือ mydns,mydnsconfig,mysql,dovecot,postfix เพื่อให้บรรลุวัตถุประสงค์ของการเป็นเมล์เซิร์ฟเวอร์ดังกล่าว

องค์ประกอบหนึ่งของเมล์เซิร์ฟเวอร์คือ MX record ใน domain server แต่ไหนแต่ไรมาใน linux เราก็ใช้โปรแกรม BIND เป็นหลัก ซึ่งก็รับประกันได้ในความรวดเร็วและความยืดหยุ่น แต่ไฟล์ที่เกี่ยวข้องมีหลายไฟล์ และยุ่งยากพอสมควร ในที่นี้จึงได้เลือกใช้ mydns เป็น domain ทำหน้าที่ดูแล MX record ดังกล่าว โดยใช้ mydnsconfig เป็นเครื่องมือช่วย set ค่าต่าง ๆ ผ่าน web interface ซึ่งทำได้ง่าย ๆ และเสร็จสิ้นภายใน 30 นาทีเท่านั้นเอง

ขั้นตอนการติดติด mydns ประกอบด้วยสร้างฐานข้อมูลขึ้นมารองรับ สร้าง mydnsconfig และสุดท้ายติดตั้ง dns

ขั้นตอนสร้างฐานข้อมูล ด้วย MySQL

1. รัน mysql ขึ้นมาก่อน
/etc/init.d/mysqld start

2. login เข้า mysql และสร้างฐานข้อมูล
mysql -u root -p < จะขึ้นให้ใส่พาสเวิร์ด >

CREATE DATABASE mydns;
GRANT SELECT,INSERT,UPDATE,DELETE ON mysql.* TO 'mydns'@'localhost' IDENTIFIED BY 'yourpassword';
GRANT SELECT,INSERT,UPDATE,DELETE ON mysql.* TO 'mydns'@'localhost.localdomain' IDENTIFIED BY 'yourpassword';
FLUSH PRIVILEGES;
quit;

'yourpassword' ให้กำหนดพาสเวิร์ดในที่นี้เราใช้ mydns2008

ขั้นตอน setup MyDNSConfig

1. download
- wget http://mesh.dl.sourceforge.net/sourceforge/mydnsconfig/MyDNSConfig-1.1.0.tar.gz
- tar xvfz MyDNSConfig-1.1.0.tar.gz
- cd MyDNSConfig-1.1.0
- mkdir /usr/share/mydnsconfig
- cp -rf interface/* /usr/share/mydnsconfig/
- ln -s /usr/share/mydnsconfig/web/ /var/www/html/mydnsconfig

2. install MyDNSConfig MySQL จากไฟล์ .sql
mysql -u root -p mydns < install/mydnsconfig.sql

3. ปรับแต่งไฟล์ config ให้ถูกต้อง

- vi /usr/share/mydnsconfig/lib/config.inc.php

/*
Database Settings
*/
$conf["db_type"] = 'mysql';
$conf["db_host"] = 'localhost';
$conf["db_database"] = 'mydns';
$conf["db_user"] = 'root';
$conf["db_password" = 'mydns2008';

Cannot load mcrypt extension (phpMyadmin)

วันนี้ได้ติดตั้ง phpmyadmin บน Centos 4.3 ผ่านขั้นตอนทุกอย่างเสร็จสรรพแล้ว พร้อมที่จะเปิดเข้าใช้ phpmyadmin
ด้วย http://localhost/phpmyadmin กด enter พลันมีข้อความ error ด้านล่างดังนี้

Cannot load mcrypt extension. Please check your PHP configuration ...

ก็ต้องมาหาวิธีแก้กันยกใหญ่หล่ะทีนี้ จากคำตอบที่ได้จากอาจารย์ google พอสรุปได้ ดังนี้

1. ถ้าลง linux เป็น debain หรือ ubuntu ให้ใช้คำสั่ง yum install php-mcrypt CentOS ของเราก็ใช้คำสั่งนี้ได้ แต่ ใสเจีย เสียใจ เพราะไม่ประสบผลสำเร็จ ...
2. ผู้เชี่ยวชาญอีกท่านบอกว่ามันเป็นปัญหาจากไฟล์ php.ini ในโฟลเดอร์ php ให้ดำเนินการแก้ซะให้ถูกต้อง ดังนี้
- เปิดไฟล์ php.ini ด้วย text editor ที่ท่านถนัด
- ค้นหาส่วนที่เขียนว่า ;extension=php_mcrypt.dll
- หาเจอแล้วให้เอาเครื่องหมาย ; ออกก็จะได้ extension=php_mcrypt.dll แบบเน้น ๆ ไม่มี ; นำหน้า
- แล้ว restart server ว่างั้น
ถ้าปัญหายังไม่หายไป ก็ให้ copy ไฟล์ libmcrypt.dll จากโฟลเดอร์ php ไปไว้ที่ windows ซะ
อันนี้คงเป็นอาจารย์จากฝั่ง windows มาแนะนำ ก็ถือว่ารู้ไว้ใช่ว่า หล่ะกัน ของเราคงบายไปก่อน เพราะเป็น linux

3. สำหรับ เคสของนี้ต้องติดตั้ง package เพิ่มเติม ดังนี้
- php-mcrypt-4.3.9-3.2.1.i386.rpm
- ซึ่งไฟล์ข้างบนี้ต้องการ lib ตัวนี้ libmcrypt-2.5.7-1.2.el4.rf.i386.rpm
ให้ติดตั้งตัว libmcrypt ก่อน ตามด้วย php-mcrypt จากนั้น restart webserver ใหม่ error ดังกล่าว
ก็หมดไปโดยปริยาย ไม่ขึ้นมากวนใจอีกต่อไป อิอิ...

Monday, August 25, 2008

Vtfp with CentOS

วันนี้ต้อง upgrade firmware ของอุปกรณ์ thin client โดยผ่าน ftp ด้วยความกรุณาของช่าง
แนะนำให้เราสร้าง ftp server บน windows 2003 ไอ้ความที่เราไม่ค่อยถนัดนักในเรื่องของ window
จึงได้ทำบน linux ของเราดีกว่า เสร็จแล้วค่อยโทรไปหาฝ่าย support ของ thin client อีกครั้ง

Twitter Delicious Facebook Digg Stumbleupon Favorites More