Differences
This shows you the differences between two versions of the page.
| Both sides previous revision Previous revision Next revision | Previous revision | ||
| deployment:network:freeradius:install-debian13-sql [2026/04/03 19:41] – [Install MariaDB dan konfigurasi database untuk FreeRadius] ilyasa | deployment:network:freeradius:install-debian13-sql [2026/04/05 17:21] (current) – ilyasa | ||
|---|---|---|---|
| Line 2: | Line 2: | ||
| ===== Install FreeRadius ===== | ===== Install FreeRadius ===== | ||
| - | Install FreeRadius Packages dan depedensi yang dibutuhkan. | + | * Install FreeRadius Packages dan depedensi yang dibutuhkan. |
| < | < | ||
| sudo apt -y install freeradius freeradius-mysql freeradius-utils -y | sudo apt -y install freeradius freeradius-mysql freeradius-utils -y | ||
| </ | </ | ||
| - | Test service FreeRadius dapat berjalan | + | * Test service FreeRadius dapat berjalan |
| < | < | ||
| root@radiusdev: | root@radiusdev: | ||
| Line 29: | Line 29: | ||
| ==== Install MariaDB dan konfigurasi database untuk FreeRadius ==== | ==== Install MariaDB dan konfigurasi database untuk FreeRadius ==== | ||
| * Install MariaDB Sever | * Install MariaDB Sever | ||
| - | < | + | < |
| sudo apt -y install mariadb-server | sudo apt -y install mariadb-server | ||
| </ | </ | ||
| + | * Secure MariaDB database dengan mariadb Wizards | ||
| + | <code bash> | ||
| + | mariadb-secure-installation | ||
| + | </ | ||
| + | <hidden Jika Bingung sesuaikan dengna berikut> | ||
| + | <code bash> | ||
| + | root@radiusdev: | ||
| + | |||
| + | NOTE: RUNNING ALL PARTS OF THIS SCRIPT IS RECOMMENDED FOR ALL MariaDB | ||
| + | SERVERS IN PRODUCTION USE! PLEASE READ EACH STEP CAREFULLY! | ||
| + | |||
| + | In order to log into MariaDB to secure it, we'll need the current | ||
| + | password for the root user. If you've just installed MariaDB, and | ||
| + | haven' | ||
| + | |||
| + | Enter current password for root (enter for none): | ||
| + | OK, successfully used password, moving on... | ||
| + | |||
| + | Setting the root password or using the unix_socket ensures that nobody | ||
| + | can log into the MariaDB root user without the proper authorisation. | ||
| + | |||
| + | You already have your root account protected, so you can safely answer ' | ||
| + | |||
| + | Switch to unix_socket authentication [Y/n] [n] | ||
| + | ... skipping. | ||
| + | |||
| + | You already have your root account protected, so you can safely answer ' | ||
| + | |||
| + | Change the root password? [Y/n] [Y] | ||
| + | New password: | ||
| + | Re-enter new password: | ||
| + | Password updated successfully! | ||
| + | Reloading privilege tables.. | ||
| + | ... Success! | ||
| + | |||
| + | |||
| + | By default, a MariaDB installation has an anonymous user, allowing anyone | ||
| + | to log into MariaDB without having to have a user account created for | ||
| + | them. This is intended only for testing, and to make the installation | ||
| + | go a bit smoother. | ||
| + | production environment. | ||
| + | |||
| + | Remove anonymous users? [Y/n] [Y] | ||
| + | ... Success! | ||
| + | |||
| + | Normally, root should only be allowed to connect from ' | ||
| + | ensures that someone cannot guess at the root password from the network. | ||
| + | |||
| + | Disallow root login remotely? [Y/n] [Y] | ||
| + | ... Success! | ||
| + | |||
| + | By default, MariaDB comes with a database named ' | ||
| + | access. | ||
| + | before moving into a production environment. | ||
| + | |||
| + | Remove test database and access to it? [Y/n] [Y] | ||
| + | - Dropping test database... | ||
| + | ... Success! | ||
| + | - Removing privileges on test database... | ||
| + | ... Success! | ||
| + | |||
| + | Reloading the privilege tables will ensure that all changes made so far | ||
| + | will take effect immediately. | ||
| + | |||
| + | Reload privilege tables now? [Y/n] [Y] | ||
| + | ... Success! | ||
| + | |||
| + | Cleaning up... | ||
| + | |||
| + | All done! If you've completed all of the above steps, your MariaDB | ||
| + | installation should now be secure. | ||
| + | |||
| + | Thanks for using MariaDB! | ||
| + | </ | ||
| + | </ | ||
| + | |||
| + | * Buat Database Dan User Untuk FreeRadius | ||
| + | <code bash> | ||
| + | sudo mysql -u root | ||
| + | </ | ||
| + | <code sql> | ||
| + | CREATE DATABASE radius; | ||
| + | CREATE USER ' | ||
| + | GRANT ALL PRIVILEGES ON radius.* TO ' | ||
| + | FLUSH PRIVILEGES; | ||
| + | quit; | ||
| + | </ | ||
| + | * import SQL schema file ke Database yang kita buat sebelumnya. | ||
| + | <code bash> | ||
| + | sudo mysql -u root -p radius < / | ||
| + | </ | ||
| + | * Enable SQL module pada FreeRADIUS. | ||
| + | <code bash> | ||
| + | sudo ln -s / | ||
| + | </ | ||
| + | * Edit Module SQL Untuk Dapat terhubung dengan Database yang telah kita buat | ||
| + | <code bash> | ||
| + | sudo nano / | ||
| + | </ | ||
| + | * Ubah opsi database dari sqlite (default) ke mysql(mariadb) | ||
| + | <code bash> | ||
| + | # Rubah | ||
| + | dialect = " | ||
| + | # Ke | ||
| + | dialect = " | ||
| + | </ | ||
| + | * coment '' | ||
| + | <code bash> | ||
| + | driver = " | ||
| + | # | ||
| + | </ | ||
| + | * uncoment '' | ||
| + | <code bash> | ||
| + | driver = " | ||
| + | # | ||
| + | </ | ||
| + | * Sebab koneksi database bersifat local configurasi tls dapat di comment | ||
| + | {{ : | ||
| + | * Uncomment connection info dan ganti sesuai dbname dan passwrod yang telah dibuat | ||
| + | {{ : | ||
| + | |||
| + | ==== Running Test ==== | ||
| + | === Menambahkan RADIUS User ke Database === | ||
| + | <code bash> | ||
| + | mysql -u root -p | ||
| + | </ | ||
| + | <code sql> | ||
| + | USE radius; | ||
| + | |||
| + | -- Add user with plain-text password (Cleartext-Password) | ||
| + | INSERT INTO radcheck (username, attribute, op, value) | ||
| + | VALUES (' | ||
| + | |||
| + | -- Optional: add user to a group | ||
| + | INSERT INTO radusergroup (username, groupname, priority) | ||
| + | VALUES (' | ||
| + | </ | ||
| + | |||
| + | ==== Run FreeRadius dengan Debug Mode ==== | ||
| + | < | ||
| + | # Stop and start clean | ||
| + | sudo systemctl restart freeradius | ||
| + | |||
| + | # Or run in debug mode (recommended for first test) | ||
| + | sudo systemctl stop freeradius | ||
| + | sudo radiusd -X | ||
| + | </ | ||
| + | |||