引用简书的教程,但是有些地方有问题,做了进一步探索:
为Freeradius3.0配置sql与EAP-TLS - 简书
该链接已经将大部分的问题都将清楚了,但是在实际操作过程中有遇到问题,
在进行这一步的时候,
1,需要添加证书的绝对路径,
2,需要修改四个证书的权限,而且不能给777权限,755权限是可以用的。
eap{
default_eap_type=tls #其实不修改也可以,Freeradius会自己根据请求包调用相应的方法
tls-config tls-common {
private_key_password = whatever #服务器私钥密码
private_key_file = ${certdir}/server.key #也可以为绝对路径,服务器私钥
certificate_file = ${certdir}/server.pem #也可以为绝对路径,服务器证书
ca_file = ${cadir}/ca.pem #也可以为绝对路径,CA根证书
dh_file = ${certdir}/dh #也可以为绝对路径,Diffie-Hellman参数
}
}
登陆MySQL的时候,可以尝试下面的指令
mysql -h 127.0.0.1 -P 3306 -u radius -p radius
2023年12月30日更新
经过两天的时间摸索,加上网上的教程,对于Freeradius连接数据库有更多的认识。
从Freeradius的sql模块中可以看到,Freeradius支持多种数据库,并且已经配备了数据库的连接引擎(不懂数据库,暂时这样描述),详细可以查看下面的内容:
# Allowed dialects are:
#
# mssql
# mysql
# oracle
# postgresql
# sqlite
# mongo
Mysql没有安装成功,所以安装的Mariadb sql,与Mysql相同。
整个配置过程,参考了这个文章
ubuntu安装freeradius3, freeradius3-mysql并配置_freeradius3 pap-优快云博客
在最新的配置文件中,连接Mysql的加密证书默认是YES,在乱修改一通的情况下,还是不行,最后将tls_required = no,居然顺利启动了Freeradius服务。
mysql {
# If any of the files below are set, TLS encryption is enabled
tls {
ca_file = "/etc/ssl/certs/ca-certificates.crt"
ca_path = "/etc/ssl/certs/"
certificate_file = "/etc/freeradius/3.0/certs/client.crt"
private_key_file = "/etc/freeradius/3.0/certs/client.key"
# private_key_file = "/etc/ssl/certs/private/ssl-cert-snakeoil.key"
cipher = "DHE-RSA-AES256-SHA:AES128-SHA"
tls_required = no
#defaule is yes
tls_check_cert = no
tls_check_cert_cn = no
}
# If yes, (or auto and libmysqlclient reports warnings are
# available), will retrieve and log additional warnings from
# the server if an error has occured. Defaults to 'auto'
warnings = auto
}