Syslog协议
应用场景
- 网络管理工具
- 安全管理系统
- 日志审计系统
存储
- 存储在本地文件
- 通过网络发送到接收syslog的服务器(接收的Syslog服务器可以对多个设备的Syslog消息统一存储)
内容
程序模块(Facility)、严重性(Severity or Level)、时间、主机名/IP、进程名、进程ID、正文
<30>Oct 9 22:33:20 hlfedora auditd[1787]: The audit daemon is exiting.
- PRI
<30>
- HEADER
Oct 9 22:33:20 hlfedora
- MSG
auditd[1787]: The audit daemon is exiting.
PRI
= 程序模块(Facility)* 8 + 严重性(Severity or Level)
高位右移3位得到Facility
Severity的定义如下:
Numerical Severity
Code
0 Emergency: system is unusable
1 Alert: action must be taken immediately
2 Critical: critical conditions
3 Error: error conditions
4 Warning: warning conditions
5 Notice: normal but significant condition
6 Informational: informational messages
7 Debug: debug-level messages
数字越小,越紧急。
HEADER
= 时间 + 主机名/IP
不标准的syslog包含年份,解析会报错:
<165>Aug 24 05:34:00 CST 1987 mymachine myproc[10]: %% It'stime to make the do-nuts. %% Ingredients: Mix=OK, Jelly=OK #Devices: Mixer=OK, Jelly_Injector=OK, Frier=OK # Transport:Conveyer1=OK, Conveyer2=OK # %%
这样会导致解析程序将“CST”当作主机名,而“1987”开始的部分作为MSG部分。
MSG
= 进程名称和进程PID + 正文
“auditd[1787]”是TAG部分,PID可以没有,这个时候中括号也是没有的。
TAG(进程名称和进程PID)后面用一个冒号隔开Content部分,这部分的内容是应用程序自定义的。
协议改进版RFC3159
RFC3164:一般syslog使用UDP协议,UDP是不可靠传输协议,并且syslog不要求接收方有反馈。http://www.ietf.org/rfc/rfc3164.txt
RFC3159:使用TCP协议可靠传输syslog消息。http://www.ietf.org/rfc/rfc3195.txt
一般情况下使用UDP,除非特殊要求使用TCP.
本文介绍Syslog协议的应用场景,包括网络管理和安全系统等,并详细解释了Syslog消息的构成元素如程序模块、严重性级别、时间戳等。还讨论了Syslog的不同传输方式及其对应的协议标准。
3545

被折叠的 条评论
为什么被折叠?



