daloradius配置部署之二常见问题汇总

文章列举了Daloradius在使用过程中遇到的一些常见问题,包括无法查看连接日志、radius日志、Linux系统日志、在线用户和历史登录统计问题,以及Serverstatus信息不显示和radiusd启动失败等。解决方法涉及修改配置文件、权限设置、数据库表结构修复和进程管理等。
摘要由CSDN通过智能技术生成

daloradius常见问题汇总

1、daloradius无法查看连接日志

如下图所示

 

解决方法:

vim /var/www/html/daloradius/library/daloradius.conf.php
将
$configValues['FREERADIUS_VERSION'] = '3';
修改为
$configValues['FREERADIUS_VERSION'] = '2';

注意:如果不关闭,将在daloradius中无法查看日志信息

2、daloradius查看不了radius 日志

解决方法

chmod 755 /var/log/radius/
chmod 644 /var/log/radius/radius.log

 

注意:如果不关闭,将在daloradius中无法查看日志信息

3、daloradius查看不了linux系统日志

 

解决方法

chmod 644 /var/log/messages

注意:如果不关闭,将在daloradius中无法查看日志信息

4、Accounting 页面查看不了在线用户,以及历史登陆统计

在daloradius 查看accounting在线用户时,配置调试模式下看到了sql 的错误,找不到表字段。

解决方法:

vi /usr/local/etc/strongswan.d/charon/eap-radius.conf

1)修改 accounting = yes

2)登陆mysql数据库,删除radacct表 并重新建立

mysql -u radius -p

输入密码

在sql中执行如下语句

DROP TABLE radacct;
CREATE TABLE radacct (
  radacctid bigint(21) NOT NULL auto_increment,
  acctsessionid varchar(64) NOT NULL default '',
  acctuniqueid varchar(32) NOT NULL default '',
  username varchar(64) NOT NULL default '',
  groupname varchar(64) NOT NULL default '',
  realm varchar(64) default '',
  nasipaddress varchar(15) NOT NULL default '',
  nasportid varchar(15) default NULL,
  nasporttype varchar(32) default NULL,
  acctstarttime datetime NULL default NULL,
  acctupdatetime datetime NULL default NULL,
  acctstoptime datetime NULL default NULL,
  acctinterval int(12) default NULL,
  acctsessiontime int(12) unsigned default NULL,
  acctauthentic varchar(32) default NULL,
  connectinfo_start varchar(50) default NULL,
  connectinfo_stop varchar(50) default NULL,
  acctinputoctets bigint(20) default NULL,
  acctoutputoctets bigint(20) default NULL,
  calledstationid varchar(50) NOT NULL default '',
  callingstationid varchar(50) NOT NULL default '',
  acctterminatecause varchar(32) NOT NULL default '',
  servicetype varchar(32) default NULL,
  framedprotocol varchar(32) default NULL,
  framedipaddress varchar(15) NOT NULL default '',
  PRIMARY KEY (radacctid),
  UNIQUE KEY acctuniqueid (acctuniqueid),
  KEY username (username),
  KEY framedipaddress (framedipaddress),
  KEY acctsessionid (acctsessionid),
  KEY acctsessiontime (acctsessiontime),
  KEY acctstarttime (acctstarttime),
  KEY acctinterval (acctinterval),
  KEY acctstoptime (acctstoptime),
  KEY nasipaddress (nasipaddress)
) ENGINE = INNODB;
alter table radacct add acctupdatetime datetime NULL default NULL after acctstarttime, add acctinterval int(12) default NULL after acctstoptime, add KEY acctinterval (acctinterval),drop KEY acctuniqueid, add UNIQUE KEY acctuniqueid (acctuniqueid);
exit;
#重启strongswan与radius
systemctl restart radiusd
systemctl restart strongswan

一切显示正常

 

6、在daloradius主页面,Server status ip、mask、MAC不显示。

查找web获取本机的server信息时的php页面,发现php文件定义的是ethxxx(当然如果你的centos7中网卡是ethxx,可以忽略下面网卡获取的修改),且mask 和mac 的显示,在该文件的定义中re模块也是centos6.X之前能用的,centos7之后就不能用了。错误显示图如下:

 

解决:修改监控状态页面的php文件,默认相对(网站)路径:

vim /var/www/html/daloradius/library/exten-server_info.php
将/eth[0-9][0-9]*
修改成    /enp[0-9][0-z][0-9][0-9][0-9][0-9][0-9][0-9]*
 
Ip 地址:203 行、204行
将    /inet addr:[0-9\.]*
修改成    /inet [0-9\.]*

然后将split(":", $match[0])
修改成    split(" ", $match[0])
 
 Mask 地址: 240 行、241行
将    /mask:[0-9\.]*
修改成    /netmask [0-9\.]*

然后将split(":", $match[0])
修改成    split(" ", $match[0])
 
 MAC 地址:221 行
将    hwaddr
修改成    ether

修改完成后,显示正常,如下图:

 

7、radiusd -X  无法启动提示Error binding to port for 0.0.0.0 port 1812错误

Failed binding to auth address * port 1812 bound to server default: Address already in use

/etc/raddb/sites-enabled/default[59]: Error binding to port for 0.0.0.0 port 1812

解决方法:

ps aux | grep radius   找到进程,

[root@Centos7 ~]# ps aux | grep radi
radiusd   3452  0.0  0.7 269376 14372 ?        Ssl  08:42   0:00 radiusd
root      3955  0.0  0.0 112676   984 pts/1    R+   09:00   0:00 grep --color=auto radi
kill -9 3452

8、daloradius提示Unknown column ‘acctupdatetime’ in ‘field list’错误,并且无法连接vpn、无法查看在线用户

查看日志显示如下信息

rlm_sql_mysql: MySQL error ‘Unknown column ‘acctupdatetime’ in ‘field list”

解决方法如下:

删除radacct表 并重新建立

mysql -u radius -p

输入密码

在sql中执行如下语句

use radius;
DROP TABLE radacct;
CREATE TABLE radacct (
  radacctid bigint(21) NOT NULL auto_increment,
  acctsessionid varchar(64) NOT NULL default '',
  acctuniqueid varchar(32) NOT NULL default '',
  username varchar(64) NOT NULL default '',
  groupname varchar(64) NOT NULL default '',
  realm varchar(64) default '',
  nasipaddress varchar(15) NOT NULL default '',
  nasportid varchar(15) default NULL,
  nasporttype varchar(32) default NULL,
  acctstarttime datetime NULL default NULL,
  acctupdatetime datetime NULL default NULL,
  acctstoptime datetime NULL default NULL,
  acctinterval int(12) default NULL,
  acctsessiontime int(12) unsigned default NULL,
  acctauthentic varchar(32) default NULL,
  connectinfo_start varchar(50) default NULL,
  connectinfo_stop varchar(50) default NULL,
  acctinputoctets bigint(20) default NULL,
  acctoutputoctets bigint(20) default NULL,
  calledstationid varchar(50) NOT NULL default '',
  callingstationid varchar(50) NOT NULL default '',
  acctterminatecause varchar(32) NOT NULL default '',
  servicetype varchar(32) default NULL,
  framedprotocol varchar(32) default NULL,
  framedipaddress varchar(15) NOT NULL default '',
  PRIMARY KEY (radacctid),
  UNIQUE KEY acctuniqueid (acctuniqueid),
  KEY username (username),
  KEY framedipaddress (framedipaddress),
  KEY acctsessionid (acctsessionid),
  KEY acctsessiontime (acctsessiontime),
  KEY acctstarttime (acctstarttime),
  KEY acctinterval (acctinterval),
  KEY acctstoptime (acctstoptime),
  KEY nasipaddress (nasipaddress)
) ENGINE = INNODB;
systemctl restart radiusd

systemctl restart strongswan
  • 2
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值