RADIUS (Remote Authentication Dial-In User Service) adalah sebuah protokol keamanan komputer yang digunakan untuk melakukan autentikasi, otorisasi, dan pendaftaran akun pengguna secara terpusat untuk mengakses jaringan. Radius diterapkan dalam jaringan dengan model client-server.
Server Radius menyediakan mekanisme keamanan dengan menangani otentikasi dan otorisasi koneksi yang dilakukan user. Pada saat komputer client akan menghubungkan diri dengan jaringan maka server Radius akan meminta identitas user (username dan password) untuk kemudian dicocokkan dengan data yang ada dalam database server Radius untuk kemudian ditentukan apakah user diijinkan untuk menggunakan layanan dalam jaringan komputer. Jika proses otentikasi dan otorisasi berhasil maka proses pelaporan dilakukan, yakni dengan mencatat semua aktifitas koneksi user, menghitung durasi waktu dan jumlah transfer data dilakukan oleh user. Proses pelaporan yang dilakukan server Radius bisa dalam bentuk waktu (detik, menit, jam, dll) maupun dalam bentuk besar transfer data (Byte, KByte, Mbyte) (Anonim-B, 2006). Software server Radius yang digunakan dalam penelitian ini adalah Freeradius yang bersifat modular dan memiliki banyak fitur. Freeradius merupakan software server yang berbasis pada open source dan berlisensi GPL.
Radius server biasanya di implementasikan pada OS Linux atau Windows NT, Free Radius salah satu yang populer untuk OS linux..
MACAM-MACAM SOFTWARE RADIUS SERVER
FreeRADIUS SERVER dan CoovaChili
FreeRadius merupakan Radius Server yang cukup populer di ranah open source. Dikembangkan oleh Alan DeKok dan Miquel van Smoorenburg pada tahun 1999. Sebelumnya Miquel mengembangkan Cistron Radius, namun kemudian menjadi tidak aktif dikembangkan lagi. FreeRadius kemudian dapat diterima secara luas dan mendapat dukungan dari komunitas opensource. Seiring berkembanngnya waktu, FreeRadius selain mensupport teks file kemudian mensupport LDAP, SQL(MySQL, Oracle, PostgreSQL, MSQL, dll) dan EAP. FreeRadius sendiri diklaim cukup cepat, kaya fitur, dapat diandalkan dan skalabel. Free Radius sendiri berjalan di banyak platform OS seperti Windows, keluarga Linux/Unix, Mac OS, Sun Solaris.
Fitur-Fitur dari Free Radius secara garis besar :
- Memiliki performance yang tinggi, mendukung HA, Fail-Over.
- Kaya fitur, dukung banyak Operating System, EAP, Database, fungsionalitas AAA, Virtual Server, Proxy, dll.
- Modular, dukungan addon/plugin tambahan, dapat diimplementasikan pada embedded system.
- Skalabilitas, untuk beban yang tinggi freeradius mensupport berdasarkan maksimum request dan maksimum server(cpu).
Install Freeradius 2.x dari source
Code:
apt-get install freeradius freeradius-mysql
(proses installasi akan menanyakan paket pendukung, saya yes aja:D)
Stop Freeradiusnya
Code:
/etc/init.d/freeradius stop
Jalankan dalam mode debug
Code:
freeradius -X
(jika tidak ada error tekan ctrl+c untuk stop debug dan di lanjut)
Masukkan database ke mysql
Code:
mysql -u root -p
masukkan passwordnya: password root mysql anda
CREATE DATABASE radius;
GRANT ALL PRIVILEGES ON radius.* TO 'radius'@'localhost' IDENTIFIED BY 'radiussecret';
FLUSH PRIVILEGES;
quit
Masukkan skema contoh dari freeradius
Code:
mysql -u root -p radius < /etc/freeradius/sql/mysql/schema.sql
masukkan password root mysql anda
mysql -u root -p radius < /etc/freeradius/sql/mysql/nas.sql
masukkan password root mysql anda
Sinkronkan freeradius dengan Database nya
Code:
nano /etc/freeradius/sql.conf
cari baris dibawah ini jika tidak sama di ganti
server = “localhost”
login = “radius”
password = “radiussecret”
Kemudian masih dalam file ini, hapus tanda pound pada baris:
# readclient = yes
menjadi
readclient = yes
Setup freeradius server client password nya
Code:
nano /etc/freeradius/clients.conf
cari baris
secret = testing123
ganti menjadi
secret = radiussecret
Ganti autorisasi freeradius ke sql
Code:
nano /etc/freeradius/sites-available/default
pada section authorize, cari baris
files tambahkan tanda # menjadi
# files
cari baris
# sql, hapus tanda commentnya menjadi
sql
cari lagi baris sql pada section accounting dan session, jika ada tanda comment (#) hilangkan
save dan exit
Tes freeradiusnya dgn memasukkan username dan password
Code:
mysql -u root -p
masukkan password root dari mysql anda
use radius;
INSERT INTO radcheck (UserName, Attribute, Value) VALUES (‘guest’, ‘password’, ‘guest’)
select * from radcheck where UserName=’guest’;
exit
Restart freeradiusnya
Code:
/etc/init.d/freeradius restart
ketik pada console
radtest guest guest localhost 0 radiussecret
jika berhasil akan keluar result seperti ini;
rad_recv: Access-Accept packet from host localhost port 1812, id=234, length=20
Setup Freeradius selesai
2. Install Coovachilli
Download coova-chilli
Code:
wget http://ap.coova.org/chilli/coova-chilli_1.0.13-1_i386.deb
Install coova-chilli
Code:
dpkg -i coova-chilli_1.0.13-1_i386.deb Copy default konfigurasi chilli agar bisa di custom Code:
cp /etc/chilli/default /etc/chilli/config Buat folder hotspot
Code:
mkdir /var/www/hotspot
cd /var/www/hotspot
cp /etc/chilli/www/* /var/www/hotspot
mkdir /var/www/hotspot/images
cp /var/www/hotspot/coova.jpg /var/www/hotspot/images/ Buat Folder uam
Code:
mkdir /var/www/hotspot/uam
cd /var/www/hotspot/uam
wget http://ap.coova.org/uam/
wget http://ap.coova.org/js/chilli.js Ganti host address local Code:
sed -i 's/ap.coova.org/js/chilli.js/192.168.0.1/uam/chilli.js/g'/var/www/hotspot/uam/index.htm Edit library dari chilli untuk menggunakan ip tadi
Code:
sed -i 's/192.168.182.1/192.168.0.1/g' /etc/chilli/www/ChilliLibrary.js
sed -i 's/192.168.182.1/192.168.0.1/g' /var/www/hotspot/ChilliLibrary.js Untuk mengaktifkan coovachilli edit: START_CHILLI menjadi 1
Code:
nano /etc/default/chilli
START_CHILLI=1
CONFFILE="/etc/chilli.conf" Edit file configurasi chilli
Code:
nano /etc/chilli/config Edit parameter (kurang lebih)seperti dibawah ini):
Code:
HS_LANIF=eth1 # Subscriber Interface for client devices
HS_NETWORK=192.168.0.0 # HotSpot Network (must include HS_UAMLISTEN)
HS_NETMASK=255.255.255.0 # HotSpot Network Netmask
HS_UAMLISTEN=192.168.0.1 # HotSpot IP Address (on subscriber network)
HS_UAMPORT=3990 # HotSpot Port (on subscriber network)
HS_NASID=nas01
HS_UAMSECRET=uamsecret
HS_RADIUS=127.0.0.1
HS_RADIUS2=127.0.0.1
HS_RADSECRET=radiussecret
HS_UAMALLOW=www.google.com,192.168.0.0/24
HS_UAMSERVER=192.168.0.1
HS_UAMFORMAT=http://$HS_UAMSERVER/uam/index.php
HS_UAMHOMEPAGE=http://$HS_UAMLISTEN:$HS_UAMPORT/www/coova.html
HS_UAMSERVICE=https://192.168.0.1/cgi-bin/hotspotlogin.cgi
Edit firewall chilli
Code:
nano /etc/chilli/up.sh
tambahkan di baris paling bawah;
# may not have been populated the first time; run again
[ -e “/var/run/chilli.iptables” ] && sh /var/run/chilli.iptables 2>/dev/null
# force-add the final rule necessary to fix routing tables
iptables -I POSTROUTING -t nat -o $HS_WANIF -j MASQUERADE
DaloRADIUS
daloRADIUS adalah sebuah software yang dibuat untuk memanajemen RADIUS server yang dibangun menggunakan freeRADIUS. Mengapa ada daloRADIUS? Agar lebih mempermudah kita (orang awam) untuk melakukan CRUD(Create, Read, Update dan Delete) pada database freeRADIUS. Artinya, kita sebagai pengelola RADIUS server dapat dengan mudah mengelola akun mana yang dapat terhubung dengan hotspot kita, akun mana yang tidak dapat terhubung, menghapus akun, menambah akun, dan sebagainya. Dikatakan mempermudah (atau lebih mudah) karena kita tidak perlu menggunakan perintah (command) Linux atau sejenisnya yang diketikkan via console (terminal), tetapi cukup melalui web browser denganinterface yang mudah dipahami.
Tetapi, daloRADIUS saja tidak cukup ketika kita ingin membuat RADIUS server. Ingat bahwa daloRADIUS hanya bertugas untuk mempermudah manajemen freeRADIUS, tetapi tidak menyediakan interface atau yang biasa dikenal dengan captive portaluntuk client. Sepemahaman saya, tanpa captive portal, pengguna hotspot tidak bisa berinteraksi dengan server karena tidak tahu apakah pengguna berhak terhubung dengan internet atau tidak. Lebih dalam lagi, pengguna tidak tahu apa yang harus dilakukan ketika tidak ada captive portal. captive portal yang membuat pengguna mengerti apa yang harus dilakukan. ChilliSpot adalah salah satu captive portal yang banyak digunakan pada RADIUS server. Namun, sekarang ini sudah tidak dikembangkan lagi. ChilliSpot digunakan sebagai dasar pembuatan CoovaChilli
Cara Insatall daloRadius :
root@radius-svr:/home/gtoms#svn co https://daloradius.svn.sourceforge.net/svnroot/daloradius/trunk daloradius—————skipp———————————————————A daloradius/acct-hotspot-accounting.php A daloradius/var A daloradius/var/backup A daloradius/gis-editmap.php A daloradius/mng-rad-hunt-del.php A daloradius/mng-rad-usergroup-list-user.php A daloradius/rep-stat-server.php A daloradius/menu-mng-rad-profiles.php A daloradius/mng-new.php A daloradius/mng-rad-profiles-del.php A daloradius/menu-mng-rad-attributes.php A daloradius/mng-rad-attributes-del.php A daloradius/menu-accounting-maintenance.php A daloradius/rep-hb.php A daloradius/menu-bill-invoice.php A daloradius/config-maint-disconnect-user.php A daloradius/bill-invoice-del.php A daloradius/menu-reports-batch.php A daloradius/mng-rad-profiles-list.php A daloradius/mng-hs-new.php A daloradius/mng-rad-groupreply-new.php A daloradius/menu-config-operators.php A daloradius/menu-bill-pos.php A daloradius/bill-plans-new.php A daloradius/acct-plans.php A daloradius/acct-custom-query.php A daloradius/config-reports-dashboard.php A daloradius/mng-import-users.php A daloradius/mng-rad-hunt-new.php Checked out revision 2111. root@radius-svr:/home/gtoms#
root@radius-svr:/home/gtoms# cp daloradius/ /var/www -R root@radius-svr:/home/gtoms# chown www-data:www-data /var/www/daloradius -R root@radius-svr:/home/gtoms# chmod 644 /var/www/daloradius/library/daloradius.conf.php root@radius-svr:/home/gtoms# mysql -u root -p Enter password: Welcome to the MySQL monitor. Commands end with ; or g. Your MySQL connection id is 40 Server version: 5.1.49-3 (Debian)
Copyright© 2000, 2010, Oracle and/or its affiliates. All rights reserved. This software comes with ABSOLUTELY NO WARRANTY. This is free software, and you are welcome to modify and redistribute it under the GPL v2 license
Type ‘help;’ or ‘h’ for help. Type ‘c’ to clear the current input statement.
mysql> CREATE DATABASE radius; Query OK, 1 row affected (0.00 sec)
mysql> quit Bye root@radius-svr:/home/gtoms#
root@radius-svr:/home/gtoms# cd /var/www/daloradius/contrib/db/
root@radius-svr:/var/www/daloradius/contrib/db# mysql u root -p radius < fr2mysql-daloradius-and-freeradius.sql
Enter password:
root@radius-svr:/var/www/daloradius/contrib/db# nano /var/www/daloradius/library/daloradius.conf.php
$configValues[‘CONFIG_DB_PASS’] = ‘password’;
root@radius-svr:/etc/apache2/sites-available# netstat -nltup Active Internet connections (only servers) Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name tcp 0 0 127.0.0.1:3306 0.0.0.0:* LISTEN 7020/mysqld tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 1060/sshd tcp6 0 0 :::80 :::* LISTEN 7300/apache2 tcp6 0 0 :::22 :::* LISTEN 1060/sshd udp 0 0 127.0.0.1:18120 0.0.0.0:* 7487/freeradius udp 0 0 0.0.0.0:1812 0.0.0.0:* 7487/freeradius udp 0 0 0.0.0.0:1813 0.0.0.0:* 7487/freeradius udp 0 0 0.0.0.0:1814 0.0.0.0:* 7487/freeradius root@radius-svr:/etc/apache2/sites-available#
root@radius-svr:/etc/apache2/sites-available# /etc/init.d/apache2 restart Restarting web server: apache2 … waiting .
http://alamatip/daloradius/login.php username: administrator password: radius
RADIATOR SERVER RADIUS
Proyek radiator adalah Radius server yang dapat dikonfigurasi dan fleksibel yang mendukung otentikasi lebih dari 60 metode otentikasi seperti file flat file DBM, File password unix, databse SQL, server Radius jarak jauh (proxy), program eksternal, manager NT pengguna, aktif direktori, LDAP, Pam, iPASS, GoRemote, NIS+, Tacacs+ ,Web URL, token securID, VasciDigipass token, token saveWord, berbagai paket penagihan ISP, seperti Emerald, Platypus, Rodopi, Hawk-i, Interbiller98 Freeside, dll. Metode otentikasi dapat diubah atau dapat ditambah sesuai kebutuhan kita.
Mendukung RadSec – aman, handal proxy RADIUS dan bertindak sebagai DIAMETER ke Radius Server.
Radiator sekarang support 802.1X secure wireless dan metode LAN autentikasi dari pada Radius server yang lain yang memberikan berbagai pilihan klien jaringan 802.1X. Server pribadi dan sertifikat klien untuk pengujian otentikasi 802.1X disertakan mendukung Chilispot, captive portal, untuk hotspot wireless (http://www.chillispot.org). Radiator termasuk tutorial dan file konfigurasi untuk membuat hotspot, lengkap nirkabel yang diselenggarakan secara lokal termasuk dukungan untuk waktuprabayar dan persyaratan lainnya.
Radiator juga mencakup banyak fitur yang tidak ditemukan diserver Radius lainnya seperti double-login pencegahan, menulis ulang nama pengguna, penuh khusus vendor atribut, waktu-of-hariblocking dan GUI untuk menjalankan tes user. Daftar lengkap fitur teknis termasuk adalah CGI script untuk konfigurasi pelaporan dan utilitas managemen database dan banyak lagi. Bekerja dengan NAS, VPDN, ADSL, dan wireless Access Point. Penuh kode sumber yang disediakan. Pengguna perpanjangan API.
Cara menginstall Radiator Radius server :
Disini menggunakan server radius autentikasi unix user, jenis setup ini juga akan bekerja dengan server freeradius, karena server ini juga mendapat dukungan database.
Untuk menggunakan radiator Anda perlu membeli lisensi dari Open System Consultans (http://www.open.com.au/index.html)
Instalasi server radius bukan untuk sulit cukup ikuti petunjuk instalasiyang datang dengan paket perangkat lunak radius.
Pastikan kita menginstall perl modul DBI dan MDcrypt dan perl modul.
Ketika server radius terinstal, hal berikutnya yang harus dilakukan adalah membuat database. Database contoh disediakan dalam paket perangkat lunak radius di direktori Goodies. Database ini akan membantu Anda memulai. Ketika Anda setup berjalan dan semuanya bekerja, Anda dapat menjalankan dan desain database Anda sendiri. Namun untuk kejelasan saya menggunakan database misalnya. Pertama kita men-setup database. Saya berasumsi server MySQLsudah berjalan. Jadi login ke server database dan membuat database dan user:
mysql> CREATE DATABASE radiator;
Membuat user:
grant all on radiator.* TO ‘radius’@’%’ identified by “dbpassword”;
ganti dbpassword menjadi password yang kita inginkan.
Berikutnya saatnya untuk mengkonfigurasi server radius. Pertama membuat salinan cadangan dari file konfigurasi aslinya ( diasumsikan file config hidup di direktori /etc/radiator)
cp /etc/radiator/.radius.cfg /etc/radiator/radius.cfg.org
Selanjutnya tambahkan entri seperti:
AuthBy SQL>
Identifier CheckClearPassword
DBSource dbi:mysql:radiator:app-db
DBUsername radius
DBAuth yourdbpassword
AuthSelect select PASSWORD from SUBSCRIBERS where
USERNAME=’%n’
</AuthBy>
Syntax dari DBSurce line adalah : dbi:<driver>:<database name>:<db host>
Tentukan username database dalam baris DBUsername dan password db di garis DBAuth.
AuthSelect adalah query yang dijalankan terhadap database. Anda dapat menambahkan field yang Anda inginkan.
Tentu saja kan AuthBySQL digunakan dalam Handler atau Realm.
Dalam file radius contoh Anda juga dapat menemukan cara menggunakan akuntansi.
Untuk menguji konfigurasi ini, menyisipkan beberapa catatan dalam database dan mengkonfigurasi misalnya Server Linux menggunakan jari-jari.
Dalam contoh ini jelas password yang digunakan. Tentu saja adalah mungkin untuk menggunakan password necrypted juga.
Memasukkan user ke database cukup mudah:
masuk kedalam SUBSCRIBERS (USERNAME=’admin’,PASSWORD=’mypassword’);
Selanjutnya adalah mengkonfigurasi pam. Bila menggunakan Debian setup adalah seperti:
Under debian install libpam-radius-auth
edit pam_radius_auth.conf
place this file in /etc/
Tambahkan server Anda dan bagikan secret tentang radius server Anda:
# server[:port] shared_secret timeout (s)
radius:1812 yoursharedsecret 2
127.0.0.1 yoursahredsecret 1
# having localhost in your radius configuration is a Good Thing.
Pertimbangkan memberikan file izin dari 600
Seharusnya terlihat seperti:
-rw——- 1 root root 1294 2008-01-15 16:49 /etc/pam_radius_auth.conf
Next: edit in /etc/pam.d/ directory the file(s):
ssh
Buat terlihat seperti:
# PAM configuration for the Secure Shell service
# Disallow non-root logins when /etc/nologin exists.
auth required pam_nologin.so
# Read environment variables from /etc/environment and
# /etc/security/pam_env.conf.
auth required pam_env.so # [1]
auth sufficient pam_radius_auth.so
account sufficient /lib/security/pam_radius_auth.so
# Standard Un*x authentication.
@include common-auth
So the line :
auth sufficient pam_radius_auth.so
Is before Standard Unix auth.
Sekarang ketika Anda menggunakan ssh untuk login ke host ini,Anda harus melihat permintaan radius pada server radius Anda.
Jika Anda tidak melihat ini, memeriksa konektivitas IP dan DNSresolve.
ARADIAL RADIUS SERVER
Aradial adalah RADIUS server kinerja tinggi denganTier 1 tingkat keandalan dan skalabilitas. Aradial mendukung RFCterbaru, atribut vendor tertentu, template NAS dan memiliki banyakpra-konfigurasi pengaturan yang mendukung Server Akses paling di pasar saat ini. Aradial didasarkan pada arsitektur plugin, yang memungkinkan menyesuaikan logika otentikasi dan akuntansi, di luar produk inti.
Radius Aradial Berjalan pada Windows, Linux dan Solaris, dan mendukung semua database. Radius Aradial terintegrasi dengansolusi Penagihan atas untuk ISP, WISP, Wifi – Hotspot dan VOIP.
Manfaat Radius Aradial perangkat lunak adalah:
-mudah instalasi
-mudah implementasi
-Mudah dioperasikan
-Mudah untuk menyesuaikan
-Penuh kepatuhan terhadap standar
-tinggi kinerja
-Tinggi Ketersediaan dan keandalan
-skalabilitas
Memanfaatkan standar terbuka seperti RADIUS, SNMP, EAP, dan teknologi seperti VPN dan LDAP keluarga produk Aradialmenawarkan fitur yang tak tertandingi dan kinerja dengan hargaterjangkau.