Linux实时监控日志文件的swatchdog_swatch 日志

sudo make install
sudo make realclean


## 3. 如何使用swatch监控日志文件变化


安装了swatch之后,需要创建它的配置文件(默认位置是/home/$USER/.swatchdogrc或者.swatchrc)。以确定要查找的表达式模式的类型,以及在匹配模式时应该采取的操作类型。



touch /home/tecmint/.swatchdogrc


或者



touch /home/tecmint/.swatchrc


将正则表达式添加到此文件中,每行应该包含一个关键字和值(有时是可选的),以空格或等号(=)分隔。您需要指定关键字和匹配内容时要采取的操作。


我们将使用一个简单的配置文件,例如,您可以在swatchdog man页面中找到更多的选项。



watchfor /sudo/
echo red
mail=admin@tecmint.com, subject=“Sudo Command”


我们的正则表达式是一个文字字符串—sudo,意味着任何时候字符串sudo出现在日志文件,将以输出red到终端和邮件,这是指定要采取行动。


配置完成后,swatchdog将默认读取/var/log/syslog日志文件,如果该文件不存在,它将读取/var/log/messages。


基于RHEL/CentOS & Fedora



swatch


基于Ubuntu/Debian



swatchdog


可以使用-c选项指定一个不同的配置文件,如下面的示例所示。


首先创建一个swatch配置目录和一个文件。



mkdir swatch
touch swatch/secure.conf


接下来,在该文件中添加以下配置,以监控失败和成功的ssh登录尝试,日志文件位置在/var/log/secure。



watchfor /FAILED/
echo red
mail=admin@tecmint.com, subject=“Failed Login Attempt”

watchfor /ROOT LOGIN/
echo red
mail=admin@tecmint.com, subject=“Successful Root Login”

watchfor /ssh.*: Failed password/
echo red
mail=admin@tecmint.com, subject=“Failed SSH Login Attempt”

watchfor /ssh.*: session opened for user root/
echo red
mail=admin@tecmint.com, subject=“Successful SSH Root Login”


现在,通过使用-c指定配置文件并使用-t选项指定日志文件来运行swatch,如下所示。



swatchdog -c ~/swatch/secure.conf -t /var/log/secure


要在后台运行它,可以使用-daemon选项,它将在后台运行。



swatchdog ~/swatch/secure.conf -t /var/log/secure --daemon


现在,要测试swatch配置,请尝试从不同的终端登录到服务器,您将看到以下输出



*** swatch version 3.2.3 (pid:16531) started at Thu Jul 12 12:45:10 BST 2018

Jul 12 12:51:19 tecmint sshd[16739]: Failed password for root from 192.168.0.103 port 33324 ssh2
Jul 12 12:51:19 tecmint sshd[16739]: Failed password for root from 192.168.0.103 port 33324 ssh2
Jul 12 12:52:07 tecmint sshd[16739]: pam_unix(sshd:session): session opened for user root by (uid=0)
Jul 12 12:52:07 tecmint sshd[16739]: pam_unix(sshd:session): session opened for user root by (uid=0)


您还可以运行多个swatch进程来监控各种日志文件。



swatchdog -c ~/site1_watch_config -t /var/log/nginx/site1/access_log --daemon
swatchdog -c ~/messages_watch_config -t /var/log/messages --daemon
swatchdog -c ~/auth_watch_config -t /var/log/auth.log --daemon


有关更多信息,请查看swatchdog man页面。



### 最后的话

最近很多小伙伴找我要Linux学习资料,于是我翻箱倒柜,整理了一些优质资源,涵盖视频、电子书、PPT等共享给大家!

### 资料预览

给大家整理的视频资料:

![](https://img-blog.csdnimg.cn/img_convert/89334f42c3c6ece2ec10759af2dc9724.png)

给大家整理的电子书资料:

  

![](https://img-blog.csdnimg.cn/img_convert/2f62e5eefc5f8b99023d392b6fea150a.png)



**如果本文对你有帮助,欢迎点赞、收藏、转发给朋友,让我有持续创作的动力!**
整理的视频资料:

[外链图片转存中...(img-o5xhA9nV-1725915004970)]

给大家整理的电子书资料:

  

[外链图片转存中...(img-i6Mohty3-1725915004971)]



**如果本文对你有帮助,欢迎点赞、收藏、转发给朋友,让我有持续创作的动力!**
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值