🟢️AAA-сервер на основе FreeRADIUS-Daloradius

🔴️Установка FreeRADIUS

----------------------------------------

🔹️Обновляемся:

▪️$ sudo apt update

▪️$ sudo apt upgrade -y

🔹️Устанавливаем необходимые пакеты:

▪️$ sudo apt install php apache2

▪️$ sudo apt install freeradius libapache2-mod-php

▪️$ sudo apt install mariadb-server freeradius-mysql

▪️$ sudo apt install freeradius-utils php-{gd,common,mail,mail-mime,mysql,pear,db,mbstring,xml,curl}

▪️$ sudo apt install wget unzip zip

🔹️Запускаем службы:

▪️$ sudo systemctl enable --now apache2 && sudo systemctl enable freeradius


🔹️Настраиваем MariaDB:

▪️$ sudo mysql_secure_installation


Возможные варианты ответов(зависит от ваших потребностей в безопасности):

Enter current password for root (enter for none): enter


Switch to unix_socket authentication [Y/n] n


Change the root password? [Y/n] n


Remove anonymous users? [Y/n] y


Disallow root login remotely? [Y/n] y


Remove test database and access to it? [Y/n] y


Reload privilege tables now? [Y/n] y


Далее sudo mysql или sudo mysql -u root -p если ввели пароль для root выше.


🔹️Создаем БД:

CREATE DATABASE radius;

Создаем учетную запись:

CREATE USER 'radius'@'localhost' IDENTIFIED by 'Your_PASSWORD';

Настройка привилегий:

GRANT ALL PRIVILEGES ON radius.* TO 'radius'@'localhost';

Применяем привилегии и выходим:

FLUSH PRIVILEGES;

quit;


🔹️Подключаем БД к FreeRADIUS:

▪️$ sudo su -

Импортируем схему:

▪️$ mysql -u root -p radius < /etc/freeradius/3.0/mods-config/sql/main/mysql/schema.sql

Создаем символическую ссылку:

▪️$ ln -s /etc/freeradius/3.0/mods-available/sql /etc/freeradius/3.0/mods-enabled/


🔹️Вносим необходимые правки в конфигурацию:

▪️$ nano /etc/freeradius/3.0/mods-enabled/sql


driver = "rlm_sql_null" должен быть driver = "rlm_sql_${dialect}"


dialect = "sqlite" должен быть dialect = "mysql"


read_clients = yes раскомментировать


client_table = “nas” раскомментировать


Закомментировать все настройки TLS (см. скрин).

Раскомментируйте и укажите server, port, login, password и radius_db (см. скрин).

Закомментировать все настройки TLS

Раскомментируйте и укажите server, port, login, password и radius_db

🔹️Назначаем владельца и группу:
▪️$ sudo chgrp -h freerad /etc/freeradius/3.0/mods-available/sql
▪️$ sudo chown -R freerad:freerad /etc/freeradius/3.0/mods-enabled/sql
▪️$ sudo systemctl restart freeradius
🔴️Установка DaloRADIUS
----------------------------------------
🔹️Скачиваем архив:
▪️$ cd /opt
▪️$ wget https://github.com/lirantal/daloradius/archive/1.3.zip
▪️$ unzip 1.3.zip
▪️$ cd daloradius-1.3
🔹️Импортируем схему:
▪️$ sudo mysql -u root -p radius < contrib/db/fr2-mysql-daloradius-and-freeradius.sql
▪️$ sudo mysql -u root -p radius < contrib/db/mysql-daloradius.sql

🔹️Перемещаем DaloRADIUS в каталог Apache:
▪️$ sudo mv daloradius-1.3 /var/www/html/
▪️$ sudo mv /var/www/html/daloradius-1.3 /var/www/html/daloradius
▪️$ sudo chown -R www-data:www-data /var/www/html/daloradius
🔹️Копируем образец конфигурационного файла:
▪️$ sudo cp /var/www/html/daloradius/library/daloradius.conf.php.sample /var/www/html/daloradius/library/daloradius.conf.php
▪️$ sudo chmod 664 /var/www/html/daloradius/library/daloradius.conf.php

🔹️Вносим необходимые правки в конфигурацию:
▪️$ sudo nano /var/www/html/daloradius/library/daloradius.conf.php
$configValues['CONFIG_DB_USER'] = 'user_name';
$configValues['CONFIG_DB_PASS'] = 'Your_PASSWORD';
$configValues['CONFIG_DB_NAME'] = 'DB_name';

🔹️Перезагружаем службу (необходимо выполнять после каждого внесения изменений):
▪️$ sudo systemctl restart freeradius.service apache2

🔹️Доступ к Web:
localhost/daloradius
==============================
❗️NOTE:
🔹️Добавление клиентов через конфигурационный файл:
▪️$ sudo nano /etc/freeradius/3.0/clients.conf

client switch_name {
ipaddr = XXX.XXX.XXX.XXX
secret = password
}

🔹️Добавление клиентов через Daloradius:

Создаем пользователя

Назначаем уровень привилегий

==============================
🔴️Настройка на стороне коммутаторов cisco:

username user privilege 15 secret cisco
▪️aaa new-model
▪️aaa authentication login default group radius local
Настройка по старому стилю:
▪️radius-server host 10.0.5.2 auth-port 1812 acct-port 1813
▪️radius-server retransmit 2 - количество попыток запроса к radius серверу (первая попытка не учитывается)
▪️radius-server key secret
Настройка по новому стилю производится через команду "radius server <name>" (зависит от версии IOS)

Для возможности разграничения прав доступа на AAA сервере:
▪️aaa authorization exec default group radius local
▪️aaa authorization config-command
Если эти команды отсутствуют можно назначить необходимый уровень привилегий на line vty (зависит от версии IOS)

This site was made on Tilda — a website builder that helps to create a website without any code
Create a website