โดย อดิศร ขาวสังข์
อ้างอิง http://putudude.blogspot.com/2009/05/freeradius-on-ubuntu-904.html , http://daloradius.wiki.sourceforge.net/space/showimage/daloRADIUS+Users+Manual.pdfทดลองบน Ubuntu 9.04
แนะนำ daloRADIUS
daloRADIUS เป็น advanced RADIUS web plateform มีวัตถุประสงค์เพื่อจัดการ hotspots และการใช้งานของ ISP ทั่วไป มีคุณลักษณะด้านการบริหารจัดการ user,การรายงานแบบกราฟฟิก, การทำจัดบัญชี (accounting) และ billing engine รวมถึงการมี GoogleMaps สำหรับการจัดการหาตำแหน่ง
daloRADIUS เีีขียนด้วยภาษา PHP และ JavaScript และสามารถใช้ database หลายระบบได้เช่น MySQL, PostgreSQL, Sqlite, MsSQL และอื่น ๆ
โดยยึดถือ FreeeRadius ในการพัฒนา ด้วยใ้ช้ database server ทำหน้าที่เป็น backend สำหรับคุณลักษณะอื่น ๆ ก็สามารถอิมพลีเมนต์ ACLs, GoogleMaps เพื่อหาตำแหน่ง hotspots/access point และคุณลักษณะอื่นๆ
daloRADIUS เป็น Web Application สำหรับจัดการ radius server ตามหลักการแล้่วสามารถจัดการ radius server ใด ๆ ได้ และโดยเฉพาะก็เป็น FreeRadius และ Database structure ของ FreeRadius
การอัพเกรด
การอัพเกรด daloRADIUS เกี่ยวข้องกับการอัพเดต daloradius.conf.php ด้วย newer options ทำได้ด้วยการเขียนทับไดเร็กทอรี่ daloradius อันเก่าด้วยทั้งหมดของ php/html/javascript code ที่เป็น daloradius package file ล่าสุด พร้อมกับการนำเข้า database scheme file ซึ่ง update/insert ตารางใหม่และ record เข้าสู่ databse
สำหรับรายละเีอียดการอัพเกรดเพิ่มเติมดูได้ที่ manual ของ daloRADIUS นะครับ
daloRADIUS เป็น advanced RADIUS web plateform มีวัตถุประสงค์เพื่อจัดการ hotspots และการใช้งานของ ISP ทั่วไป มีคุณลักษณะด้านการบริหารจัดการ user,การรายงานแบบกราฟฟิก, การทำจัดบัญชี (accounting) และ billing engine รวมถึงการมี GoogleMaps สำหรับการจัดการหาตำแหน่ง
daloRADIUS เีีขียนด้วยภาษา PHP และ JavaScript และสามารถใช้ database หลายระบบได้เช่น MySQL, PostgreSQL, Sqlite, MsSQL และอื่น ๆ
โดยยึดถือ FreeeRadius ในการพัฒนา ด้วยใ้ช้ database server ทำหน้าที่เป็น backend สำหรับคุณลักษณะอื่น ๆ ก็สามารถอิมพลีเมนต์ ACLs, GoogleMaps เพื่อหาตำแหน่ง hotspots/access point และคุณลักษณะอื่นๆ
daloRADIUS เป็น Web Application สำหรับจัดการ radius server ตามหลักการแล้่วสามารถจัดการ radius server ใด ๆ ได้ และโดยเฉพาะก็เป็น FreeRadius และ Database structure ของ FreeRadius
การอัพเกรด
การอัพเกรด daloRADIUS เกี่ยวข้องกับการอัพเดต daloradius.conf.php ด้วย newer options ทำได้ด้วยการเขียนทับไดเร็กทอรี่ daloradius อันเก่าด้วยทั้งหมดของ php/html/javascript code ที่เป็น daloradius package file ล่าสุด พร้อมกับการนำเข้า database scheme file ซึ่ง update/insert ตารางใหม่และ record เข้าสู่ databse
สำหรับรายละเีอียดการอัพเกรดเพิ่มเติมดูได้ที่ manual ของ daloRADIUS นะครับ
ขั้นตอนการติดตั้ง
1.หากยังไม่ติดตั้ง apache ให้ติดตั้งด้วยคำสั่ง
apt-get install apache2
2.ติดตั้งโปรแกรมเกี่ยวกับ php ดังนี้
2.ติดตั้งโปรแกรมเกี่ยวกับ php ดังนี้
apt-get install php5-common php5-gd php-pear php-db libapache2-mod-php5
3.ติดตั้งโปรแกรมเกี่ยวกับ MySQL ดังนี้
3.ติดตั้งโปรแกรมเกี่ยวกับ MySQL ดังนี้
apt-get install php5-mysql mysql-server
4.หากยังไม่ติดตั้ง FreeRadius ให้ติดตั้งด้วยคำสั่ง
4.หากยังไม่ติดตั้ง FreeRadius ให้ติดตั้งด้วยคำสั่ง
apt-get install freeradius freeradius-mysql
5.ดาวน์โหลด daloRADIUS จาก http://sourceforge.net/projects/daloradius ดังนี้
5.ดาวน์โหลด daloRADIUS จาก http://sourceforge.net/projects/daloradius ดังนี้
wget http://sourceforge.net/projects/daloradius/files/daloradius/daloradius-0.9-8.tar.gz
6.แตกไฟล์ด้วยคำสั่ง
6.แตกไฟล์ด้วยคำสั่ง
tar -zxvf daloradius-0.9-8.tar.gz
7.ย้ายไดเร็กทอรี่ของ daloradius ไปยังตำแหน่งของ web ด้วยคำสั่ง
7.ย้ายไดเร็กทอรี่ของ daloradius ไปยังตำแหน่งของ web ด้วยคำสั่ง
cp daloiradius-x.y-z/ /var/www -R
8.เซ็ต permission ดังนี้
8.เซ็ต permission ดังนี้
chown www-data:www-data /var/www/daloradius-x.x-z -R
9.ทำการ chmod ดังนี้
9.ทำการ chmod ดังนี้
chmod 644 /var/www/daloradius-x.y-z/library/daloradius.conf.php
10.ทำการสร้างฐานข้อมูลชื่อว่า radius ดังนี้
10.ทำการสร้างฐานข้อมูลชื่อว่า radius ดังนี้
11.ใช้คำสั่ง quit เพื่อออกจากฐาน MySQL
12.สร้างตารางให้กับฐานข้อมูลชื่อ radius ด้วยการใช้ script ที่มีให้มาแล้วกับ daloradius โดยใ้ช้คำสั่งดังนี้
12.สร้างตารางให้กับฐานข้อมูลชื่อ radius ด้วยการใช้ script ที่มีให้มาแล้วกับ daloradius โดยใ้ช้คำสั่งดังนี้
mysql -u root -p radius < /var/www/daloradius-0.9-8/contrib/db/fr2-mysql-daloradius-and-freeradius.sql
ซึ่งคำว่า radius หมาุยถึงชื่อฐานข้อมูล และเมื่อมีการถามรหัสผ่านก็ให้ป้อนรหัสผ่านของ root สำหรับคนที่มี database ชื่อ radius อยู่แล้วก็ไม่้้ต้องทำการสร้างฐานข้อมูลอีก และให้ใช้คำสั่งเพื่อเรียก script อีกไฟล์ดังนี้
mysql -u root -p radius < /var/www/daloradius-0.9-8/contrib/db/mysql-daloradius.sql
ยังไงถ้าเป็นการอัพเกรดให้ดูคู่มือตามที่ได้อ้างอิงไว้ประกอบนะครับ
13.เปิดไฟล์คอนฟิกคือ /var/www/daloradius-x.y-z/library/daloradius.conf.php แ้ล้วแก้ไขค่าสำคัญดังนี้
CONFIG_DB_ENGINE = mysql
CONFIG_DB_HOST = 127.0.0.1
CONFIG_DB_USER = root
CONFIG_DB_PASS =CONFIG_DB_NAME = radius
14.การคอนฟิก freeradius
14.1แก้ไขไฟล์ /etc/freeradius/sql.conf เพื่อให้เรียกใช้ฐานข้อมูล radius ด้วยสิทธิผู้ใช้เป็น root ซึ่งมี password เป็นตามที่ได้กำหนดไว้ ดังนี้
server = "localhost"
login = "root"
password = "xxxxxx"
radius_db = "radius"
14.2ทำการกำหนด password ให้กับเครื่อง Client ที่จะเข้าใช้งาน FreeRadius ที่ไฟล์ /etc/freeradius/clients.conf โดยกำหนดให้ client 127.0.0.1 (หรือ client localhost) มีค่าsecret = radiussecretclient
localhost {
secret = radiussecret
{
ในกรณีที่อนุญาตให้เครื่อง client อื่นเข้ามาใ้้ช้งาน FreeRadius เช่น client ที่มี IP เป็น 172.24.51.16 ก็ให้กำหนดค่าเพิ่มเติมดังนี้
client 172.24.51.16 {
secret = radiussecret
shortname = chilli
}
14.3แก้ไขไฟล์ /etc/freeradius/sql.conf กำหนดให้ค่า readclients = yes เพื่อที่จะทำให้ radius client อ่านค่าจาก database
14.4 แก้ไขไฟล์ /etc/freeradius/site-enabled/default ดังนี้
ในส่วนของ accounting {……} ให้เอาเครื่องหมาย # หน้าคำว่า sql ออก เพื่อเรียกใช้ข้อมูลจาก database ในการตรวจสอบ username , password ในการทำ accounting
ในส่วน session {……} ให้เอาเครื่องหมาย # หน้าคำว่า sql ออก เพื่อเรียกใช้ข้อมูลจาก database ในการตรวจสอบ username, password ในการทำ session
ในส่วนของ authorize {……} ให้เอาเครื่องหมาย # ไว้หน้าคำว่า files และเอาเครื่องหมาย # ออกจากคำว่า sql
14.5ทำการ restart FreeRadius ด้วยคำสั่ง
/etc/init.d/freeradius restart
15.ทำการ restart apache ด้วยคำสั่ง
/etc/init.d/apache2 restart
16.สร้าง Directory และ touch ดังนี้
mkdir /var/log/freeradius/radacct/
touch /var/log/freeradius/radacct/sql-relay
17.เปิด Browser ไปที่ http://ip_address/daloradius-x.y-z
user = administrator
password = radius
18.เมื่อ Login ผ่าน จะได้หน้าต่างดังนี้
สามารถบริหารจัดการ user ได้ที่เว็บนี้ ทดสอบการทำงานของ FreeRadius ด้วยคำสั่ง radtest ดังตัวอย่างต่อไปนี้radtest username password 127.0.0.1 0 mysecretถ้าเซ็ตอัพถูกต้องและป้อนค่าถูกต้องจะได้ผลลัพธ์ว่า Access-Accept ดังรูป