Saturday, December 9, 2006

Secure phpMyAdmin

Hi ^^ ครั้งก่อนได้นำเสนอการเข้าใช้ phpMyAdmin เมื่อเราได้ตั้ง password ให้กับ mysql server แล้วทำให้เราไม่สามารถเข้าใช้งาน phpMyAdmin ใน

/var/www/html/phpMyAdmin/library/config.default.php

เราสามารถแก้ไขได้ ด้วยการเพิ่มรหัสผ่านที่เราได้ทำการตั้งไว้ใน mysql server

$cfg['Servers'][$i]['auth_type'] = 'config'; // Authentication method (config, http or cookie based)?
$cfg['Servers'][$i]['user'] = 'root'; // MySQL user
$cfg['Servers'][$i]['password'] = 'password'; // MySQL password (only needed
// with 'config' auth_type)

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

- ลองสังเกต ด้านบนของบรรทัด

$cfg['Servers'][$i]['user'] = 'root'; // MySQL user

- มันจะมีบรรทัดหนึ่งที่ได้ใส่ค่า config ไว้

$cfg['Servers'][$i]['auth_type'] = 'config';

- ทีนี้มันก็จะมี comment อธิบายอยู่ครับ

// Authentication method (config, http or cookie based)?

- คำที่มันบอกให้เราใส่ก็จะมี config , http และ cookie
เราก็ลองเปลี่ยนไปใส่ค่าอีก 2 ตัวที่เหลือ ดูสิครับลองใส่ทีละตัวนะครับ เช่น
$cfg['Servers'][$i]['auth_type'] = 'http';

- ถ้าเราใส่ http มันก็จะมี popup ให้เราใส่ ชื่อผู้ใช้ กับ รหัสผ่าน เราก็ใส่เป็น root หรือ user ที่มีใน mysql server ของเราที่เราได้ตั้งค่า user name password เอาไว้ครับ

- ถ้าเราใส่เป็น cookie มันจะมีฟอร์มให้เรากรอก user และ password แต่ถ้ามันไม่มีช่อง ให้เรากรอกเราต้องไปแก้ไขในส่วนของ
$cfg['blowfish_secret'] = '';

- โดยเราเพิ่มคำว่า cookie เข้าไปครับ
$cfg['blowfish_secret'] = 'cookie';

- ลองรีเฟรช หน้า phpMyAdmin อีกทีครับ

* การตั้งรหัสผ่านใน mysql server
mysql> set password=password('yourpassword');

No comments:

Post a Comment

Popular Posts