在Debian 10(Buster)上安装Freeradius和Daloradius
本教程将讨论如何在Debian 10(Buster)Linux上安装Freeradius和Daloradius。
RADIUS是用于远程用户身份验证,授权和计费的网络协议。
FreeRadius是一个常用于Linux,UNIX和嵌入式系统的开源RADIUS服务器。
Daloradius是一种基于Web的RADIUS管理工具,编写在PHP中。
它创建以简化RADIUS服务器和热点设备的管理和管理(NAS)。
它配备了强大的图形报告和会计,计费和高级用户管理功能。
我们的下一步将在Debian 10 Linux上安装和配置Freeradius和Daloradius。
第1步:更新服务器
通过运行命令更新包索引:
sudo dnf -y update
第2步:安装和配置数据库服务器
我们将使用MariaDB,但可以使用任何其他支持的数据库服务器。
使用我们的教程将Mariadb安装在Debian 10上:
如何在Debian 10上安装MariaDB
安装后,为Freeradius/Daloradius创建数据库和用户。
$ mysql -u root -p CREATE DATABASE radius; GRANT ALL ON radius.* TO Hyman@theitroad IDENTIFIED BY "StrongradIusPass"; FLUSH PRIVILEGES; \q
确认RADIUS数据库用户可以访问授予的数据库。
$mysql -u radius -p Enter password: Welcome to the MariaDB monitor. Commands end with ; or \g. Your MariaDB connection id is 48 Server version: 10.3.17-MariaDB-0+deb10u1 Debian 10 Copyright (c) 2000, 2016, Oracle, MariaDB Corporation Ab and others. Type 'help;' or '\h' for help. Type '\c' to clear the current input statement. MariaDB [(none)]> SHOW DATABASES; +--------------------+ | Database | +--------------------+ | information_schema | | radius | +--------------------+ 2 rows in set (0.001 sec) MariaDB [(none)]> QUIT Bye
第3步:安装Apache Web服务器和PHP
我们将使用Apache Httpd Server在Debian 10 Linux系统上托管Daloradius。
使用以下命令安装Httpd和PHP软件包。
sudo apt -y install apache2 sudo apt -y install php libapache2-mod-php php-{gd,common,mail,mail-mime,mysql,pear,mbstring,xml,curl}
检查安装的PHP版本以确认安装成功。
$php -v PHP 7.3.9-1~deb10u1 (cli) (built: Sep 18 2019 10:33:23) ( NTS ) Copyright (c) 1997-2016 The PHP Group Zend Engine v3.3.9, Copyright (c) 1998-2016 Zend Technologies with Zend OPcache v7.3.9-1~deb10u1, Copyright (c) 1999-2016, by Zend Technologies
让我们通过检查两个服务的状态来验证一开始。
systemctl status apache2
允许防火墙上的HTTP和HTTPS端口已启用UFW。
sudo ufw allow http sudo ufw allow https
第4步:在Debian 10 Linux上安装Freeradius
FreeRadius套餐可在默认的Debian存储库上使用。
此安装没有特殊的准备工作。
要安装,只需运行命令。
sudo apt -y install freeradius freeradius-mysql freeradius-utils
安装后启动服务。
sudo systemctl enable --now freeradius.service
现在我们可以查看状态:
$systemctl status freeradius ● freeradius.service - FreeRADIUS multi-protocol policy server Loaded: loaded (/lib/systemd/system/freeradius.service; enabled; vendor preset: enabled) Active: active (running) since Thu 2019-10-10 21:10:22 UTC; 26min ago Docs: man:radiusd(8) man:radiusd.conf(5) http://wiki.freeradius.org/ http://networkradius.com/doc/ Main PID: 15918 (freeradius) Tasks: 6 (limit: 4719) Memory: 10.6M CGroup: /system.slice/freeradius.service └─15918 /usr/sbin/freeradius .......
第5步:在Debian 10上配置FreeRadius
配置Freeradius使用MariaDB,请按照以下步骤操作。
1 - 将RADIUS数据库方案导入填充RADIUS数据库
sudo su mysql -u root -p radius < /etc/freeradius/3.0/mods-config/sql/main/mysql/schema.sql
2 - 配置半径
首先,我们必须为SQL模块创建一个软链接。
sudo ln -s /etc/freeradius/3.0/mods-available/sql /etc/freeradius/3.0/mods-enabled/
通过更改数据库连接参数来审核环境来配置SQL模块:
sudo vim /etc/freeradius/3.0/mods-enabled/sql
SQL部分应与下面类似。
sql { driver = "rlm_sql_mysql" dialect = "mysql" # Connection info: server = "localhost" port = 3306 login = "radius" password = "StrongradIusPass" # Database table configuration for everything except Oracle radius_db = "radius" } # Set to ‘yes’ to read radius clients from the database (‘nas’ table) # Clients will ONLY be read on server startup. read_clients = yes # Table to keep radius client info client_table = "nas"
然后改变小组权利 /etc/freeradius/3.0/mods-enabled/sql
sudo chgrp -h freerad /etc/freeradius/3.0/mods-available/sql sudo chown -R freerad:freerad /etc/freeradius/3.0/mods-enabled/sql
重新启动Radiusd服务
sudo systemctl restart freeradius
第6步:安装和配置Daloradius
我们可以使用Daloradius从Web界面管理RADIUS服务器。
这是一个可选配置,我们可以根据用例选择。
从github下载daloradius发布存档。
sudo apt -y install wget unzip wget https://github.com/lirantal/daloradius/archive/master.zip unzip master.zip mv daloradius-master/daloradius
更改配置目录
cd daloradius
导入DaloRadius MySQL表
mysql -u root -p radius < contrib/db/fr2-mysql-daloradius-and-freeradius.sql mysql -u root -p radius < contrib/db/mysql-daloradius.sql
将Daloradius文件夹移动到路径/var/www/html
cd .. sudo mv daloradius /var/www/html/
然后更改HTTP文件夹的权限,并为Daloradius配置文件设置正确的权限。
sudo chown -R www-data:www-data /var/www/html/daloradius/ sudo chmod 664 /var/www/html/daloradius/library/daloradius.conf.php
我们现在应该修改daloradius.conf.php文件以调整MySQL数据库信息。
sudo vim /var/www/html/daloradius/library/daloradius.conf.php
设置数据库名称,用户和密码。
$configValues['CONFIG_DB_HOST'] = 'localhost'; $configValues['CONFIG_DB_PORT'] = '3306'; $configValues['CONFIG_DB_USER'] = 'radius'; $configValues['CONFIG_DB_PASS'] = 'StrongradIusPass'; $configValues['CONFIG_DB_NAME'] = 'radius';
确保一切工作,重新启动RADIUSD和HTTPD服务。
sudo systemctl restart freeradius.service apache2
第7步:访问Daloradius Web界面
Daloradius管理Web界面可在http://server_ip_or_hostname/daloradius上访问。
默认登录详细信息是:
Username: administrator Password: radius