linux 日志主服务器 syslog

简介:

            syslog日志服务

   syslog日志的主要用途是系统审计,监测追踪和分析统计,syslog是一个综合的日志记录系统,它主要的功能是方便日志管理和分类存放日志
 
日志syslog的功能:
 syslog功能             描述
 
auth                  安全性/验证消息(负面)
authpriv              安全性/验证消息
cron                  cron和at
daemon                其他系统守护进程(ssh,inetd,pppd等)
kern                  内核消息
lpr                   行打印子系统
mail                  邮件子系统(sendmail,postfix,qmail等)
news                  报告与网络新闻服务有关的消息     
syslog                内部syslog消息
user                  一般用户级别
uucp                  uucp子系统
local0-local7         自定义级别
 
日志syslog的级别:
syslog级别            描述
 
emerg               系统已不可用
alert               必须马上采取行动
crit                危机
err                 错误
warning             警告
notice              普通但重要的情形
info                通知消息
debug               调试信息
none                用于禁止任何消息
*                   所有级别除了none
 
动作:动作字段用于描述对应功能的动作
file              指定一个绝对路径的日志文件名记录日志信息
username          发送信息到指定用户,*表示所有用户
device            将信息发送到指定的设备中,如/dev/console
@hostname         将信息发送到可解析的远程主机hostname,且该主机必须正在运行syslog并可以识别syslog                   的配置文件
 
1.查看当前系统安装相关的日志的包,默认是已经安装了的
rpm -qa | grep syslog
linux redhat5.x系统syslog的安装包都是syslog,redhat6.x版本的都是rsyslog这都是表示日志文件
 
2.查看配置文件
find / -name rsyslog.conf (查看一下日志的配置文件在哪里)
5.x版本的日志的配置文件是  /etc/syslog.conf
6.x版本的日志的配置文件是  /etc/rsyslog.conf
 
cat  /etc/rsyslog.conf  (日志的配置文件)
*.info;mail.none;authpriv.none;cron.none                /var/log/messages
authpriv.*                                              /var/log/secure
mail.*                                                  -/var/log/maillog
cron.*                                                  /var/log/cron
*.emerg                                                 *
uucp,news.crit                                          /var/log/spooler
local7.*                                                /var/log/boot.log
####################################################
配置文件的格式
facility.priority    action
设备. 级别             动作(动作是可以指定路径的)
####################################################
 
3.日志主要存在路径
日志的配置文件和日志的存放路径是两个不同的概念
日志文件通常存放在/var/log目录,在该目录下出了包括syslogd记录的日志之外,同时还包含所有应用程序的
日志。(值得注意的是用yum或者rpm包安装的服务日志都会存在这个目录下面而且会生成相应的目录源码包安装的服务则不会在这个目录下面)
 
ls /var/log  (说几个主要的日志)
boot.log  记录系统启动的日志
messages  有rsyslog记录的info或更高级别的消息日志
wtmp       一个用户每次登陆进入和退出时间的永久记录
cups       存储cups打印系统的日志目录    
secure     用rsyslog记录的认证日志
dmesg      记录系统启动时的消息日志
maillog    记录邮件系统的日志
yum.log    记录yum安装包卸载更新的日志 
 
日志文件中的每一行表示一个消息,而且都有四个域的固定格式组成
时间标签   主机名  方括号里的是进程的PID   message
 
 
查看文件的方法
cat grep vim 这些就不说了
如果打开一个文件发现是乱码,表示这个文件时二进制文件 查看二进制文件的方法 strings  文件名
lastlog 命令来检查某个特定用户上次登录的时间
last 命令往回搜索 /var/log/wtmp来显示自从文件第一次创建以来登录过的用户
lastb 命令搜索 /var/log/wtmp来显示登录未成功的信息(如果来着同一个ip用不同的用户反复的登录则可能是入侵)
 
4.重启日志服务器
service rsyslog restart
 
5.防止日志文件本修改,加入某些属性。
1)chattr 命令可以使某个文件属性改变
chattr +a /var/log/messages 文件messages的数据只允许增加,不允许减少。
chattr -a /var/log/messages 去掉数据只允许增加而不允许减少的属性。
2)lsattr 命令查看chattr命令的效果
lsattr /var/log/messages
------------a-----------------messages 
 
 
日志滚动
所有的日志文件都会随着时间的推移和访问次数的增加而迅速增长,因此必须对日志文件进行定期清理以免造成
磁盘空间的不必要的浪费,同时也加快了管理员查看日志所用的时间。
1.logrotate
命令格式
logrotate [选项]  <configfile>
-d:详细显示指令执行过程,便于排错或了解程序执行的情况
-f:强行启动记录文件维护操作,即使logrotate 直接认为无需要。
-m command:指定发送邮件的程序,默认是/usr/bin/mail
-s statefile:使用指定的状态文件。
-v:在执行日志滚动时显示详细信息。
 
2.日志滚动的默认的配置文件是/etc/logrotate.conf
/etc/logrotate.d目录下的文件,这些文件被include到主配置文件中
 
sed -e '/^#/d' -e '/^$/d' /etc/logrotate.conf (查看配置文件)
######
weekly              //每周清理一次日志文件
rotate 4           //保存过去四周的日志文件
create             //清楚旧日志的同时,创建新的空日志文件
dateext            //使用日期为后缀的旋转文件
include /etc/logrotate.d    //包含/etc/logrotate.d目录下的所有配置文件
/var/log/wtmp               ///var/log/wtmp这个日志文件按照下面的设定轮转
Monthly                    //每月轮转一次
minsize 1M                // 文件大小最小1M
create 0664 root utmp     // wtmp这个日志文件,权限644,所有者root,所属组utmp 
rotate 1                  //只备份一个月的数据就轮换
}
/var/log/btmp {
    missingok
    monthly
    create 0600 root utmp
    rotate 1
}
#########
3./etc/logrotate.d 里面的文件是自定义轮转方式。默认是/etc/logrotate.conf,是一个全局配置文件,而/etc/logrotate.d 下面的文件是局部的。只对自己生效。
自定义syslog的轮转方式
/var/log/cron
/var/log/maillog
/var/log/messages
/var/log/secure
/var/log/spooler
{
    sharedscripts         //调用日志滚动通用函数
    postrotate            //在日志滚动之后只需语句括号postrotate和endscripts之间的命令
/bin/kill -HUP `cat /var/run/syslogd.pid 2> /dev/null` 2> /dev/null || true   重新启动服务
    endscript
}
 
 
 
 
 
                        日志主服务器和客户端的配置
日志服务器端的配置
1:修改配置文件/etc/sysconfig/syslog
 
 
# Options to syslogd
# -m 0 disables 'MARK' messages.
# -r enables logging from remote machines
# -x disables DNS lookups on messages recieved with -r
# See syslogd(8) for more details
SYSLOGD_OPTIONS=" -x -m 0" 修改为 SYSLOGD_OPTIONS="-r -x -m 0"
# Options to klogd
# -2 prints all kernel oops messages twice; once for klogd to decode, and
# once for processing with 'ksymoops'
# -x disables all klogd processing of oops messages entirely
# See klogd(8) for more details
KLOGD_OPTIONS="-x"
#
SYSLOG_UMASK=077
# set this to a umask value to use for all log files as in umask(1).
# By default, all permissions are removed for "group" and "other".
2:修改文件syslog 之后
2.1 重启syslog服务
Service syslog restart
 
客户端的配置
1:修改/etc/syslog.conf 
*.* @日志服务器的主机名或IP地址
2:重启客户端syslog 
Service syslog restat
3:客户端产生的所有的日志文件将在日志服务器的/var/log/*.* 生成。
 测试 
最后一步我们需要做的是验证所有的配置是否正常工作. 我们可以这样来 
做, 首先从客户端登出和登陆: 
然后检查logserver上的日志文件/var/log/messages或者/var/log/secure) 









本文转自 jie783213507 51CTO博客,原文链接:http://blog.51cto.com/litaotao/1186932,如需转载请自行联系原作者
相关实践学习
日志服务之使用Nginx模式采集日志
本文介绍如何通过日志服务控制台创建Nginx模式的Logtail配置快速采集Nginx日志并进行多维度分析。
目录
相关文章
|
11天前
|
消息中间件 安全 Linux
服务器(Linux)在线下载activeMQ以及配置打开
服务器(Linux)在线下载activeMQ以及配置打开
23 3
|
11天前
|
Java Linux
Linux(服务器) 装JDK
Linux(服务器) 装JDK
28 1
|
1天前
|
存储 监控 Ubuntu
Linux系统之GoAccess实时Web日志分析工具的基本使用
【5月更文挑战第22天】Linux系统之GoAccess实时Web日志分析工具的基本使用
10 0
|
5天前
|
数据安全/隐私保护
通过mac电脑的下载服务器的日志与日志筛选
通过mac电脑的下载服务器的日志与日志筛选
12 0
|
6天前
|
运维 Linux 程序员
最全查看Linux系统状态脚本_linux查询所有服务器信息的脚本,墙都不扶就服你
最全查看Linux系统状态脚本_linux查询所有服务器信息的脚本,墙都不扶就服你
最全查看Linux系统状态脚本_linux查询所有服务器信息的脚本,墙都不扶就服你
|
10天前
|
Linux 网络安全
linux/服务器使用scp将一个服务器文件转移到另一个服务器上
linux/服务器使用scp将一个服务器文件转移到另一个服务器上
40 3
|
11天前
|
监控 JavaScript 网络协议
Linux系统之安装uptime-kuma服务器监控面板
【5月更文挑战第12天】Linux系统之安装uptime-kuma服务器监控面板
26 0
|
11天前
|
关系型数据库 MySQL Linux
服务器Linux系统配置mysql数据库主从自动备份
这是一个基本的配置主从复制和设置自动备份的指南。具体的配置细节和命令可能因您的环境和需求而有所不同,因此建议在操作前详细阅读MySQL文档和相关资源,并谨慎操作以避免数据丢失或不一致。
28 3
|
11天前
|
存储 监控 数据可视化
linux日志分析工具与命令
在Linux中,日志分析常用命令行工具如`tail`(实时追踪日志)、`head`(显示日志开头)、`grep`(搜索关键词)、`awk`(复杂文本处理)、`sed`(文本替换)、`less`(分页查看)和`cat`(输出内容)。此外,还有日志分析工具如Logwatch(自动分析邮件摘要)、rsyslog/syslog-ng(日志收集)、Graylog(集中式管理)、ELK Stack(日志收集、解析、存储和可视化)和Splunk(企业级日志管理)。这些工具帮助管理员监控系统、排查问题、进行安全审计并获取业务洞察。
32 1
|
存储 监控 网络协议
Linux日志分析工具之AWStats
AWStats是一款功能强大且功能强大的免费工具,可以图形方式生成高级Web,流媒体,ftp或邮件服务器统计信息。此日志分析器用作CGI或命令行, 并在几个图形网页中显示您的日志包含的所有可能信息。
Linux日志分析工具之AWStats