EAP-TLS实验之Ubuntu20.04环境搭建配置(FreeRADIUS3.0)(二)

        上篇文章简要介绍了freeradius的搭建及配置,在最后数据库连接阶段还没进行测试验证,今天继续。

修改相关文件

1 radiusd.conf

打开762行注释($INCLUDE mods-enabled/sql);

2 sites-available/default

打开-sql和sql前面的注释;

3. sites-available/inner-tunnel

打开-sql和sql前面的注释;

4. mods-available/sql

找到tls_required = yes这行,暂时将yes改为no;

创建sql软连接

#ln -s /etc/freeradius/3.0/mods-available/sql /etc/freeradius/3.0/mods-enabled/
#chgrp -h freerad /etc/freeradius/3.0/mods-available/sql
#chown -R freerad:freerad /etc/freeradius/3.0/mods-enabled/sql

        注意一定要创建软连接,因为相关配置文件里面均有涉及到mods-enabled/sql,相关权限也需赋予(实际上mods-enabled路径下会存放实际要调用的模块,而mods-available文件夹下存放的是可支持的功能模块)。

创建数据库测试账号信息

1 创建组信息

#mysql -u root
mysql> use radius;
mysql> insert into radgroupreply (groupname,attribute,op,value) values ('user','Auth-Type',':=','Local');
mysql> insert into radgroupreply (groupname,attribute,op,value) values ('user','Service-Type',':=','Framed-User');
mysql> insert into radgroupreply (groupname,attribute,op,value) values ('user','Framed-IP-Address',':=','255.255.255.255');
mysql> insert into radgroupreply (groupname,attribute,op,value) values ('user','Framed-IP-Netmask',':=','255.255.255.0');

2 创建用户信息

mysql> insert into radcheck (username,attribute,op,value) values ('mike','Cleartext-Password',':=','testpwd');

3 关联用户和组

mysql> insert into radusergroup (username,groupname) values ('mike','user');

4 添加用户回复消息

mysql> insert  into radreply(username,attribute,op,value) values('mike','Reply-Message','=','Yes,Nice!');

5 查询各张表确认信息无误

可以通过slect * from 表名分别查询;

测试

        开启俩终端,一终端运行freeradius -X,另一运行radtest mike testpwd localhost 0 testing123,效果如下图所示。至此,已经验证了两种方式user文件及数据库均正常执行。

遗留问题       

        在测试过程中(昨天),如果sql文件里面的tls_required = yes,会提示需要输入密钥短语(默认是whatever,可以在certs文件夹内的*.cnf里面找到,可搜索关键词input_password和output_password),成功后会提示连接MySQL失败,如下图所示,原因不知为何(tls认证时不能兼容使用MySQL??),还需时间研究下。

        如果输入的密钥短语不正确的话(也可以通过类似于openssl rsa -in /etc/freeradius/3.0/certs/client.key -check语句首先验证下,如果正确,终端会完整输出该证书文件的内容,如不对,则有error出现),终端会输出类似于无法获取client.key的private key这样的信息,此时如果实在记不起这个短语是几何时,可以考虑重新生成新的证书文件,这块可参考certs/README文件。

问题解答参考

        在官方提供的完全手册上(inner-tunnel),我们会看到一句话,这有可能会解释的通上面的问题原因所在。

Inner-tunnel

This virtual server handles only inner tunnel requests for EAP-TTLS and PEAP types.

        inner-tunnel是本地(localhost)测试所调用文件,不支持TLS认证,所以tls_required = no语句可以正常启动,而yes则失败。

        下篇再见。

参考:

How to use radiusd -X (debug mode) (freeradius.org)

FreeRADIUS | NetworkRADIUS

Imp_Guide (networkradius.com)


 

  • 19
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
EAP-MD5、EAP-TLSEAP-LEAP是在802.1X协议中使用的不同的认证方法。它们之间的区别如下: 1. EAP-MD5(Extensible Authentication Protocol with Message Digest 5):EAP-MD5是一种基于密码的认证方法。在认证过程中,客户端和认证服务器之间会进行挑战-响应的步骤,通过计算MD5哈希值来验证客户端的身份。然而,EAP-MD5的安全性相对较弱,因为它没有提供身份验证的互相验证机制,容易受到中间人攻击。 2. EAP-TLS(Extensible Authentication Protocol with Transport Layer Security):EAP-TLS是一种基于证书的认证方法。在认证过程中,客户端和认证服务器之间会进行公钥加密和数字证书验证。客户端使用自己的数字证书向认证服务器证明其身份,并与服务器进行互相验证。EAP-TLS提供了更强的安全性和身份验证机制,防止中间人攻击,并且可以支持更多高级的安全功能。 3. EAP-LEAP(Extensible Authentication Protocol- Lightweight Extensible Authentication Protocol):EAP-LEAP是思科公司开发的一种专有的认证方法。它使用了一种类似于密码的身份验证机制,但在传输过程中使用了动态WEP密钥加密数据。EAP-LEAP在早期的无线网络中使用较为广泛,但由于存在一些安全漏洞,现在已不推荐使用。 总结来说,EAP-MD5是基于密码的认证方法,EAP-TLS是基于证书的认证方法,而EAP-LEAP是一种特定厂商的认证方法。EAP-TLS提供了更高的安全性和可靠性,被广泛应用于网络安全领域。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值