教你如何用 Bash 脚本发送新用户创建的邮件
发表于:2024-10-21 作者:千家信息网编辑
千家信息网最后更新 2024年10月21日,出于某些原因,你可能需要跟踪 Linux 上的新用户创建信息。同时,你可能需要通过邮件发送详细信息。这或许是审计目标的一部分,或者安全团队出于跟踪目的可能希望对此进行监控。我们可以通过其他方式进行此操
千家信息网最后更新 2024年10月21日教你如何用 Bash 脚本发送新用户创建的邮件
出于某些原因,你可能需要跟踪 Linux 上的新用户创建信息。同时,你可能需要通过邮件发送详细信息。这或许是审计目标的一部分,或者安全团队出于跟踪目的可能希望对此进行监控。 |
我们可以通过其他方式进行此操作,正如我们在上一篇文章中已经描述的那样。
在系统中创建新用户帐户时发送邮件的 Bash 脚本
Linux 有许多开源监具可以使用。但我不认为他们有办法跟踪新用户创建过程,并在发生时提醒管理员。
那么我们怎样才能做到这一点?
我们可以编写自己的 Bash 脚本来实现这一目标。我们过去写过许多有用的 shell 脚本。
这个脚本做了什么?
这将每天两次(一天的开始和结束)备份 /etc/passwd 文件,这将使你能够获取指定日期的新用户创建详细信息。
我们需要添加以下两个 cron 任务来复制 /etc/passwd 文件。
# crontab -e1 0 * * * cp /etc/passwd /opt/scripts/passwd-start-$(date +"%Y-%m-%d")59 23 * * * cp /etc/passwd /opt/scripts/passwd-end-$(date +"%Y-%m-%d")
它使用 diff 命令来检测文件之间的差异,如果发现与昨日有任何差异,脚本将向指定 email 发送新用户详细信息。
我们不用经常运行此脚本,因为用户创建不经常发生。但是,我们计划每天运行一次此脚本。
这样,你可以获得有关新用户创建的综合报告。
注意:我们在脚本中使用了我们的电子邮件地址进行演示。因此,我们要求你用自己的电子邮件地址。
# vi /opt/scripts/new-user-detail.sh#!/bin/bashmv /opt/scripts/passwd-start-$(date --date='yesterday' '+%Y-%m-%d') /opt/scripts/passwd-startmv /opt/scripts/passwd-end-$(date --date='yesterday' '+%Y-%m-%d') /opt/scripts/passwd-enducount=$(diff /opt/scripts/passwd-start /opt/scripts/passwd-end | grep ">" | cut -d":" -f6 | cut -d"/" -f3 | wc -l)if [ $ucount -gt 0 ]then SUBJECT="ATTENTION: New User Account is created on server : `date --date='yesterday' '+%b %e'`" MESSAGE="/tmp/new-user-logs.txt" TO="2daygeek@gil.m" echo "Hostname: `hostname`" >> $MESSAGE echo -e "\n" >> $MESSAGE echo "The New User Details are below." >> $MESSAGE echo "+------------------------------+" >> $MESSAGE diff /opt/scripts/passwd-start /opt/scripts/passwd-end | grep ">" | cut -d":" -f6 | cut -d"/" -f3 >> $MESSAGE echo "+------------------------------+" >> $MESSAGE mail -s "$SUBJECT" "$TO" < $MESSAGE rm $MESSAGEfi
给 new-user-detail.sh 添加可执行权限。
$ chmod +x /opt/scripts/new-user-detail.sh
最后添加一个 cron 任务来动执行此作。它在每天早上 7 点运行。
# crontab -e0 7 * * * /bin/bash /opt/scripts/new-user.sh
注意:你会在每天早上 7 点都会收到一封关于昨日详情的邮件提醒。
输出:输出与下面的输出相同。
https://www.51cto.com/it/news/2019/1223/17728.html
# cat /tmp/new-user-logs.txtHostname: CentOS.2daygeek.comThe New User Details are below.+------------------------------+tuser3+------------------------------+
脚本
用户
邮件
信息
文件
跟踪
输出
运行
任务
地址
差异
电子
电子邮件
目标
相同
安全
不用
两个
之间
办法
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
海南服务器机柜定制云空间
加入国家网络安全人才库
如何检查服务器
蓝蝴蝶搜索服务器超时
三大战役下载软件开发
服务器内网不通
湖北网络技术标准
南宁达梦数据库怎么样
上海地铁软件开发待遇
软件开发生命周期技术
网络安全宣传建议书
利用他人服务器挖矿构成什么犯罪
江苏特色软件开发服务电话
关于网络安全自查总结
中国网络技术系统
对日软件开发项目
网络安全股票股
如何设计网络安全的ppt
网络技术支持简历怎么写
嵌入式就是指软件开发吗
2018局网络安全工作要点
远程服务器管理工具错误
系统软件开发定制费用
江西戴尔服务器定制
视频流服务器怎么搭建
高校网络安全方案设计
河南公安网络安全周
海外虚拟服务器
中国银行服务器调用失败
数据库表怎么查看数据类型