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)]
**如果本文对你有帮助,欢迎点赞、收藏、转发给朋友,让我有持续创作的动力!**