ubuntu18.04部署syslog服务器

1、前提环境

  • 服务端:Ubuntu18.04
  • 客户端:linux系统开发板
  • 保证服务端、客户端在在同一局域网内

2、日志等级

  • emerg,panic(紧急):0级 – 这是最低的日志级别,系统无法使用。
  • 警报(警报):1级 – 必须立即采取行动。
  • 错误(错误):3级 – 危急情况。
  • 警告(警告):等级4 – 警告条件。
  • 通知(通知):第5级 – 正常但重要的条件。
  • info(信息):6级 – 信息性消息。
  • debug(Debugging):Level 7 – 这是最高级别 – 调试级别的消息。

3、配置

sudo apt-get install rsyslog 
sudo service rsyslog status 
sudo vim /etc/rsyslog.conf 
 module(load="imudp") input(type="imudp" port="514")  module(load="imtcp") input(type="imtcp" port="514") 

如果你想限制访问特定子网,IP或域,请添加如下:

$AllowedSender TCP, 127.0.0.1, 192.168.10.0/24, *.example.com 

可以在输入input(type=“imtcp” port=“514”)行后添加上面的行,请记住用正确的值替换给定的值。

让我们创建一个模板,指示rsyslog服务器如何存储传入的syslog消息,在GLOBAL DIRECTIVES部分之前添加模板

$template RemoteLogs,"/var/log/remote/%HOSTNAME%/%PROGRAMNAME%.log" *.* ?RemoteLogs & stop 

收到的日志将使用上面的模板进行解析并存储在目录/var/log/remote中,文件命名遵循约定:%HOSTNAME% and %PROGRAMNAME%变量,即:客户端主机名和生成日志消息的客户端工具。
& stop指示rsyslog守护程序仅将日志消息存储到指定的文件(也有人使用& ~)。
可以使用的其它变量包括:
%syslogseverity%, %syslogfacility%, %timegenerated%, %HOSTNAME%, %syslogtag%, %msg%, %FROMHOST-IP%, %PRI%, %MSGID%, %APP-NAME%, %TIMESTAMP%, % y e a r year%, % yearmonth%, %$day%

         module(load="imuxsock")    module(load="imudp") input(type="imudp" port="514")     module(load="imklog" permitnonkernelfacility="on") $template RemoteLogs,"/var/log/remote/%HOSTNAME%/%PROGRAMNAME%.log" *.* ?RemoteLogs & stop        $ActionFileDefaultTemplate RSYSLOG_TraditionalFileFormat  $RepeatedMsgReduction on    $FileOwner syslog $FileGroup adm $FileCreateMode 0640 $DirCreateMode 0755 $Umask 0022 $PrivDropToUser syslog $PrivDropToGroup syslog    $WorkDirectory /var/spool/rsyslog    $IncludeConfig /etc/rsyslog.d/*.conf 
sudo systemtcl restart rsyslog 
ss -tunelp | grep 514 
nc -vuz 192.168.3.99 514 

如果你的ufw防火墙服务正在运行,请允许rsyslog防火墙端口:

sudo ufw allow 514/tcp sudo ufw allow 514/udp 

4、将Rsyslog配置为客户端(我没使用此配置,用的是脚本)

sudo vim /etc/rsyslog.conf 
$PreserveFQDN on 
*.* @ip-address-of-rsysog-server:514 

还可以使用FQDN而不是服务器IP地址:

*.* @fqdn-of-rsysog-server:514 

以上行将允许通过UDP发送日志,因为tcp使用@@而不是单个@:

*.* @@ip-address-of-rsysog-server:514 

或者:

*.* @@fqdn-of-rsysog-server:514 
$ActionQueueFileName queue $ActionQueueMaxDiskSpace 1g $ActionQueueSaveOnShutdown on $ActionQueueType LinkedList $ActionResumeRetryCount -1 
sudo service rsyslog restart 

原文链接:https://blog.csdn.net/SweetHeartHuaZai/article/details/128330473

© 版权声明
THE END
喜欢就支持一下吧
点赞14 分享