返回
巧用Bash脚本监控新用户创建
见解分享
2023-10-05 03:06:51
在Linux系统中,跟踪新用户创建信息是必要的,尤其是当您希望保持系统安全并防止未经授权的访问时。幸运的是,您可以使用Bash脚本来实现这个目的,并通过电子邮件发送详细通知。
前提条件
- 运行Linux系统的服务器或计算机。
- 有权访问命令行的用户帐户。
- 已安装sendmail或其他邮件发送工具。
步骤 1:创建 Bash 脚本
- 打开终端或命令行界面。
- 使用文本编辑器(如nano或vim)创建一个新的Bash脚本文件,命名为“newuser_monitor.sh”。
- 在脚本文件中输入以下内容:
#!/bin/bash
# 脚本开始
# 定义要监视的用户帐户文件
user_file="/etc/passwd"
# 定义要发送电子邮件的收件人地址
recipient="example@domain.com"
# 获取系统上所有用户列表
users=$(cut -d: -f1 $user_file)
# 遍历用户列表,查找新创建的用户
for user in $users; do
# 检查用户是否在创建用户列表中
if grep -q "^$user:" /tmp/created_users.txt; then
# 用户已存在,跳过
continue
else
# 用户不存在,将其添加到创建用户列表
echo "$user" >> /tmp/created_users.txt
# 通过电子邮件发送新用户创建通知
echo "新用户 $user 已创建于 $(date)" | mail -s "新用户创建通知" $recipient
fi
done
# 脚本结束
步骤 2:确保脚本可执行
- 使脚本可执行:
chmod +x newuser_monitor.sh
- 将脚本移动到一个合适的目录,如/usr/local/bin或/opt/scripts。
步骤 3:设置邮件发送工具
确保已在系统上安装并配置了邮件发送工具,如sendmail或postfix。您可能需要编辑相应的配置文件以指定正确的SMTP服务器和端口。
步骤 4:创建“创建用户列表”文件
在/tmp目录下创建一个名为“created_users.txt”的文件,以便脚本可以将新创建的用户添加到该文件中。
步骤 5:运行脚本
- 打开终端或命令行界面。
- 导航到包含脚本的目录。
- 运行脚本:
./newuser_monitor.sh
步骤 6:测试脚本
创建一个新用户来测试脚本是否正常工作。您应该会在指定的电子邮件地址收到有关新用户创建的通知。
总结
您已成功创建了一个Bash脚本,可以监控Linux系统上新用户创建的信息并通过电子邮件发送详细通知。这个脚本可以帮助您跟踪系统上用户创建的情况,并及时发现任何异常或未经授权的访问行为。