进程和操作系统内核需要能够为发生的事件记录日志,这些日志可用于系统审核和问题的故障排除,一般这些日志永久存储 /var/log 目录中
/var/log/file 根据日志采集规则,可以指定日志的类型,类别
日志类型分为:
日志级别分为:
rsyslog 是一个开源工具,被广泛用于Linux系统以 TCP/UDP 协议转发或接收日志消息
主配置文件为 /etc/rsyslog.conf ,指定日志保存位置修改配置文件,修改后重启 rsyslog 服务生效
vim /etc/rsyslog.conf 修改配置文件
重启rsyslog服务
可以利用 tail -f 日志文件名 输出文件的后10行,并实时更新
两台主机防火墙关闭,修改完成后重启 rsyslogd 服务
vim /etc/rsyslog.conf
*.* @日志接受方ip(man rsyslog.conf “@”表示udp协议发送 “@@”表示tcp协议发送)
vim /etc/rsylog.conf
$ModLoad imudp 加载日志接收功能模块
$UDPServerRun 514 加载日志接收接口
测试
客户端
服务端
对于/var/log/secure文件中的一条日志信息,每一项代表的含义分析如下
记录该日志的时间戳
发送该日志消息的主机
记录发送该日志消息的进程或程序
发送的实际消息
vim /etc/rsyslog.conf
%timegenerated% 显示日志时间
%FROMHOST-IP% 显示主机ip
%syslogtag% 日志记录目标
%msg% 日志内容
\n 换行
确定时间源地址(172.25.254.254)
确定客户主机使用的时间同步服务,在 chronyd.service 服务中加载时间源地址
服务端:
vim /etc/chrony.conf
allow 172.25.254.37/24 允许客户端来同步本地时间
local stratum 10 本机不同步任何主机的时间,自己作为时间源
systemctl restart chronyd
客户端:
vim /etc/chrony.conf
server 172.25.254.237 iburst 本机立即同步237主机上的时间
systemctl restart chronyd.service
查看是否同步成功 chronyc sources -v
timedatectl 管理系统时间
timedatectl status 显示当前时间信息
timedatectl set-local-rhc 0|1 设定是否使用utc时间
timedatectl list-timezone 查看支持的所有时区
timedatectl set-timezone Africe/Conakry 设置当前时区
timedatectl set-time 11:11:11 设置当前系统时间
服务提供一种改进的日志管理服务,可以收集来自内核、启动过程、标准输出、系统日志及守护进程启动和运行期间错误的消息,它将这些消息写入到一个结构化事件日志中
journalctl 命令
journalctl 日志查看工具
journalctl -n 5 查看最近生成的5条日志
journalctl -p err 查看系统报错
journalctl --since --until 查看某个时间段生成的日志
journalctl -o verbose 查看日志能够使用的条件参数
systemd-journald
默认情况下,systemd 日志保存在 /run/log/journal 中,这意味这系统重启时会被清除,那如果将日志保存在 /var/log/journal 目录,这样做的优点是启动后就可以利用历史数据,形成永久日志