- Asumsi bahwa OS Ubuntu 8.10 sudah terinstall dan terkoneksi dengan jaringan internet. Selanjutnya adalah installasi semua package yang dibutuhkan.
- Install semua package melalui repository dan isi konfigurasi yang diminta
# apt-get install apache2 php5-common php5-gd php-pear php-db libapache2-mod-php5 php5-mysql php5-mcrypt phpmyadmin mysql-server-5.0 mysql-client-5.0 freeradius freeradius-mysql
- Untuk konfigurasi apache2, php5 dan mysql-server-5 dan phpmyadmin dapat dicari diinternet.
- Selanjutnya adalah konfigurasi untuk freeradius
- Buat database radius pada mysql-server dan usernya
# mysql -u root -p
Enter password:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 693
Server version: 5.0.67-0ubuntu6 (Ubuntu)Type ‘help;’ or ‘\h’ for help. Type ‘\c’ to clear the buffer.
mysql> create database radius;
Query OK, 1 row affected (0.00 sec)mysql> grant all on radius.* to radius@localhost identified by “passwordradius”;
Query OK, 0 rows affected (0.00 sec)mysql> exit
Bye - Sehubungan menggunakan freeradius 2.x, maka konfigurasi agak berbeda dengan freeradius 1.x. Lalu import table yang berada pada file /etc/freeradius/sql/mysql/schema.sql ke database radius
# mysql -u root -p radius < /etc/freeradius/sql/mysql/schema.sql
Enter password: - Buat table agar konfigurasi nas dapat ditambahkan pada database. Pengertian NAS dapat dilihat pada website http://wiki.freeradius.org/NAS
# mysql -u root -p
Enter password:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 693
Server version: 5.0.67-0ubuntu6 (Ubuntu)Type ‘help;’ or ‘\h’ for help. Type ‘\c’ to clear the buffer.
mysql> use radius;
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -ADatabase changed
mysql> CREATE TABLE nas (id int(10) NOT NULL auto_increment, nasname varchar(128) NOT NULL, shortname varchar(32), type varchar(30) DEFAULT ‘other’, ports int(5), secret varchar(60) DEFAULT ‘secret’ NOT NULL, community varchar(50), description varchar(200) DEFAULT ‘RADIUS Client’, PRIMARY KEY (id), KEY nasname (nasname));
Query OK, 0 rows affected (0.01 sec)mysql> exit
Bye - Konfigurasikan /etc/freeradius/sql.conf agar dapat disesuaikan dengan perubahan yang sudah dilakukan
# pico /etc/freeradius/sql.confPada connection info
# Connection info:
server = “localhost”
login = “radius”
password = “passwordradius”Uncomment pada readclients agar NAS dapat dibaca melalui database.
readclients = yes - Selanjutnya mengubah file /etc/freeradius/sites-enabled/default
# pico /etc/freeradius/sites-enabled/defaultUncomment sql pada bagian authorize{}
# See “Authorization Queries” in sql.conf
sqlUncomment sql pada bagian accounting{}
# See “Accounting queries” in sql.conf
sqlUncomment sql pada bagian session{}
# See “Simultaneous Use Checking Queries” in sql.conf
sqlUncomment sql pada bagian post-auth{}
# See “Authentication Logging Queries” in sql.conf
sql - Tambahkan user untuk mengetest bahwa server radius sudah berjalan dengan baik
# mysql -u root -p
Enter password:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 693
Server version: 5.0.67-0ubuntu6 (Ubuntu)Type ‘help;’ or ‘\h’ for help. Type ‘\c’ to clear the buffer.
mysql> use radius;
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -ADatabase changed
mysql> INSERT INTO radcheck (UserName, Attribute, Value) VALUES (‘sqltest’, ‘Password’, ‘testpwd’);
Query OK, 1 row affected (0.00 sec)mysql> exit
Bye - Pastikan bahwa konfigurasi radiusd.conf dalam keadaan benar, karena pada saat dicoba, terjadi masalah pada pid radiusnya
# pico /etc/freeradius/radiusd.confUbah run_dir ke path berikut
run_dir = ${localstatedir}/run/freeradiusUbah pidfile ke nama file berikut
pidfile = ${run_dir}/freeradius.pid - Jalankan server radius. Apabila ingin menggunakan mode debug, maka dapat menggunakan perintah freeradius -X
# /etc/init.d/freeradius startApabila muncul tulisan “/etc/freeradius/sites-enabled/default[152]: Failed to find module “sql”.”, maka bisa meng uncomment #$INCLUDE sql.conf pada file /etc/freeradius/radiusd.conf
- Jalankan test pada server radius localhost
# radtest sqltest testpwd localhost 1812 testing123
Sending Access-Request of id 9 to 127.0.0.1 port 1812
User-Name = “sqltest”
User-Password = “testpwd”
NAS-IP-Address = 192.168.1.10
NAS-Port = 1812
rad_recv: Access-Accept packet from host 127.0.0.1 port 1812, id=9, length=20Apabila tampilan seperti diatas, berarti client dapat terkoneksi dengan server radius. Apabila terdapat error, maka solusinya cari diinternet
-Tambahan-
Jika errornya adalah “radclient: socket: cannot initialize udpfromto: Function not implemented”, maka bisa menggunakan ip address ketimbang menggunakan localhost. Contoh : radtest sqltest testpwd 127.0.0.1 1812 testing123
Jadi sebenarnya hanya masalah di /etc/hosts untuk IPv6 saja. Intinya service sudah jalan. - Hapus user test yang sudah dibuat sebelumnya
# mysql -u root -p
Enter password:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 699
Server version: 5.0.67-0ubuntu6 (Ubuntu)Type ‘help;’ or ‘\h’ for help. Type ‘\c’ to clear the buffer.
mysql> use radius;
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -ADatabase changed
mysql> delete from radcheck where UserName=’sqltest’;
Query OK, 1 row affected (0.00 sec)mysql> exit
Bye
Selesai deh koneksi dari freeradius ke mysql … Ayo erwan ayooo …
Ref :
http://www.8021xhelp.com/node/6
http://solo.foss-id.web.id/2008/09/instalasi-freeradius-pada-ubuntu-server-804/
http://forum.rtrw.net/viewtopic.php?f=4&t=5784
http://www.howtoforge.com/forums/showthread.php?t=33503
http://hanadi.wordpress.com/2009/03/25/ubuntu-freeradius-mysql/#comment-221
EmoticonEmoticon