网络安全系列之十五 Linux日志管理1

简介:

Linux服务器一般都是被放置在机房中自动运行,管理员要了解服务器或是应用程序的运行状态,大都需要通过日志。日志文件用于记录Linux系统中各种运行消息,不同的日志文件记载了不同类型的信息,例如Linux内核消息、用户登录记录、程序错误等。日志文件对于诊断和解决系统中的问题很有帮助,因为在Linux系统中运行的程序通常会把系统消息和错误消息写入相应的日志文件,这样系统一旦出现问题就会有据可查。此外,当主机遭受攻击时,日志文件还可以帮助寻找攻击者留下的痕迹。

 

1. 主要日志文件

Linux系统本身和大部分服务程序的日志文件默认情况下都放置在目录“/var/log”中。有些程序会共用一个日志文件,有些程序则会使用单个日志文件,还有一些比较大型的程序由于日志文件不止一个,所以会在“/var/log”目录中建立相应的子目录来存放日志文件。有相当一部分日志文件只有root用户才有权限读取,这保证了相关日志信息的安全性。

例:查看“/var/log”目录中的各种日志文件及子目录。

wKioL1RQknSReRFfAADquLbhkSk216.jpg 

在这些日志文件中,比较重要或是经常用到的有:

  • /var/log/messages:记录Linux内核消息及各种应用程序的公共日志信息,包括启动、I/O错误、网络错误、程序故障等。对于未使用独立日志文件的应用程序或服务,一般都可以从该日志文件中获得相关的事件记录信息。

  • /var/log/cron:记录crond计划任务产生的事件信息。

  • /var/log/dmesg:记录Linux系统在引导过程中的各种事件信息。

  • /var/log/maillog:记录进入或发出系统的电子邮件活动。

  • /var/log/lastlog:最近几次成功登录事件和最后一次不成功登录事件。

  • /var/log/rpmpkgs:记录系统中安装的各rpm包列表信息。

  • /var/log/secure:记录所有与安全相关以及用户登录认证过程中的事件信息。

  • /var/log/wtmp:记录每个用户登录、注销及系统启动和停机事件。

  • /var/run/utmp:记录当前登录的每个用户的详细信息。

2. 查看日志文件内容

大多数的日志文件都可以使用tail、more、less、cat等文本处理工具查看日志内容,其中在大多数情况下都是使用tail命令,这样可以方便地查看到最近的日志信息。而且如果在tail命令中加上“-f”选项,还可以实时查看到日志文件中的最新信息。

通常情况下,内核及大多数系统消息都被记录到公共日志文件“/var/log/messages”中,而其它一些程序消息被记录到不同的文件中。日志消息还能够记录到特定的存储设备中,或者直接向用户发送。

例:实时监测/var/log/messages中的日志信息。

[root@localhost ~]# tail -f /var/log/messages

Oct 21 04:48:35 localhost avahi-daemon[3152]: Joining mDNS multicast group on interface eth0.IPv4 with address 192.168.80.130.

Oct 21 04:48:35 localhost avahi-daemon[3152]: Registering new address record for 192.168.80.130 on eth0.

Oct 21 04:48:35 localhost NET[4094]: /sbin/dhclient-script : updated /etc/resolv.conf

Oct 21 04:48:35 localhost dhclient: bound to 192.168.80.130 -- renewal in 760 seconds.

Oct 21 05:01:15 localhost dhclient: DHCPREQUEST on eth0 to 192.168.80.254 port 67

Oct 21 05:01:15 localhost dhclient: DHCPACK from 192.168.80.254

Oct 21 05:01:15 localhost dhclient: bound to 192.168.80.130 -- renewal in 723 seconds.

Oct 21 05:13:18 localhost dhclient: DHCPREQUEST on eth0 to 192.168.80.254 port 67

Oct 21 05:13:18 localhost dhclient: DHCPACK from 192.168.80.254

Oct 21 05:13:18 localhost dhclient: bound to 192.168.80.130 -- renewal in 749 seconds.

Oct 21 05:22:58 localhost kernel: Installing knfsd (copyright (C) 1996 okir@monad.swb.de).

Oct 21 05:22:58 localhost kernel: NFSD: Using /var/lib/nfs/v4recovery as the NFSv4 state recovery directory

Oct 21 05:22:58 localhost kernel: NFSD: starting 90-second grace period

大部分日志文件中所使用的日志记录格式都是相同的。下面以公共日志文件“/var/log/messages”为例来说明日志记录的基本格式。

日志文件中的每一行表示一条消息,每个消息均由四个字段的固定格式组成。

  • 时间标签:消息发出的日期和时间。

  • 主机名:生成消息的计算机的名称。

  • 子系统名称:发出消息的应用程序的名称。

  • 消息:消息的具体内容。

例如上面所显示的最后一条消息:

Oct 21 05:22:58 localhost kernel: NFSD: starting 90-second grace period

这条消息的含义为:

10月21日05:22:58在localhost这台主机上,由内核kernel中的nfsd服务所产生的信息,信息的内容为“starting 90-second grace period”。



本文转自 yttitan 51CTO博客,原文链接:http://blog.51cto.com/yttitan/1569225

相关实践学习
日志服务之使用Nginx模式采集日志
本文介绍如何通过日志服务控制台创建Nginx模式的Logtail配置快速采集Nginx日志并进行多维度分析。
相关文章
|
15天前
|
安全 Linux 虚拟化
网络名称空间在Linux虚拟化技术中的位置
网络名称空间(Network Namespaces)是Linux内核特性之一,提供了隔离网络环境的能力,使得每个网络名称空间都拥有独立的网络设备、IP地址、路由表、端口号范围以及iptables规则等。这一特性在Linux虚拟化技术中占据了核心位置🌟,它不仅为构建轻量级虚拟化解决方案(如容器📦)提供了基础支持,也在传统的虚拟机技术中发挥作用,实现资源隔离和网络虚拟化。
网络名称空间在Linux虚拟化技术中的位置
|
15天前
|
网络协议 安全 Linux
Linux网络名称空间之独立网络资源管理
Linux网络名称空间是一种强大的虚拟化技术🛠️,它允许用户创建隔离的网络环境🌐,每个环境拥有独立的网络资源和配置。这项技术对于云计算☁️、容器化应用📦和网络安全🔒等领域至关重要。本文将详细介绍在Linux网络名称空间中可以拥有的独立网络资源,并指出应用开发人员在使用时应注意的重点。
|
15天前
|
安全 网络协议 Linux
Linux网络名称空间概述
Linux网络名称空间是操作系统级别的一种虚拟化技术🔄,它允许创建隔离的网络环境🌐,使得每个环境拥有自己独立的网络资源,如IP地址📍、路由表🗺️、防火墙规则🔥等。这种技术是Linux内核功能的一部分,为不同的用户空间进程提供了一种创建和使用独立网络协议栈的方式。本文旨在全方面、多维度解释Linux网络名称空间的概念、必要性和作用。
Linux网络名称空间概述
|
13天前
|
存储 算法 Linux
【实战项目】网络编程:在Linux环境下基于opencv和socket的人脸识别系统--C++实现
【实战项目】网络编程:在Linux环境下基于opencv和socket的人脸识别系统--C++实现
37 6
|
4天前
|
机器学习/深度学习 缓存 监控
linux查看CPU、内存、网络、磁盘IO命令
`Linux`系统中,使用`top`命令查看CPU状态,要查看CPU详细信息,可利用`cat /proc/cpuinfo`相关命令。`free`命令用于查看内存使用情况。网络相关命令包括`ifconfig`(查看网卡状态)、`ifdown/ifup`(禁用/启用网卡)、`netstat`(列出网络连接,如`-tuln`组合)以及`nslookup`、`ping`、`telnet`、`traceroute`等。磁盘IO方面,`iostat`(如`-k -p ALL`)显示磁盘IO统计,`iotop`(如`-o -d 1`)则用于查看磁盘IO瓶颈。
|
16天前
|
网络协议 Linux
在Linux中,管理和配置网络接口
在Linux中管理网络接口涉及多个命令,如`ifconfig`(在新版本中被`ip`取代)、`ip`(用于网络设备配置)、`nmcli`(NetworkManager的CLI工具)、`nmtui`(文本界面配置)、`route/ip route`(处理路由表)、`netstat/ss`(显示网络状态)和`hostnamectl/systemctl`(主机名和服务管理)。这些命令帮助用户启动接口、设置IP地址、查看连接和路由信息。不同发行版可能有差异,建议参考相应文档。
19 4
|
1天前
|
网络协议 Linux Shell
【linux网络(一)】初识网络, 理解四层网络模型
【linux网络(一)】初识网络, 理解四层网络模型
|
1天前
|
安全 Ubuntu Linux
Linux 网络操作命令Telnet
Linux 网络操作命令Telnet
9 0
Linux 网络操作命令Telnet
|
2天前
|
Ubuntu Linux
Linux(22) Linux设置网络优先级顺序
Linux(22) Linux设置网络优先级顺序
3 0
|
2天前
|
Ubuntu 网络协议 Linux
Linux(20) Ubuntu 20.04 网络接口自动切换路由配置
Linux(20) Ubuntu 20.04 网络接口自动切换路由配置
25 0