Linux如何接收和处理514号端口的syslog日志? (linux接收514 syslog)

随着互联网技术的不断发展,计算机系统也越来越重要。同时,这些系统的安全问题也更受到关注。为了跟进这个趋势,日志记录就成为了IT管理员管理所有系统中最重要的工具之一。

linux系统是一个非常好的选择,它有一个非常强大的日志记录系统,可以通过syslog守护进程分发日志。其中很重要的一个步骤是如何接收和处理514号端口的syslog日志。本文将会探讨Linux如何实现这一点的。

一、什么是syslog?

Syslog是Unix和类Unix系统的标准日志记录工具,用于日志记录和管理。它提供了一种标准化的方法来将操作系统和应用程序生成的日志数据传输到一个或多个位置进行集中存储和分析。在大多数情况下,syslog是通过UDP协议发送日志到一个日志服务器。

二、什么是514号端口?

514号端口是syslog使用的默认端口号。它是一个UDP端口,可用于接收从其他计算机上发送的syslog日志消息。对于syslog服务器来说,开放514号端口是一个很重要的步骤。因为syslog在接收日志之前需要一个开放的端口。如果端口没有开放,syslog将无法接收网络上发送的日志消息。

三、如何在Linux系统中开放514号端口?

要在Linux系统中开放514号端口,需要使用防火墙规则来允许UDP数据包通过该端口。可以使用iptables命令来实现这个功能。以下命令将通过514号端口接受所有UDP消息。

“`bash

iptables -A INPUT -p udp –dport 514 -j ACCEPT

“`

可以使用以下命令来查看iptables规则是否生效。

“`bash

iptables -L -n | grep 514

“`

上面的命令将显示有关端口514的信息。如果显示ACCEPT,则规则已成功添加。否则,可能需要修改规则或查看较早的日志来确定错误发生的原因。

四、如何配置rsyslog接收并处理日志?

rsyslog是Linux系统中最常用的日志服务器。下面是一个简单的配置文件,它将允许rsyslog守护进程监听514号端口并将日志消息存储到/var/log/messages文件中。

“`bash

# rsyslog configuration file

# Configuration file for rsyslog. See rsyslog.conf(5) for more detls.

# Global options

global(

legacy_kernel_logs = off # Disable kernel logs (that may already be duplicated elsewhere)

)

# Enable UDP reception on port 514

module(load=”imudp”)

input(type=”imudp” port=”514″)

# Permit messages that match certn rules*

if $programname == ‘audispd’ then stop # Ignore audit messages

:fromhost-ip, !isequal, “127.0.0.1” @@127.0.0.1:1514 ;All messages except some IPs send to syslog server

# Filter messages that match certn rules

if $syslogtag contns ‘sshd’ then /var/log/ssh.log # Log SSH Login attempts

# Default syslog file

*.* /var/log/messages

“`

在以上配置文件中,首先通过global选项关闭了在syslog中重复记录内核日志。然后通过module选项加载了imudp插件来开放514号端口并允许UDP消息,接下来使用input选项指定了监听的端口号514。

以下是rsyslog.conf文件中的其他参数的解释:

– $programname:该指令会提取ngx_lua程序实例的名称,并使用它来管理日志处理的捕获。

– stop:停止对该条日志消息的处理。它对于过滤到我们不需要的日志非常有帮助。

– $fromhost-ip:输入显示客户端的IP地址。

– !isequal:否定操作符号用于排除特定IP。

– @@127.0.0.1:这告诉rsyslog守护进程将消息发送到本地主机,端口号是1514。

– *.*:通配符用于匹配所有的日志级别和设备端口,它将日志消息发送到一个默认文件/var/log/messages中。

五、

通过配置rsyslog.conf文件,Linux系统可以轻松地接收和处理514号端口的syslog日志。rsyslog具有强大的功能,可以帮助系统管理员快速定位并修复任何可能的问题,有助于保护计算机系统的安全性。因此,在管理日志文件时,rsyslog是Linux系统中必不可少的一部分。

相关问题拓展阅读:

  • linux下的日志同步服务怎么做?高分求助

linux下的日志同步服务怎么做?高分求助

写个脚本,弄成定时任务,装唤卜颤个rsync ,过程去google一下。你描述太简单了,基本没有和败有价值信息。弊橡

我不知道你的日志同步是什么意思,我的理解是把所有服务器的日志统一发送到一台指定的日志服务器。。如果理解不对,麻樱虚烦补充。

我把我的摘抄的文档发上来给你看看,这个不难,我就是按这个文档配置的。。

一、 配置syslog守护进程

syslog是Linux系统默认的日志守护进程。默认的syslog配置文件是/etc/syslog.conf文件。syslog守护进程是可配置 的,它允许人们为每一种类型的系统信息精确地指定一个存放地点。现在,我们先看看syslog.conf文件的配置行格式(这个文件里的每一个配置行都是 同样的格式),然后再看一个完整的syslog配置文件。syslog配置行的格式如下所示:

mail.*/var/log/mail

这一行由两个部分组成。之一个部分是一个或多个“选择条件”;上例中的选择条件是“mail”。选择条件后面跟一些空格字符,然后是一个“操作动作”;上例中的操作动作是:/var/log/mail

1选择条件

选择条件本身分为两个字段,之间用一个小数点(.)分隔。前一字段是逗雀一项服务,后一字段是一个优先级。选择条件其实是对消息类型的一种分类,这种分类便于 人们把不同类型的消息发送到不同的地方。在同一个syslog配置行上允许出现一个以上的选择条件,但必须用分号(;)把它们分隔开。上面给出的例子里只 有一个选择条件“mail”。大家可以在我们后面给出的那个完整的syslog配置文件示例里看到同时有多个选择条件的配置行。

2 优先级

优先级是选择条件的第二个字段,它代表消息的紧急程度。对一个应用程序来说,它发出的哪些消息属于哪一种优先级是由当初编写它的程序员决定的,应用程序的 使用者只能接受这样的安排——除非打算重新编译系统应脊指燃用程序。表2按严重程度由低到高的顺序列出了所有可能的优先级。

不同的服务类型有不同的优先级,数值较大的优先级涵盖数值较小的优先级。如果某个选择条件只给出了一个优先级而没有使用任何优先级限定符,对应于这个优先 级的消息以及所有更紧急的消息类型都将包括在内。比如说,如果某个选择条件里的优先级是“warning”,它实际上将把“warning”、 “err”、“crit”、“alert”和“emerg”都包括在内。

3优先级限定符

syslog允许人们使用三种限定符对优先级进行修饰:星号(*)、等号(=)和叹号(!)。熟悉规则表达式的读者应该对这三种限定符不会感到陌生。星号 (*)的含义是“把本项服务生成的所有日志消息都发送到操作动作指定的地点”。就像它在规则表达式里的作用一样,星号代表“任何东西”。在前面给出的例子 里,“mail.*”将把所有优先级的消息都发送到操作动作指定的/var/log/mail文件里。使用“*”限定符与使用“debug”优先级的效果 完全一样,后者也将把所有类型的消息发送到指定地点。

等号(=)的含义是“只把本项服务生成的本优先级的日志消息都发送到操作动作指定的地点”。比如说,可以用“=”限定符只发送调试消息而不发送其他更紧急的消息(这将为应用程序减轻很多负担)。当你只需要发送特定优先级别的消息时,就要使用等号限定符。

就像它在编程时的用法一样,等号意味着等于且仅等于。叹号(!)的含义是“把本项服务生成的所有日志消息都发送到操作动作指定的地点,但本优先级的消息不 包括在内”。比如说,这条syslog配置行将把除info优先级以外的所有消息发送到/var/log/mail文件里:

mail.*;mail.!info/var/log/mail

在这个例子里,“mail.*”将发送所有的消息,但“mail.!info”却把info优先级的消息排除在外。就像它在编程时的用法一样,叹号意味着 “非”。

4 操作动作

日志信息可以分别记录到多个文件里,还可以发送到命名管道、其他程序甚至另一台机器。syslog配置文件并不复杂,既容易阅读又容易操作使用。这个文件里的注释都非常有用,应该好好读读它们.

二、 建立一个中央日志服务器

1建立中央日志服务器前的准备工作

配置良好的网络服 务(DNS和NTP)有助于提高日志记录工作的精确性。在默认情况下,当有其他机器向自己发送日志消息时,中央日志服务器将尝试解析该机器的FQDN (fullyqualifieddomainname,完整域名)。(你可以在配置中央服务器时用“-x”选项禁止它这样做。)如果syslog守护进程 无法解析出那个地址,它将继续尝试,这种毫无必要的额外负担将大幅降低日志记录工作的效率。类似地,如果你的各个系统在时间上不同步,中央日志服务器给某 个事件打上的时间戳就可能会与发送该事件的那台机器打上的时间戳不一致,这种差异会在你对事件进行排序分析时带来很大的困扰;对网络时间进行同步有助于保 证日志消息的时间准确性。如果想消除这种时间不同步带来的麻烦,先编辑/etc/ntp.conf文件,使其指向一个中央时间源,再安排ntpd守护进程 随系统开机启动就可以了。

2配置一个中央日志服务器

只须稍加配置,就可以用syslog实现一个中央日志服务器。任何一台运行syslog守护进程的服务器都可以被配置成接受来自另一台机器的消息,但这个 选项在默认情况下是禁用的。在后面的讨论里,如无特别说明,有关步骤将适用于包括SUSE和RedHat在内的大多数Linux发行版本。我们先来看看如 何激活一个syslog服务器接受外来的日志消息:

1. 编辑/etc/sysconfig/syslog文件。

在“SYSLOGD_OPTIONS”行上加“-r”选项以允许接受外来日志消息。如果因为关于其他机器的DNS记录项不够齐全或其他原因不想让中央日志 服务器解析其他机器的FQDN,还可以加上“-x”选项。此外,你或许还想把默认的时间戳标记消息(–MARK–)出现频率改成比较有实际意义的数 值,比如240,表示每隔240分钟(每天6次)在日志文件里增加一行时间戳消息。日志文件里的“–MARK–”消息可以让你知道中央日志服务器上的 syslog守护进程没有停工偷懒。按照上面这些解释写出来的配置行应该是如下所示的样子:

SYSLOGD_OPTIONS=”-r-x-m240″

2.重新启动syslog守护进程。

修改只有在syslog守护进程重新启动后才会生效。如果你只想重新启动syslog守护进程而不是整个系统,在 RedHat机器上,执行以下两条命令之一:

/etc/rc.d/init.d/syslogstop;/etc/rc.d/init.d/syslogstart

/etc/rc.d/init.d/syslogrestart

3.如果这台机器上运行着iptables防火墙或TCPWrappers,请确保它们允许514号端口上的连接通过。syslog守护进程要用到514 号端口。

4为中央日志服务器配置各客户机器

让客户机把日志消息发往一个中央日志服务器并不困难。编辑客户机上的/etc/syslog.conf文件,在有关配置行的操作动作部分用一个“@”字符指向中央日志服务器,如下所示:

另一种办法是在DNS里定义一个名为“loghost”的机器,然后对客户机的syslog配置文件做如下修改(这个办法的好处是:当你把中央日志服务器换成另一台机器时,不用再修改每一个客户机上的syslog配置文件):

authpriv.*@loghost

接下来,重新启动客户机上的syslog守护进程让修改生效。让客户机在往中央日志服务器发送日志消息的同时继续在本地进行日志工作仍有必要,起码在调试客户机的时候不必到中央日志服务器查日志,在中央日志服务器出问题的时候还可以帮助调试。

一、 配置syslog守护进程

syslog是Linux系统默认的日志守护进程。默认的syslog配置文件是/etc/syslog.conf文件。syslog守护进程是可配置 的,它允许人们为每一种类型的系统信息精确地指定一个存放地点。现在,我们先看看syslog.conf文件的配置行格式(这个文件里的每一个配置行都是 同样的格式),然后再看一个完整的syslog配置文件。syslog配置行的格式如下所示:

mail.*/var/log/mail

这一行由两个部分组成。之一个部分是一个或多个“选择条件”;上例中的选择条件是“mail”。选择条件后面跟一些空格字符,然后是一个“操作动作”;上例中的操作动作是:/var/log/mail

1选择条件

选择条件本身分为两个字段,之间用一个小数点(.)分隔。前一字段是一项服务,后一字段是一个优先级。选择条件其实是对消息类型的一种分类,这种分类便于 人们把不同类型的消息发送到不同的地方。在同一个syslog配置行上允许出现一个以上的选择条件,但必须用分号(;)把它们分隔开。上面给出的例子里只 有一个选择条件“mail”。大家可以在我们后面给出的那个完整的syslog配置文件示例里看到同时有多个选择条件的配置行。

2 优先级

优先级是选择条件的第二个字段,它代表消息的紧急程度。对一个应用程序来说,它发出的哪些消息属于哪一种优先级是由当态陵初编写它的程序员决定的,应用程序的 使用者只能接受这样的安排——除非打算重新编译系统应用程序。表2按严重程度由低到高的顺序列出了所有可能的优先级。

不同的服务类型有不同的优先级,数值较大的优先级涵盖数值较小的优先级。如果某个选择条件只给出了一个优先级而没有使用任何优先级限定符,对应于这个卖察优先 级的消息以及所有更紧急的消息类型都将包括在内。比如说,如果某个选择条件里的优先级是“warning”,它实际帆配戚上将把“warning”、 “err”、“crit”、“alert”和“emerg”都包

关于linux接收514 syslog的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。

版权声明:本文采用知识共享 署名4.0国际许可协议 [BY-NC-SA] 进行授权
文章名称:《Linux如何接收和处理514号端口的syslog日志? (linux接收514 syslog)》
文章链接:https://zhuji.vsping.com/53033.html
本站资源仅供个人学习交流,请于下载后24小时内删除,不允许用于商业用途,否则法律问题自行承担。