在Ubuntu 20.04/18.04/16.04上安装Freeradius和Daloradius
本教程是在Ubuntu 20.04/18.04/16.04 LTS服务器上安装Freeradius和Daloradius。
我们最近关于Freeradius的教程是如何在Centos 7和Rhel 7上安装Freeradius和Daloradius。
FreeRadius是一个开源,高性能,模块化,可缩放和功能丰富的Radius服务器。
它与服务器和RADIUS客户端,开发库和众多额外的RADIUS相关实用程序一起划船。
FreeRadius支持请求代理,具有失败和负载平衡,以及访问许多类型的后端数据库的能力。
用于"远程认证拨入用户服务"的RADIUS是一种用于远程用户身份验证和计费的网络协议。
它提供了AAA服务;即授权,身份验证和会计。
Freeradius的特点
灵活的配置通过各种方法选择用户配置..与EAP-MD5,EAP-SIM,EAP-TLS,EAP-TTL,EAP-PEAP和CISCO LEAP EAP分布,AEAP-MD5和RFC 2866属性的灵活配置。
- 近一百个供应商的特定属性,包括Bintec,Foundry,Cisco,Juniper,Lucent/Ascend,HP Procurve,Microsoft,USR/3Com,ACC/Newbridge等。
什么是daloRADIUS?
另一方面,Daloradius是一种在PHP和JavaScript中编写的高级RADIUS Web管理平台。
它主要旨在管理由FreeRadius服务器提供支持的热点和通用ISP部署。
DaloRadius的一些很好的功能包括:具有数据库抽象层,支持许多数据库系统 - MySQL,SQLite,PostgreSQL,MSSQL和Oracleadvanced用户管理功能,与Googlemaps用于地球位置的Googlemaps一个计费引擎
如何在Ubuntu 20.04/18.04/16.04上安装Freeradius和Daloradius
首先将系统包更新到最新版本:
sudo apt update sudo apt -y upgrade
升级后重新启动系统
sudo reboot
系统启动后,在Ubuntu 18.04/Ubuntu 16.04系统上开始安装Freeradius和Daloradius。
第1步:安装Apache Web服务器和PHP
Daloradius将需要PHP和Apache Web服务器将安装在主机系统上。
在Ubuntu上安装Apache:
通过运行安装Apache Web服务器:
sudo apt -y install apache2
在Ubuntu 18.04和Ubuntu 16.04上安装PHP,运行:
sudo apt -y install php libapache2-mod-php php-{gd,common,mail,mail-mime,mysql,pear,db,mbstring,xml,curl}
检查安装的PHP版本:
$php -v PHP 7.2.19-0ubuntu0.18.04.2 (cli) (built: Aug 12 2019 19:34:28) ( NTS ) Copyright (c) 1997-2016 The PHP Group Zend Engine v3.2.0, Copyright (c) 1998-2016 Zend Technologies with Zend OPcache v7.2.19-0ubuntu0.18.04.2, Copyright (c) 1999-2016, by Zend Technologies
第2步:安装MariaDB并创建数据库
接下来是安装MariaDB服务器并为Daloradius创建一个数据库。
我们有一个在Ubuntu安装MariaDB 10.x的全面教程
在Ubuntu 18.04和Centos 7上安装MariaDB 10.x
对于Ubuntu 20.04,刚刚运行:
sudo apt update sudo apt install mariadb-server sudo mysql_secure_installation
安装并运行后,为FreerAdius创建数据库,这将在稍后阶段使用。
database name: radius database user: radius database user password: Hyman@theitroad
如果我们有专用的数据库服务器,请将localhost替换为源Freeradius服务器的IP。
$sudo mysql -u root -p CREATE DATABASE radius; GRANT ALL ON radius.* TO Hyman@theitroad IDENTIFIED BY "Hyman@theitroad"; FLUSH PRIVILEGES; QUIT
第3步:在Ubuntu 20.04/18.04/16.04上安装和配置FreeRadius
我们可以查看Ubuntu中可用的Freeradius版本:
$sudo apt policy freeradius freeradius: Installed: (none) Candidate: 3.0.20+dfsg-3build1 Version table: 3.0.20+dfsg-3build1 500 500 http://nova.clouds.archive.ubuntu.com/ubuntu focal/main amd64 Packages
使用以下命令从官方Ubuntu APT存储库安装Freeradius包:
sudo apt -y install freeradius freeradius-mysql freeradius-utils
安装的软件包中是MySQL模块和Utils包。
Ubuntu 16.04
对于Ubuntu 16.04系统,版本2.x是官方存储库中可用的包。
要安装版本3.0,请为Freeradius的版本添加Personal Package Archive(PPA)。
sudo add-apt-repository ppa:freeradius/stable-3.0 sudo apt-get update sudo apt-get install freeradius freeradius-mysql freeradius-utils
导入Freeradius MySQL数据库方案:
sudo su mysql -u root -p radius < /etc/freeradius/3.0/mods-config/sql/main/mysql/schema.sql
检查创建的表:
$sudo mysql -u root -p -e "use radius;show tables;" Enter password: +------------------+ | Tables_in_radius | +------------------+ | nas | | radacct | | radcheck | | radgroupcheck | | radgroupreply | | radpostauth | | radreply | | radusergroup | +------------------+
为SQL模块创建一个软链接 /etc/freeradius/3.0/mods-enabled/
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 = "Hyman@theitroad" # 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
重新启动Freeradius服务:
sudo systemctl restart freeradius.service
在Ubuntu 20.04/18.04/16.04上安装和配置Daloradius
我们需要安装Daloradius以获取FreeRadius Web管理界面。
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.
现在导入daloradius mysql表
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数据库连接详细信息:
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数据库信息。
打开daloradius.conf.php
并添加数据库用户名,密码和数据库名称。
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'] = 'Hyman@theitroad'; $configValues['CONFIG_DB_NAME'] = 'radius';
确保一切工作,重新启动Freeradius和Apache2
sudo systemctl restart freeradius.service apache2
使用系统IP地址或者域名打开管理员链接:
http://ip-address/daloradius/login.php
像这样的页面将出现:
默认登录详细信息是:
Username: administrator Password: radius