CentOS6.5下搭建LAMP+FreeRadius+Daloradius Web管理和TP-LINK路由器、H3C交换机连接,实现,上网认证和记账功能
什么是RADIUS服务:
RADIUS:(Remote Authentication Dial In User Service)中文名为远程用户拨号认证服务,简称RADIUS,是目前应用最广泛的AAA协议(认证、授权和计费)。
RADIUS是一种C/S结构的协议,它的客户端最初就是NAS(Net Access Server)服务器,任何运行RADIUS客户端软件的计算机都可以成为RADIUS的客户端。RADIUS协议认证机制灵活,可以采用PAP、CHAP或者Unix登录认证等多种方式。RADIUS是一种可扩展的协议,它进行的全部工作都是基于Attribute-Length-Value的向量进行的。RADIUS也支持厂商扩充厂家专有属性。 由于RADIUS协议简单明确,可扩充,因此得到了广泛应用,包括普通电话上网、ADSL上网、小区宽带上网、IP电话、VPDN(Virtual Private Dialup Networks,基于拨号用户的虚拟专用拨号网业务)、移动电话预付费等业务。IEEE提出了802.1x标准,这是一种基于端口的标准,用于对无线网络的接入认证,在认证时也采用RADIUS协议。 常见的AAA组网示意如下图所示,其中RADIUS应用在AAA服务器上对用户进行认证、授权和计费服务。图中Device(例如交换机)向远程接入用户提供接入及与RADIUS服务器交互的服务。RADIUS服务器上则存储用户的身份信息、授权信息以及访问记录,对用户进行认证、授权和计费服务。
认证过程
(1)客户端向接入设备发送一个EAPoL-Start报文,开始802.1x认证接入;
(2)接入设备向客户端发送EAP-Request/Identity报文,要求客户端将用户名送上来;
(3)客户端回应一个EAP-Response/Identity给接入设备的请求,其中包括用户名;
(4)接入设备将EAP-Response/Identity报文封装到RADIUS Access-Request报文中,发送给认证服务器;
(5)认证服务器产生一个Challenge,通过接入设备将RADIUS Access-Challenge报文发送给客户端,其中包含有EAP-Request/MD5-Challenge;
(6)接入设备通过EAP-Request/MD5-Challenge发送给客户端,要求客户端进行认证;
(7)客户端收到EAP-Request/MD5-Challenge报文后,将密码和Challenge做MD5算法后的Challenged-Pass-word,在EAP-Response/MD5-Challenge回应给接入设备;
(8)接入设备将Challenge,Challenged Password和用户名一起送到RADIUS服务器,由RADIUS服务器进行认证;
(9)RADIUS服务器根据用户信息,做MD5算法,判断用户是否合法,然后回应认证成功/失败报文到接入设备。如果成功,携带协商参数,以及用户的相关业务属性给用户授权。如果认证失败,则流程到此结束;
(10)如果认证通过,用户通过标准的DHCP协议 (可以是DHCP Relay) ,通过接入设备获取规划的IP地址;
(11)如果认证通过,接入设备发起计费开始请求给RADIUS用户认证服务器;
(12)RADIUS用户认证服务器回应计费开始请求报文,用户上线完毕。
freeradius是GNU/GPL(通用公共许可证)的原则下,开发的高性能开源radius服务器。常见的radius服务器种类不多,比较强大的当属开源的freeradius,世界上大部分的radius服务器都是基于freeradius开发而来的。
freeradius可以对支持radius协议的网络设备进行账户认证、授权和记账管理,常见的开源路由器操作系统:如Openwrt,DD-wrt等,都支持radius协议,常见的电信运营商的宽带账户,上网账户管理,记账,也都是使用的radius服务器进行鉴权记账的。 RADIUS服务器和NAS服务器通过UDP协议进行通信,RADIUS服务器的1812端口负责认证,1813端口负责计费工作。采用UDP的基本考虑是因为NAS和RADIUS服务器大多在同一个局域网中,使用UDP更加快捷方便,而且UDP是无连接的,会减轻RADIUS的压力,也更安全。
搭建环境:
操作系统:CentOS 6.5, Win7/10
其他设备:TP-LINK路由器、H3C交换机
FreeRADIUS官网:http://freeradius.org/
daloRADIUS Web管理页面下载地址:https://sourceforge.net/projects/daloradius/
CentOS7下搭建LAMP+FreeRadius+Daloradius Web管理:https://www.cnblogs.com/opsprobe/p/9769555.html
一、LAMP环境安装:
yum -y install httpd httpd-devel
yum -y install mysql mysql-server mysql-devel
yum -y install php php-devel php-mysql php-common php-gd php-mbstring php-mcrypt php-imap php-odbc php-pear php-xml php-xmlrpc
/etc/init.d/httpd start # 启动http服务
/etc/init.d/mysqld start # 启动mysql服务
chkconfig httpd on # 把http服务加入开机启动
chkconfig mysqld on # 把mysql服务加入开机启动
mysqladmin -u root password '数据库的密码' # 设置mysql数据库的密码
为防止缺少相关的依赖关系,安装以下软件包:
yum -y install gcc gcc-c++ autoconf libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel libxml2 libxml2-devel zlib zlib-devel glibc glibc-devel glib2 glib2-devel bzip2 bzip2-devel ncurses ncurses-devel curl curl-devel e2fsprogs e2fsprogs-devel krb5 krb5-devel libidn libidn-devel
二、然后可以通过yum命令快速安装freeradius,就是版本略低一点,命令为:
yum install -y freeradius freeradius-mysql freeradius-utils
三、修改启用测试账户:
找到 radius 的用户信息配置参数文件(注:将来换mysql数据库存用户账户的话这个文件就不用了,测试完后修改回原来的样子),yum自动安装的在/etc/raddb路径里面。
vi /etc/raddb/users
然后找到下面这段信息(从76行开始)
#steve Cleartext-Password := "testing"
# Service-Type = Framed-User,
# Framed-Protocol = PPP,
# Framed-IP-Address = 172.16.3.33,
# Framed-IP-Netmask = 255.255.255.0,
# Framed-Routing = Broadcast-Listen,
# Framed-Filter-Id = "std.ppp",
# Framed-MTU = 1500,
# Framed-Compression = Van-Jacobsen-TCP-IP
然后把这段文字前面的 # 注释全部去掉后保存文件
现在可以通过radiusd -X来做首次启动,注意首次启动必须是root账户才行,还有注意那个X是大写的。
如果看到下面的提示应该就是启动成功了:
Listening on authentication address * port 1812
Listening on accounting address * port 1813
Listening on command file /var/run/radiusd/radiusd.sock
Listening on authentication address 127.0.0.1 port 18120 as server inner-tunnel
Listening on proxy address * port 1814
Ready to process requests.
然后另外打开一个终端输入 radtest steve testing localhost 1812 testing123 进行测试,当出现 rad_recv: Access-Accept 字样说明freeradius已经安装成功。
注意:
若测试时出现以下问题:
radclient:: Failed to find IP address for centos6
radclient: Nothing to send.
解决方法:
进入vi /etc/hosts 配置文件
在最后添加:127.0.0.1 servername(系统管理员的账户名)即可。
还需要特别注意,添加的这个127.0.0.1 servername(系统管理员的账户名)信息在测试成功后,一定要记得注释或者删除掉,否则在接入设备(交换机或者路由器)后会出现错误。
测试无问题以后记得再次进入vi /etc/raddb/users,把这个测试账户刚打开的相关的配置再全部注释掉,保存退出,然后用如下命令关闭 radiusd 的调试进程
killall -9 radiusd # 杀死 radius 服务进程
chkconfig radiusd on # 把radius服务加入开机启动
service radiusd start # 启动radius服务
现在可以通过新打开一个终端窗口,然后执行 cat /var/log/radius/radius.log 去查看启动日志看有没有错误。
四、以下开始配置freeradius了:
mv /etc/raddb/clients.conf /etc/raddb/clients.conf.backup # 备份/etc/raddb/clients.conf文件
grep -v "#" /etc/raddb/clients.conf.backup > /etc/raddb/clients.conf # 过滤出不带注释符号 # 的信息行
vi /etc/raddb/clients.conf
内容配置为:
client localhost {
ipaddr = 127.0.0.1
secret = testing123
require_message_authenticator = no
}
需要注意,上面配置的127.0.0.1主要用于测试,将来真正的客户端要按照下面的信息进行补充:
将来你真正的 raidus 客户端,如路由器、交换机等需要在这里配置ip信息,例如:
client x.x.x.x { # 这里的 x.x.x.x 就是交换机或者路由器等设备的IP地址
ipaddr = x.x.x.x # 交换机或者路由器等设备的IP地址
secret = xxxxxxxxxx # 自己定义的交换机或者路由器等设备和 radius 服务器的连接密码
# require_message_authenticator = no # 这个可以注释掉,不用管
# shortname = localhost # 这个也可以注释掉,不用管
}
然后用如下命令:
mv /etc/raddb/sql/mysql/admin.sql /etc/raddb/sql/mysql/admin.sql.backup # 备份/etc/raddb/sql/mysql/admin.sql文件
grep -v "#" /etc/raddb/sql/mysql/admin.sql.backup > /etc/raddb/sql/mysql/admin.sql # 过滤出不带注释符号 # 的信息行
vi /etc/raddb/sql/mysql/admin.sql
内容改成下面这个样子的:
CREATE USER 'radius'@'localhost';
SET PASSWORD FOR 'radius'@'localhost' = PASSWORD('radpass');
GRANT SELECT ON radius.* TO 'radius'@'localhost';
GRANT ALL on radius.radacct TO 'radius'@'localhost';
GRANT ALL on radius.radpostauth TO 'radius'@'localhost';
以上信息是指 “ 数据库为radius,密码为radpass ”如果要自己设置,设置完成后还要修改 /etc/raddb/sql.conf 这个配置文件把账号和密码改为自己设置的。
保存退出。
mysql -u root -p 回车后输入mysql的root管理员帐号密码,然后
create database radius; # 创建radius数据库
grant all on radius.* to radius@"localhost" identified by "radpass"; # GRANT 权限 ON 数据库.* TO 用户名@主机名IDENTIFIED BY "密码"; 对某个特定数据库中的所有表单给予授权和创建数据库管理账户
exit # 退出数据库
再次 mysql -u root -p 回车,输入密码后
然后执行source /etc/raddb/sql/mysql/admin.sql
然后 use radius; 回车,打开radius数据库
导入下列 sql 表的信息
source /etc/raddb/sql/mysql/schema.sql 回车,
source /etc/raddb/sql/mysql/nas.sql 回车,
source /etc/raddb/sql/mysql/ippool.sql 回车,
source /etc/raddb/sql/mysql/wimax.sql 回车,
source /etc/raddb/sql/mysql/cui.sql 回车,
flush privileges; 回车, # mysql 新设置用户或更改密码后需用flush privileges刷新 mysql 的系统权限相关表,否则会出现拒绝访问,还有一种方法,就是重新启动mysql服务器,来使新设置生效。
导入完成后,可以用命令查看导入的数据表的信息
use radius; # 打开radius数据库
show tables; # 显示radius数据库里的所有表
可以看到如下的表结构
+------------------+
| Tables_in_radius |
+------------------+
| cui |
| nas |
| radacct |
| radcheck |
| radgroupcheck |
| radgroupreply |
| radippool |
| radpostauth |
| radreply |
| radusergroup |
| wimax |
+------------------+
MySQL中表结构的定义
针对FreeRadius2,数据表的设计和结构定义在下面的文件中:
/etc/raddb/sql/mysql/schema.sql # 主数据库定义,7个表,包括
radcheck # 用户检查信息表
radreply # 用户回复信息表
radgroupcheck # 用户组检查信息表
radgroupreply # 用户组回复信息表
radusergroup # 用户和组关系表
radacct # 计费情况表
radpostauth # 认证后处理信息,可以包括认证请求成功和拒绝的记录。
/etc/raddb/sql/mysql/nas.sql # 网络设备定义,只有一个表:
nas # 网络设备表
下面的表用于一些扩展功能,可以按需导入。
ippool.sql # ip池
wimax.sql # wimax设备支持
cui.sql # cui 支持
exit # 退出 mysql 数据库。
然后进入 vi /etc/raddb/radiusd.conf 配置文件,配置freeradius支持sql:
1、vi /etc/raddb/radiusd.conf
找到 module (694行)那块以后去掉 $INCLUDE sql.conf(735行)这句话前面的 # 和 $INCLUDE sql/mysql/counter.conf(747行)前面的 #
保存文件退出vi编辑器
注意:
一定要取消这一行的注释:$INCLUDE sql.conf
否则在 radiusd -X 总会报错 Failed to load module "sql". (加载模块失败)
同理,要是在debug(调试)时出现 load module 的任何相关错误,都要取消 radiusd.conf 中的那一行 module 的注释,否则不会加载。
2、然后打开 vi /etc/raddb/sql.conf 配置文件修改与 mysql 数据库连接的配置
先找到 readclients = yes(108行)这一行,去掉前面的 # 注释
然后找到以下信息( 36-39行 )
server = "localhost"
port = 3306 # mysql数据库的端口号
login = "radius" # mysql数据库的登录账户
password = "radpass" # mysql数据库的radius账户的登录密码
radius_db = "radius"( 42行 ) # radius为数据库名
确保以上信息都正确后保存退出 vi 编辑器。
3、然后打开 vi /etc/raddb/sites-enabled/default 配置文件修改认证的方式
分别找到 authorize(69行),accounting(378行),session(449行)这几个配置,将里面的sql全部启用就行了,也就是把 sql 前面的 # 去掉就OK了。
1)authorize(授权) { 69—223行 }
在" # Read the 'users' file "下面的 files 注释掉(170 行);
下面的 sql 取消注释(177 行)。
这里需要注意一下156行的信息 eap,意思是radius服务器和设备间是采用eap的认证方式。
2)accounting (账单) { 378—443行 }
在" # See "Accounting queries" in sql.conf "下面的 sql 取消注释(406 行);
3)session (对话) { 449—455行 }
在" # See "Simultaneous Use Checking Queries" in sql.conf "下面的 sql 取消注释(454行)
4)preacct (333行)
注释掉files (372行)
5)post-auth (461行)
取消sql的注释(475行)
6)pre-proxy (590行)
注释掉files (595行)
4、还有 vi /etc/raddb/sites-enabled/inner-tunnel
在" # Read the 'users' file "下面的 files 注释掉(124 行);
在" # See "Authorization Queries" in sql.conf "下面的 sql 取消注释(132行)
到了这就终于配置完了,下面就是插入一条数据到 mysql 数据库中真实的测试一下了:
mysql -u root -p
use radius
insert into radcheck (UserName, Attribute, Value) VALUES ('demo','Password', 'demopwd'); # 插入账户和密码
insert into radusergroup (username,groupname) values ('demo','user'); # 将用户加入组中
select * from radcheck; # 查询用户
出现以下结果则数据插入正确
exit # 退出数据库
service mysqld restart # 重启mysql数据库
service radiusd stop # 用 radiusd -X 做测试时需要把 radius 服务先停止
radiusd -X # 开始调试
另外开一个终端运行一下命令
radtest demo demopwd localhost 1812 testing123 # 用数据库里刚插入的账户和密码进行测试
成功的样子应该会出现 rad_recv: Access-Accept 字样。
这里特别需要注意: 在测试的时候需要保证 /etc/raddb/clients.conf 文件内容配置为以下的样子:
client localhost {
ipaddr = 127.0.0.1
secret = testing123
require_message_authenticator = no
}
否则测试的时候会显示 radclient: no response from server for ID 96 socket 3 类似这样的提示。
可以再执行 cat /var/log/radius/radius.log 去查看启动日志看有没有错误。
杀死 radius 服务进程,启动 radius 服务,接下来配置路由器,进行无线连接。
killall -9 radiusd
service radiusd start
iptables -F # 为防止接下来的操作被 iptables 防火墙干扰,这里先清空防火墙规则链
五、配置路由器并进行无线连接:
注:192.168.2.1 是路由器 LAN 端 IP,这里我是直接用网线把电脑和路由器直接连起来的,如下图,在路由器里的设置,需要加入的 radius 服务器的IP地址和连接密码(/etc/raddb/clients.conf),否则将无法访问 radius 服务器,记得保存。
还有从下图可以看出TP-LINK的这款路由器只支持 radius 服务的认证功能。
之后就可以用笔记本电脑无线连接路由器(路由器的SSID 为 TP-LINK-300M),如下图:
1、下面是用Win10系统进行连接的,如果电脑上有以前保存要连接的路由器的密码,请务必删除,Win10在要连接的路由器SSID上右击,点击忘记就可以了,然后点击连接,弹出的窗口里输入账户demo,密码demopwd,点击确定,如果正常就可以上网了。
2、下面是用Win7系统进行连接的,如果电脑上有以前保存要连接的路由器的密码,也请务必删除,Win7需要打开控制面板里的网络和共享中心,然后点击管理无线网络(如下图)找到路由器的SSID删除即可,接下来连接路由器在弹出的窗口里输入账户demo,密码demopwd,点击确定,如果正常就可以上网了。
六、安装web后台管理页面daloradius:
有些 PHP 的必须包是不在默认标准库里的,还需要安装 PHP 扩展 pear(PHP扩展与应用库)。
wget http://download.pear.php.net/package/DB-1.7.14RC2.tgz #下载软件包
安装一个pear-DB的包:
pear install DB-1.7.14RC2.tgz
cd /var/www/html # 进入web数据主目录 /var/www/html
从sf.net(https://sourceforge.net/projects/daloradius/?source=typ_redirect)下载最新版的daloraidus
wget https://nchc.dl.sourceforge.net/project/daloradius/daloradius/daloradius0.9-9/daloradius-0.9-9.tar.gz
然后
tar -zxvf daloradius-0.9-9.tar.gz # 解压daloradius-0.9-9.tar.gz
mv daloradius-0.9-9 daloradius # 将文件daloraidus-0.9-9重命名为daloradius
解压文件 daloradius 中有 INSTALL 文件是对其的信息和安装配置的说明,可以按照其说明去做。
要注意的是与freeradius配合安装,导入的是不同的数据包。
配置时修改数据库连接信息的文件是 /var/www/html/daloradius/library/daloradius.conf.php,填写正确的数据库名称、用户名和密码。当前版本的 INSTALL 文件中所写配置文件为daloradius.conf,大概是由于没有及时更新,是不正确的。
chown apache:apache -R /var/www/html/daloradius/ # 将 /var/www/html/ 文件夹极其下面的所有文件设置为apache组和apache用户所拥有
chmod 644 /var/www/html/daloradius/library/daloradius.conf.php # 将 daloraidus.conf.php 文件的权限设置为rw-r--r--
cd /var/www/html/daloradius/contrib/db/ # 进入 /var/www/html/daloradius/contrib/db/ 目录
mysql -u root -p radius < mysql-daloradius.sql # 将 mysql-daloradius.sql 导入到mysql里radius数据库中
mysql -u root -p radius < fr2-mysql-daloradius-and-freeradius.sql # 将 fr2-mysql-daloradius-and-freeradius.sql 导入到mysql里radius数据库中
vi /var/www/html/daloradius/library/daloradius.conf.php # 修改daloradius.conf.php 文件,将以下涉及到的内容更改,其他的别动
(28-33行)
$configValues['CONFIG_DB_ENGINE'] = 'mysql';
$configValues['CONFIG_DB_HOST'] = 'localhost';
$configValues['CONFIG_DB_PORT'] = '3306'; # 连接mysql数据库的端口
$configValues['CONFIG_DB_USER'] = 'root'; # 连接mysql数据库的账户
$configValues['CONFIG_DB_PASS'] = ' '; # 连接mysql数据库账号的密码
$configValues['CONFIG_DB_NAME'] = 'radius'; # 连接mysql的radius数据库
下面还有几个 daloradius 的 bug,默认配置中有几个文件路径和我们导入的不一样,把它改过来:
$configValues['CONFIG_FILE_RADIUS_PROXY'] = '/etc/raddb/proxy.conf';(68行)
$configValues['CONFIG_PATH_DALO_VARIABLE_DATA'] = '/var/www/html/daloradius/var';(70行)
$configValues['CONFIG_MAINT_TEST_USER_RADIUSSECRET'] = 'testing123';(88行) # 注意这条,要和 /etc/raddb/clients.conf 文件设置的secret =xxxxxxxxxx 值一样。
配置完成后,保存退出
touch /tmp/daloradius.log # 建立daloraidus的日志文件
chown apache.apache /tmp/daloradius.log # 将其文件设置为apache组及apache用户拥有
service httpd restart # 重启http服务
接下来是添加防火墙规则,开放防火墙80端口,1812是radius服务的认证授权端口,1813是计费端口
/sbin/iptables -I INPUT -p tcp --dport 80 -j ACCEPT
/sbin/iptables -I INPUT -p tcp --dport 1812 -j ACCEPT
/sbin/iptables -I INPUT -p tcp --dport 1813 -j ACCEPT
/sbin/iptables -I INPUT -p udp --dport 1812 -j ACCEPT
/sbin/iptables -I INPUT -p udp --dport 1813 -j ACCEPT
查看端口是否开放
iptables -L -n | grep 181
/etc/rc.d/init.d/iptables save # 保存配置 /etc/rc.d/init.d/iptables restart # 重启服务
现在打开浏览器访问 http://your ip address/daloradius 就可以看到daloradius了,默认登录的用户名和密码分别为 username: administrator password: radius。
Config下可以对管理员进行增删改,如下图:
cat /etc/httpd/logs/error_log # 可以查看 http 服务的日志,看有没有错误
下面是配置计费流量等mysql -u root -puse radius
INSERT INTO radgroupreply (groupname,attribute,op,VALUE) VALUES ('user','Auth-Type',':=','Local');
INSERT INTO radgroupreply (groupname,attribute,op,VALUE) VALUES ('user','Service-Type',':=','Framed-User');
INSERT INTO radgroupreply (groupname,attribute,op,VALUE) VALUES ('user','Framed-IP-Address',':=','255.255.255.255');
INSERT INTO radgroupreply (groupname,attribute,op,VALUE) VALUES ('user','Framed-IP-Netmask',':=','255.255.255.0');
INSERT INTO radgroupreply (groupname,attribute,op,VALUE) VALUES ('user','Acct-Interim-Interval',':=','600'); # acct-interim-interval是计算流量的间隔(600秒),意味着每隔10分钟记录当前流量。
INSERT INTO radgroupcheck (groupname,attribute,op,VALUE) VALUES ('user','Simultaneous-Use',':=','1'); # 允许同时连接数目。
第七步,配置H3C交换机与radius服务器连接
在网络设备上开启802.1X认证、AAA认证和服务器RADIUS的配置,本文以H3C交换机为例。
1、设置交换机的IP地址:
[H3C] system-view #开启全局802.1x特性
#先设定交换机IP vlan 1打开端口 默认分配到vlan1
#交换机端口默认是vlan1,工作在access模式
[H3C] interface vlan-interface 1
[H3C-Vlan-interface1] ip add x.x.x.x x.x.x.x # ip add 交换机的IP地址 交换机的子网掩码
[H3C-Vlan-interface1] quit
第一步:H3C进入特权模式后,开启802.1X认证协议和认证方式,命令如下:
dot1x
dot1x authentication-method eap #采用eap认证方式
quit
百度百科关于802.1X认证协议和eap协议的说明:
802.1X认证协议:
(1)https://baike.baidu.com/item/802.1x/5635474?fr=aladdin
(2)https://baike.baidu.com/item/802.1x身份认证/7850855
eap协议:https://baike.baidu.com/item/EAP协议/5794582
Web界面显示如下:
第二步:与认证服务器RADIUS的配置,命令如下:
radius scheme demo # 创建radius方案demo并进入其视图
primary authentication x.x.x.x (IP) # 设置主认证radius服务器的IP
primary accounting x.x.x.x (IP) # radius主计费服务器的IP
key authentication xxxxxxxxxx (密码) # radius服务器认证密码
key accounting xxxxxxxxxx (密码) # radius服务器计费密码
user-name-format without-domain # 指示系统从用户名中去除用户域名后再将之传给radius服务器
quit
Web界面显示如下:
第三步:配置AAA认证,最好是每个认证都开启,我在配置过程中没有配置计费认证,结果导致认证总是失败,命令如下:
domain system # 创建域system并进入其视图
authentication lan-access radius-scheme demo # 配置802.1x用户使用radius方案demo进行认证、授权、计费。
authorization lan-access radius-scheme demo
accounting lan-access radius-scheme demo
access-limit disable # 可设置该域最多可容纳多少个用户,这里不设置
state active
idle-cut disable # 可启动闲置切断功能并设置相关参数,这里不设置
self-service-url disable
quit
Web页面显示如下:
第四步:开启端口的802.1X的认证,命令如下:
interface GigabitEthernet1/0/1 # 开启指定端口GigabitEthernet1/0/1的802.1x特性
undo dot1x handshake # 这个握手协议要关闭,避免windows认证一段时间后又会掉线,要求重连
dot1x port-method portbased # 端口控制方式为Port Based
dot1x
Web界面显示如下:
第五步:dis cu查看最终所有的配置,如下:
<H3C>dis cu
#
version 5.20.99, Release 1111
#
sysname H3C
#
domain default enable system
#
ipv6
#
telnet server enable
#
port-group-vlan 1
#
dot1x
dot1x authentication-method eap
#
password-recovery enable
#
vlan 1
#
radius scheme demo
primary authentication 192.168.1.239
primary accounting 192.168.1.239
key authentication cipher $c$3$buPUPkVkvu8c7rakR3BdQpKbL4c24LiQfJdCu8EM
key accounting cipher $c$3$LdPEB85akrViDkqJTFsTAaSvl36Oc7nryXMFm56q
user-name-format without-domain
#
domain system
authentication lan-access radius-scheme demo
authorization lan-access radius-scheme demo
accounting lan-access radius-scheme demo
access-limit disable
state active
idle-cut disable
self-service-url disable
#
user-group system
group-attribute allow-guest
#
local-user admin
password cipher $c$3$EkhzOhFEh59+WPOOlD32QaWsr0DwDZyU
authorization-attribute level 3
service-type telnet
service-type web
#
interface NULL0
#
interface Vlan-interface1
ip address 192.168.1.240 255.255.255.0
#
interface GigabitEthernet1/0/1
dot1x guest-vlan 1
undo dot1x handshake
dot1x port-method portbased
dot1x
#
interface GigabitEthernet1/0/2
#
interface GigabitEthernet1/0/3
#
interface GigabitEthernet1/0/4
#
interface GigabitEthernet1/0/5
#
interface GigabitEthernet1/0/6
。。。。。。
#
undo info-center logfile enable
#
load xml-configuration
#
user-interface aux 0
user-interface vty 0 15
authentication-mode scheme
#
return
H3C交换机恢复默认配置命令
<H3C>reset saved-configuration
The saved configuration file will be erased. Are you sure? [Y/N]:Y
注意:恢复完后需要重启交换机才能生效
<H3C>reboot
Start to check configuration with next startup configuration file, please wait.........DONE!
This command will reboot the device. Current configuration will be lost, save current configuration? [Y/N]:N
This command will reboot the device. Continue? [Y/N]:Y
到这所有的配置终于是完了,电脑上可以安装锐捷的认证客户端进行认证登录。
第八步,daloradius中文版配置:
进入daloradius 文件目录,修改config-lang.php,添加中文选项:
cd /var/www/html/daloradius
vi config-lang.php
<option value="zh"> Simplified Chinese </option> (79行)
进入lang目录,修改main.php,增加简体中文文件:
cd lang/
vi main.php
(32行)
case "zh":
include (dirname(__FILE__)."/zh.php");
break;
下载文件zh.php;
链接:https://pan.baidu.com/s/10RX80RMIQRMYkcEzicF7lw,密码:z7wu
返回lang目录,将下载的zh.php文件放入lang目录,重启radius服务;
cd /var/www/html/daloradius/lang
将下载的zh.php上传至此目录。
service radiusd restart # 重启radius服务
service httpd restart # 重启http服务
service mysqld restart # 重启mysql服务
设置为简体中文 Config -> Language Settings ->Simplified Chinese
iptables -L # 查看iptables防火墙规则链
保证80(HTTP超文本传输协议端口)、1812(认证授权端口)、1813(计费端口)端口的开放。
第九步,daloradius对freeradius服务的Web页面管理展示:
1、服务器状态:
2、在线用户:
3、连接记录:
4、用户排行:
推荐本站淘宝优惠价购买喜欢的宝贝:
本文链接:https://hqyman.cn/post/1668.html 非本站原创文章欢迎转载,原创文章需保留本站地址!
休息一下~~
评论列表:
还算稳定。
还算稳定。