การติดตั้ง FreeRadius และ phpmyprepaid บน ubuntu 8.10
ขั้นตอน
- หากยังไม่ติดตั้ง apache และ php ให้ติดตั้งด้วยคำสั่ง
apt-get install apache2 php5 php5-mysql - สั่งให้ apache ทำงานด้วยคำสั่ง
/etc/init.d/apache2 restart - หากยังไม่ติดตั้ง mysql ให้ติดตั้งด้วยคำสั่ง
apt-get install mysql-server - หากยังไม่ติดตั้ง FreeRadius ให้ติดตั้งด้วยคำสั่ง
apt-get install freeradius freeradius-mysql - สั่งให้ FreeRadius ทำงานด้วยคำสั่ง
/etc/init.d/freeradius start - เข้าสู่โปรแกรม mysql ด้วย username คือ root และ password ที่ได้กำหนดไว้ด้วยคำสั่ง
mysql –u root –p
แล้วป้อนรหัสผ่านของ root - ทำการสร้าง Database ชื่อ phpmyprepaid เพื่อใช้ในการเก็บบัญชีผู้ใช้งาน (สามารถจะใช้ชื่อฐานข้อมูลอื่นก็ได้) ด้วยคำสั่งดังนี้
CREATE DATABASE phpmyprepaid; - กำหนดสิทธิให้กับบัญชีผู้ใช้งานบน mysql ที่ชื่อว่า
phpmyprepaid พร้อม password คือ radpass (user และ password
สามารถเปลี่ยนแปลงได้ตามความเหมาะสม) ด้วยคำสั่ง
GRANT ALL PRIVILEGES ON phpmyprepaid.* to 'phpmyprepaid'@'localhost' IDENTIFIED BY 'radpass';
FLUSH PRIVILEGES; - ออกจาก mysql ด้วยคำสั่ง quit
- แก้ไขไฟล์ /etc/freeradius/sql.conf
เพื่อให้เรียกใช้ฐานข้อมูล phpmyprepaid ด้วยสิทธิผู้ใช้เป็น phpmyprepaid
ซึ่งมี password เป็น radpass ดังนี้
# Connection info:
server = "localhost"
login = "phpmyprepaid"
password = "radpass"
# Database table configuration for everything except Oracle
radius_db = "phpmyprepaid" - ทำการกำหนด password ให้กับเครื่อง Client
ที่จะเข้าใช้งาน FreeRadius ที่ไฟล์ /etc/freeradius/cliens.conf
โดยกำหนดให้ client 127.0.0.1 (หรือ client localhost) มีค่า secret =
radiussecret
client localhost {
secret = radiussecret
{
ในกรณีที่อนุญาตให้เครื่อง client อื่นเข้ามาใ้้ช้งาน FreeRadius เช่น client ที่มี IP เป็น 172.24.51.16 ก็ให้กำหนดค่าเพิ่มเติมดังนี้
client 172.24.51.16 {
secret = radiussecret
shortname = chilli
} - แก้ไขไฟล์ /etc/freeradius/sql.conf กำหนดให้ค่า readclients = yes เพื่อที่จะทำให้ radius client อ่านค่าจาก database
- แก้ไขไฟล์ /etc/freeradius/site-enabled/default ดังนี้ (ถ้าเป็น freeradius บน ubuntu เวอร์ชันก่อนหน้านี้เป็นไฟล์ /etc/freeradius/radiusd.conf)
- ในส่วนของ accounting {……} ให้เอาเครื่องหมาย # หน้าคำว่า sql ออก เพื่อเรียกใช้ข้อมูลจาก database ในการตรวจสอบ username , password ในการทำ accounting
- ในส่วน session {……} ให้เอาเครื่องหมาย # หน้าคำว่า sql ออก เพื่อเรียกใช้ข้อมูลจาก database ในการตรวจสอบ username, password ในการทำ session
- ในส่วนของ authorize {……} ให้เอาเครื่องหมาย # ไว้หน้าคำว่า files และเอาเครื่องหมาย # ออกจากคำว่า sql
- ทำการ restart FreeRadius ด้วยคำสั่ง
/etc/init.d/freeradius restart - ตอนนี้ ทั้ง freeradius และ mysql พร้อม database phpmyprepaid ว่าง ๆ พร้อมแล้ว
ต่อไปจะทำการติดตั้งโปรแกรม phpmyprepaid แล้วรันโปรแกรมผ่านเว็บบราวเซอร์
จากนั้นจะเซ็ตค่าต่าง ๆ บนหน้าเว็บ ทำให้ได้ table ต่าง ๆ ที่จำเป็นใช้งานเกิดขึ้น - ย้ายเข้าไปในไดเรกทอรี /var/www/ ด้วยคำสั่ง
cd /var/www - ดาวน์โหลดโปรแกรม phpmyprepaid เวอร์ชั่น 0.4 RC2 ด้วยคำสั่ง wget ดังนี้
wget http://downloads.sourceforge.net/phpmyprepaid/phpmyprepaid04RC2.tgz - คลายแฟ้มออกมาจะได้ไดเรกทอรี phpmyprepaid
tar zxvf phpmyprepaid04RC2.tgz - ติดตั้งโปรแกรม rrdtool ด้วยคำสั่ง
apt-get install rrdtool - เปิด browser และเรียกไปที่ http://host/phpmyprepaid/www แล้วระบบจะเปิดไฟล์ setup.php ดังรูป
- ขั้นที่ 2 เป็นเรื่องของ License ให้คลิ๊กช่อง I Accept แล้วคลิ๊กปุ่ม Next
- ขั้นตอนที่ 3 ถ้าเจอปัญหาดังรูป
ให้ใช้คำสั่ง
chmod 777 /var/www/phpmyprepaid/www
แล้วจะได้ผลลัพท์ดังรูป
- ขั้นตอนที่ 4 จะเป็นดังรูป ให้ป้อนค่าให้ถูกต้องโดยเฉพาะค่า Phpmyprepaid path อาจจะต้องเปลี่ยนให้ตรงความเป็นจริง
- ขั้นตอนเป็นการคอนฟิก Radius ก็ให้ป้อนข้อมูลให้ตรงตามรูป
- ขั้นที่ 6 เป็นการจัดการเรื่อง User Interface ก็ให้ป้อนข้อมูลตามต้องการ แต่อย่าลืม user และ password ที่ได้กำหนดไว้ด้วย
- ขั้นตอนที่ 7 เป็นการคอนฟิกฐานข้อมูล ให้ป้อนข้อมูลตรงกับที่ได้กำหนดไว้ดังรูป
- เมื่อป้อนข้อมูลในขั้นตอนที่ 7 ถูกต้อง ก็จะได้ผลลัพท์ดังขั้นตอนที่ 8
- ขั้นตอนที่ 9 เป็นการป้อนข้อมูล Location ดังรูป
- ขั้นตอนที่ 11 เป็นการคอนฟิกข้อมูลทั่วไป ดังรูป
- ขั้นตอนที่ 11 เป็นขั้นตอนสุดท้าย ให้อ่านข้อความด้วยนะครับเพราะมีคำแนะนำบางอย่างที่ต้องทำตามด้วย
- จากนั้นเมื่อเราเรียกใช้งาน http://host/phpmyprepaid/www/ ก็จะได้หน้าตาดังรูป
- เมื่อ Login เข้าสู่ระบบได้แล้ว จะได้ผลลัพท์ดังรูป
- รูปข้างล่างเป็นตัวอย่างการเพิ่ม Account ที่สามารถกำหนดความเร็วในการ upload และ download ได้
- ทดสอบการทำงานของ FreeRadius ด้วยคำสั่ง radtest
radtest username password localhost 0 mysecret
ถ้าเซ็ตอัพถูกต้องและป้อนค่าถูกต้องจะได้ผลลัพธ์ว่า Access-Accept ดังรูป
ถ้าไม่ได้ให้ลองเปลี่ยนคำว่า localhost เป็น 127.0.0.1
0 comments:
Post a Comment