Linux日志文件服务器搭建

节点规划

IP 主机名 节点
192.168.100.10 serverlog 日志服务器
192.168.100.20 clientlog 日志客户端

image-20230517191739851

必须两台机器可以ping通才行

[root@clientlog ~]# ping 192.168.100.10
PING 192.168.100.10 (192.168.100.10) 56(84) bytes of data.
64 bytes from 192.168.100.10: icmp_seq=1 ttl=64 time=0.346 ms
64 bytes from 192.168.100.10: icmp_seq=2 ttl=64 time=0.534 ms # ctrl + c 
--- 192.168.100.10 ping statistics ---
2 packets transmitted, 2 received, 0% packet loss, time 1000ms
rtt min/avg/max/mdev = 0.346/0.440/0.534/0.094 ms

我们要做的是让一台主机当成【日志文件服务器】,用来记录另一台Linux主机的信息,这样之间进入一台主机就可以了。

案例实施

(1)修改主机名

修改192.168.100.10的主机名为serverlog

修改192.168.100.20的主机名为clientlog

[root@localhost ~]# hostnamectl set-hostname clientlog
[root@localhost ~]# bash
[root@clientlog ~]# 

[root@clientlog ~]# hostnamectl set-hostname serverlog
[root@clientlog ~]# bash
[root@serverlog ~]# 

(2)配置日志服务器

修改rsyslogd的启动配置文件,在/etc/rsyslog.conf内。

[root@serverlog ~]# vim /etc/rsyslog.conf
#$ModLoad imudp
#$UDPServerRun 514

#$ModLoad imtcp
#$InputTCPServerRun 514

上面的是UDP端口,下面的是TCP端口,如果你的网络状态很稳定,就用UDP

不过你想要让数据比较稳定传输,那么建议使用TCP,所以修改下面两行即可

$ModLoad imtcp
$InputTCPServerRun 514

(3)重新启动查看rsyslogd

[root@serverlog ~]# systemctl restart rsyslog.service

image-20230517193457542

日志主机已经设置好了!

通过这个简单的操作,你的Linux主机已经可以接受来自其他主机的登录信息了。

(4)配置客户端

配置客户端很简单,只需要指定某个信息传达到这台主机即可。

[root@clientlog ~]# vim /etc/rsyslog.conf 
*.*          @@192.168.100.10
#*.*          @192.168.100.10  # 若用UDP传输,设置要变这样
[root@clientlog ~]# systemctl restart rsyslog.service

再次重启rsyslog.server后,立刻就搞定了。需要注意的是:使用TCP传输与UDP传输的设置不太一样,请根据你的日志文件服务器来选择你的客户端配置参数。接下来让我们测试一下

(5)测试

在对面打开tail实时监听命令

[root@serverlog ~]# tail -f /var/log/messages
# 按ctrl + c 退出

image-20230517195959692

客户端这边向其发送日志使用logger命令

logger命令是一个用于向系统日志中写入消息的工具,可以将指定的消息写入到系统日志文件中,以便于后续的查看和分析。详细介绍请可以使用man logger命令查看完整的帮助文档。

[root@clientlog ~]# logger Hello Word

image-20230517195314310

配置完成!!!

本文参考博客地址:Linux日志管理之搭建日志服务器

Logo

技术共进,成长同行——讯飞AI开发者社区

更多推荐