Logging
Freeradius 未將日誌重定向到 syslog-ng
下午好。我在 UBuntu 16.04 中的 Freeradius 2 伺服器有問題是從 vmware 5.5 Hypervisor 中的模板安裝的,因為 HHD 空間不足,日誌開始崩潰系統,freeradius 伺服器承受的負載很大。(5000)自動機連接每秒通過 GPRS。
我用 Ubuntu 16.04 和 syslog-ng 安裝了一個日誌收集器伺服器,還在客戶端中安裝了 syslog-ng,並在日誌部分取消註釋
/etc/freeradius/radiusd.conf
log{ file syslog syslog_facility daemon }
問題如下:
syslog-ng 客戶端通過 UDP 埠 514 到 syslog-ng 伺服器的連接已建立,但 freeradius 和客戶端 syslog-ng 之間的 UNIX 流連接(不清楚)。問題是我如何檢查 freeradius 是否有效地將日誌發送到 syslog-ng 客戶端。由於 syslog-ng 源對源(文件、流等)有不同的驅動程序,因此使用的機制是什麼。
syslog伺服器和客戶端的配置如下:
伺服器
@version: 3.5 @include "scl.conf" @include "`scl-root`/system/tty10.conf" options { chain_hostnames(off); flush_lines(0); use_dns(no); use_fqdn(no); owner("root"); group("adm"); perm(0640); stats_freq(0); bad_hostname("^gconfd$"); }; ################################################## options { create_dirs(yes); owner(radiusmaster); group(radiusmaster); perm(0640); dir_owner(radiusmaster); dir_group(radiusmaster); dir_perm(0750); }; ################################################## source s_udp { udp(ip("172.19.144.27") port(514)); }; ################################################## # Filters # ################################################## #Freeradius1 filter f_radius-1 { host("172.19.144.31"); }; destination d_radius-1 { file("/media/disco_logs/freeradius/radius-1/$YEAR/$MONTH/$YEAR-$MONTH-$DAY.radius-1.log"); }; log { source(s_udp); filter @include "/etc/sys#log-ng/conf.d/*.conf"(f_radius-1); destination(d_radius-1); }; @include "/etc/sys#log-ng/conf.d/*.conf"
客戶
@version: 3.5 @include "scl.conf" @include "`scl-root`/system/tty10.conf" options { chain_hostnames(off); flush_lines(0); use_dns(no); use_fqdn(no); owner("root"); group("adm"); perm(0640); stats_freq(0); bad_hostname("^gconfd$"); }; source s_log_radius_1 { file("/var/log/freeradius/radius.log" follow-freq(1)); }; destination d_syslog_udp { syslog("172.19.144.27" transport("udp") port(514)); }; log { source(s_log_radius_1); destination(d_syslog_udp); }; @include "/etc/syslog-ng/conf.d/*.conf"
我將不勝感激任何幫助,並提前致謝。
- 首先在客戶端檢查 freeradius 日誌是否出現在 /var/log/freeradius/radius.log 文件中。(儘管您似乎可以將 freeradius 配置為直接登錄 syslog 而不是文件,請參閱https://wiki.freeradius.org/config/Logging>和<https://wiki.freeradius.org/guide/Syslog-HOWTO)。
此外,您的 syslog-ng 驅動程序不匹配:
- 在客戶端上,您有一個 syslog() 目標(RFC5424 消息格式),而
- 在您使用 udp() 的伺服器上(RFC3164 消息格式)
這些不兼容(請參閱在此處輸入連結描述)。更改您的配置以使用匹配的驅動程序(我建議使用 syslog(),如果您的環境允許這樣做,請使用 tcp 傳輸)。