ubuntu-18.04 - Freeradius 服务不工作:进程:6181 ExecStartPre=/usr/sbin/freeradius $FREERADIUS_OPTIONS -Cxm -lstdout (code=exited, status=1/FAILURE)
问题描述
我从一位同事那里接手了一台radius服务器,他使用的是freeradius 2.2.8。
我已经在 linux Ubuntu 18.04 上安装了 freeradius 3.0.16,sudo apt-get install freeradius
但是当我尝试使用他的旧配置文件时,我的 freeradius 服务没有启动。
正如你在下面看到的,我有 2 个错误。
我不是这个主题的专家。
有没有人可以帮助我指导正确的方式?
提前谢谢了。
admin@ubuntu-de-01:/etc$ service freeradius status
● freeradius.service - FreeRADIUS multi-protocol policy server
Loaded: loaded (/lib/systemd/system/freeradius.service; disabled; vendor preset: enabled)
Active: activating (auto-restart) (Result: exit-code) since Thu 2019-11-07 10:13:24 CET; 3s ago
Docs: man:radiusd(8)
man:radiusd.conf(5)
http://wiki.freeradius.org/
http://networkradius.com/doc/
Process: 8651 ExecStartPre=/usr/sbin/freeradius $FREERADIUS_OPTIONS -Cxm -lstdout (code=exited, status=1/FAILURE)
admin@ubuntu-de-01:/etc/freeradius$ sudo /usr/sbin/freeradius -C -lstdout -xxx
/etc/freeradius/3.0/modules/otp
Thu Nov 7 10:15:30 2019 : Debug: including configuration file /etc/freeradius/3.0/modules/krb5
Thu Nov 7 10:15:30 2019 : Debug: including configuration file /etc/freeradius/3.0/modules/unix
Thu Nov 7 10:15:30 2019 : Debug: including configuration file /etc/freeradius/3.0/modules/sql_log
Thu Nov 7 10:15:30 2019 : Error: /etc/freeradius/3.0/modules/sql_log[79]: Syntax error: Expected comma after 'UPDATE radacct SET acctstoptime = '%S', acctsessiontime = unix_timestamp('%S') - unix_timestamp(acctstarttime), acctterminatecause = '%{Acct-Terminate-Cause}', acctstopdelay = %{%{Acct-Delay-Time}:-0} WHERE acctstoptime IS NULL AND nasipaddress = '%{NAS-IP-Address}' AND acctstarttime <= '%S'': "
Thu Nov 7 10:15:30 2019 : Error: Errors reading or parsing /etc/freeradius/3.0/radiusd.conf
sql_log from line 70 to 79:
Accounting-On = "UPDATE ${acct_table} \
SET \
acctstoptime = '%S', \
acctsessiontime = unix_timestamp('%S') - \
unix_timestamp(acctstarttime), \
acctterminatecause = '%{Acct-Terminate-Cause}', \
acctstopdelay = %{%{Acct-Delay-Time}:-0} \
WHERE acctstoptime IS NULL \
AND nasipaddress = '%{NAS-IP-Address}' \
AND acctstarttime <= '%S'""
解决方案
关闭 ;" 而不是 "" :
Accounting-On = "UPDATE ${acct_table} \
SET \
acctstoptime = '%S', \
acctsessiontime = unix_timestamp('%S') - \
unix_timestamp(acctstarttime), \
acctterminatecause = '%{Acct-Terminate-Cause}', \
acctstopdelay = %{%{Acct-Delay-Time}:-0} \
WHERE acctstoptime IS NULL \
AND nasipaddress = '%{NAS-IP-Address}' \
AND acctstarttime <= '%S';"