Инструменты пользователя

Инструменты сайта


how-to:daloradius

daloRADIUS

Работает на PHP версии 5.6, 7.0

Установка

Должен быть установлен nginx|apache, mariadb и freeradius заполнена база из schema.sql (nas.sql)

Генерируем пароль, cоздаём базу (radius) и к ней добавляем пользователя (radius) и этот пароль (если база ещё не создана при установке freeradius):

export RADIUS_DB_PW=`dd if=/dev/urandom bs=1 count=32 2>/dev/null | base64 - | cut -c2-18`
mysql -u root -e "CREATE DATABASE radius;\
GRANT ALL PRIVILEGES ON radius.* TO 'daloradius'@'localhost' IDENTIFIED BY '${RADIUS_DB_PW}';\
FLUSH PRIVILEGES;" -p

Устанавливаем daloradius:

wget https://github.com/lirantal/daloradius/archive/master.tar.gz -P /tmp
sudo tar -xzf /tmp/master.tar.gz -C /var/www
sudo mv /var/www/daloradius-master /var/www/daloradius
chown www-data:www-data /var/www/daloradius

Меняем пользователя и пароль для подключения к базе:

sudo sed "/CONFIG_DB_PASS'/s/''/'${RADIUS_DB_PW}'/" -i /var/www/daloradius/library/daloradius.conf.php \
sudo sed "/CONFIG_DB_USER/s/'root'/'daloradius'/" -i /var/www/daloradius/library/daloradius.conf.php

Заполняем БД:

mysql -u daloradius -p radius < /var/www/daloradius/contrib/db/mysql-daloradius.sql

Устанавливаем PHP:

sudo apt install php-db php-mysql php-curl php-gd php-mcrypt php-mail php-mail-mime

Настраиваем nginx или apache

Логин/пароль по умолчанию: administrator/radius

Nginx

Настраиваем сайт /etc/nginx/sites-available/daloradius:

server {
    listen 80;
    server_name daloradius.domain.com;

    root /var/www/daloradius;
    index index.php;

    access_log  /var/log/nginx/daloradius_access.log;
    error_log  /var/log/nginx/daloradius_error.log;

    location ~ \.php$ {
    fastcgi_pass unix:/run/php/php7.0-fpm.sock;
    fastcgi_index  index.php;
    fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
    include /etc/nginx/fastcgi.conf;
    }
}

и добавляем:

sudo ln -s /etc/nginx/sites-available/daloradius /etc/nginx/sites-enabled/daloradius

перечитываем конфиги:

sudo service nginx reload

Apache

Настраиваем сайт /etc/apache2/sites-available/daloradius.conf:

<VirtualHost *:80>

 ServerName daloradius.domain.com

 DocumentRoot /var/www/daloradius

 <Directory /var/www/daloradius>
  AllowOverride all

  Order allow,deny
  allow from all
 </Directory>

 ErrorLog ${APACHE_LOG_DIR}/daloradius_error.log
 CustomLog ${APACHE_LOG_DIR}/daloradius_access.log combined
</VirtualHost>

или через php-fpm:

<VirtualHost *:80>

 ServerName daloradius.domain.com

 DocumentRoot /var/www/daloradius
 ProxyPassMatch ^/(.*\.php(/.*)?)$ unix:/run/php/php7.0-fpm.sock|fcgi://localhost/var/www/daloradius/
 DirectoryIndex /index.php index.php

 ErrorLog ${APACHE_LOG_DIR}/daloradius_error.log
 CustomLog ${APACHE_LOG_DIR}/daloradius_access.log combined
</VirtualHost>

и добавляем:

sudo a2ensite daloradius

перечитываем конфиги:

sudo service apache2 reload

Ссылки

https://github.com/lirantal/daloradius/issues/5 - How to get daloRADIUS to work in PHP-7
https://blog.khophi.co/radius-server-inside-daloradius-nginx-dd-wrt-captive-portal-linksys-chillispot/ - Radius Server Inside Out – DaloRADIUS Nginx DD-WRT Captive Portal Linksys Chillispot Ubuntu

how-to/daloradius.txt · Последнее изменение: 127.0.0.1