Radius

Dari Catatan Pak Samsul
Revisi sejak 23 Februari 2021 00.22 oleh Samsul (bicara | kontrib)
Loncat ke navigasi Loncat ke pencarian

Installasi Freeradius Server pada Ubuntu 18.04 LTs

Installasi LAMP

Lamp adalah istilah yang merupakan singkatan dari Linux, Apache, MySQL dan Perl/PHP/Phyton. Merupakan sebuah paket perangkat lunak bebas yang digunakan untuk menjalankan sebuah aplikasi secara lengkap. Komponen-komponen yang terkandung didalamnya diantaranya sebagai berikut :

  • Linux – sistem operasi
  • Apache HTTP Server – web server
  • MariaDB atau MySQL – sistem basis data
  • PHP atau Perl atau Python – Support bahasa pemrograman yang dipakai


Proses didalam tahap ini selengkapnya sebagai berikut :

Alur Penanganan saat terjadi masalah pada Server Radius

Sebelum melakukan installasi paket lamp terlebih dahulu login menggunakan nama pengguna yang sudah dibuat saat installasi sistem operasi Ubuntu 18.04 Lts dengan kentuan Username = samsul (user biasa) dan Password = p4ssw0rd atau menggunakan super administrator dengan ketentuan sebagai berikut Username = root (Super Administrator) Password = 12345678

Lakukan update repository dan upgrade paket yang sudah ada pada sistem operasi selumnya dengan perintah berikut :

samsul@rad-server:~$sudo apt update -y samsul@rad-server:~$sudo apt upgrade -y

Tahap berikutnya installasi paket yang diperlukan dengan perintah berikut  :

samsul@rad-server:~$apt-get install apache2 mariadb-server php libapache2-mod-php php-mail php-mail-mime php-mysql php-gd php-common php-pear php-db php-mbstring php-xml php-curl unzip wget -y

Pada proses installasi paket ini meliputi installasi paket Apache2 sebagai webserver, Mariadb sebagai database server,PHP7.2 sebagai bahasa pemrogaman untuk menerjemahkan script php pada webserver sehingga dapat di tampilan pada klien,Library PHP,Paket wget untuk meng download paket daloradius lewat terminal linux dan Paket unzip untuk meng-extrator paket daloradius dari hasil download. Tahap berikut memastikan paket-paket yang sudah di install bisa berjalan dengan baik atau belum. Melihat status apache2 dengan perintah  :

samsul@rad-server:~$sudo systemctl status apache2

Memastikan database server mariadb berjalan dengan baik dengan perintah

samsul@rad-server:~$sudo systemctl status mariadb

Memastikan PHP sudah terinstall dengan benar selanjutnya cek dengan perintah berikut untuk melihaat versi php yang sudah terinstall

samsul@rad-server:~$php -v

Setelah semua paket LAMP terinstall dan berjalan dengan baik, langkah selanjutnya adalah installasi freeradius .

Installasi Freeradius

Freeradius adalah server radius protokol security yang berbasis pada open source yang bekerja menggunakan sistem client-server dan mendukung MySQL, Freeradius digunakan untuk melakukan autentikasi user melalui komunikasi antara client dan server untuk mengakses jaringan. Sebelum melanjutkan installasi freeradius hal perlu dipersiapkan dahulu adalah membuat database untuk freeserver radius dengan langkah-langkah sebagai berikut :

Masuk pada database server dalam hal ini mariadb dengan perintah sebagai berikut :

samsul@rad-server:~$sudo mysql -u root -p

Setelah itu buat database baru dengan perintah :

CREATE DATABASES radiusdb;

Mulai melakukan installasi paket freeradius dengan perintah berikut :

root@rad-server:~#apt-get install freeradius freeradius-mysql freeradius-utils

Freeradius sudah berhasil di lakukan installasi untuk memastikan freeradius yang sudah berhasil di install ketikkan perintah berikut untuk mengecek versi radius yang sudah di insallasi :

root@rad-server:~# freeradius -v

Freeradius sudah berhasil dilakukan installasi dengan baik dengan versi freeradius menggunakan versi 3.0.16, kemudikan silahkan ketikkan perintah root@systemctl status freeradius untuk memastikan freeradius sudah berjalan dengan baik. Setelah diinstal, import skema database MySQL freeradius, sebagai user samsul kemudian import skema database freeradius dimasukkan ke dalam database radiusdb dengan perintah sebagai berikut:

root@rad-server:~# mysql -u samsul -p radiusdb < /etc/freeradius/3.0/mods-config/sql/main/mysql/schema.sql

Selanjutnya membuat tautan simbolik link untuk modul sql dengan melakukan perintah berikut:

samsul@rad-server:~$sudo ln -s /etc/freeradius/3.0/mods-available/sql /etc/freeradius/3.0/mods-enabled/

Kemudian masuk database mariadb sebagai user samsul kemudian cek database radiusdb untuk memastikan skema database freeradius sudah masuk kedalam radiusdb dengan perintah berikut : Masuk database mariadb dengan user samsul :

root@rad-server:~# mysql -u samsul  -p p4ssw0rd

Masuk pada database radiusdb:

MariaDB [(none)]> use radiusdb;

Menampilkan isi database radiusdb:

MariaDB [radiusdb]> show tables;

Keluar dari dari database:

MariaDB [radiusdb]> \q

Konfigurasi Freeradius

Beberapa perubahan yang perlu dilakukan pada konfigurasi freeradius diantaranya yaitu perubahan pada file berikut :

1.    /etc/freeradius/3.0/radiusd.conf

2.   /etc/freeradius/3.0/mods-enabled/sql

3.   /etc/freeradius/3.0/sites-enabled/default

4.   /etc/freeradius/3.0/sites-available/default

5.    /etc/freeradius/3.0/clients.conf

Konfigurasi file /etc/freeradius/3.0/radiusd.conf

Lakukan hal yang sama lakukan perubahan dengan menggunakan nano editor dengan perintah sudo nano /etc/freeradius/3.0/radiusd.conf kemudian cari baris “$INCLUDE sql.conf ” dan hilangkan tanda “#” untuk mengaktifkan file pada baris perintah tersebut.

Konfigurasi file SQL.CONF

Pada tahap ini perlu dilakukan pada pengaturan sql.conf yang berada pada directory “/etc/freeradius/3.0/mods-enabled/sql”, pengaturan ini berguna untuk menentukan detail koneksi agar freeradius dapat terhubung dengan database yang dibuat sebelumnya dengan perintah seperti berikut ini :

samsul@rad-server:/$ sudo nano /etc/freeradius/3.0/mods-enabled/sql

Buat perubahan berikut sesuai database sehingga freeradius agar dapat terhubung dengan database radiusdb:

sql {

driver = "rlm_sql_mysql"

dialect = "mysql"

# Connection info:

server = "localhost"

port = 3306

login = "samsul"

password = "p4ssw0rd"

# Database table configuration for everything except Oracle

radius_db = "radiusdb"

}

read_clients = yes

client_table = "nas"


Simpan dan tutup file jika sudah selesai. Kemudian, ubah kepemilikan “/etc/freeradius/3.0/mods-enabled/sqldengan perintah berikut:

 samsul@rad-server:/$sudo chgrp -h freerad /etc/freeradius/3.0/mods-available/sql samsul@rad-server:/$sudo  chown -R freerad:freerad /etc/freeradius/3.0/mods-enabled/sql

Konfigurasi file “/etc/freeradius/3.0/sites-enabled/default”

Untuk melakukan konfigurasi pada file ini edit dengan menggunakan nano editor dengan perintah “samsul@rad-server:/$sudo nano /etc/freeradius/3.0/sites-enabled/default” kemudian hilangkan tanda # pada file sql, sehingga dengan perubahan ini proses accounting pada freeradius dapat disimpan dalam database mysql.

Pada bagian Accounting

# See “Authorization Queries” in sql.conf

sql

Pada bagian session

# See “Authorization Queries” in sql.conf

sql

Pada bagian Post-Auth-Type

# See “Authorization Queries” in sql.conf

sql

Konfigurasi file “/etc/freeradius/3.0/sites-available/default”

Konfigurasi pada file ini dengan nano editor dan dilakukan beberapa perubahan pada SeeAuthorization Queries” in “sql.conf hilangkan tanda # di depan “sql”agar proses otorisai dapat disimpan dalam database, perubahan perubahan lainnya yaitu pengaturan untuk autentikasi client yang sudah terdaftar pada database.

Konfigurasi file “/etc/freeradius/clients.conf”

     Pada konfigurasi ini perlu dilakukan agar server radius dapat berkomunikasi dengan radius client pada perangkat mikrotik dengan konfigurasi seperti berikut :

client mikrotik {

           ipaddr  = 192.168.12.1/29

           secret = 0725d5b

           shortname = Mikrotik

Pada pemberian IP Address di konfigurasi di atas berfungsi untuk mengenalkan server freeradius dengan perangkat mikrotik yang bertindak sebagai radius client agar keduanya bisa saling berkomunikasi, untuk secret juga disamakan antara keduanya. Terakhir, restart freeradius untuk menerapkan semua perubahan konfigurasi:

samsul@rad-server:/$sudo systemctl restart freeradius

Lakukan pengecekan status freeradius untuk memastikan freeradius sudah berjalan dengan baik atau belum dengan perintah samsul@rad-server:/$sudo systemctl status freeradius. Untuk melakukan pengetesan terlebih dahulu buat user pada database radiusdb dengan nama user owner dan password p4ssw0rd , dengan perintah berikut :

root@rad-server:~# mysql -usamsul -pp4ssw0rd

MariaDB [(none)]> use radiusdb;

MariaDB [radiusdb]> INSERT INTO radcheck ( id , UserName , Attribute , op , Value ) VALUES ( NULL , 'owner', 'Cleartext-Password', ':=', 'p4ssw0rd');

MariaDB [radiusdb]> exit


User owner sudah berhasil di buat selanjutnya lakukan pengetesan dengan cara sebagai berikut :

Masuk ke terminal linux sebagi root dan ketikkan perintah :

Testing freeradius pada server local berhasil.

root@rad-server:~#radtest owner p4ssw0rd localhost 1812 testing123

Jika testing berhasil akan mendapatkan pesan balasan Access-Accept