如何修改sudo通过mail_badpass发送的邮件文本与主题?
如何修改sudo通过mail_badpass发送的邮件文本与主题?
当然可以!完全不用重新编译sudo就能搞定这个需求,咱们通过自定义邮件发送脚本来实现对邮件主题和内容的完全控制,具体步骤如下:
第一步:安全编辑sudo配置文件
千万别直接编辑/etc/sudoers文件,建议用visudo命令打开它——这个工具会自动检查语法错误,避免你因为配置写错而被锁在sudo权限外面。第二步:指定自定义邮件脚本路径
在sudoers文件里添加或修改以下配置项:# 开启错误密码邮件提醒(Debian12默认已开启,确保存在即可) Defaults mail_badpass # 指定咱们自己写的邮件脚本路径 Defaults mailerpath=/usr/local/bin/sudo-custom-mail.sh # 清空默认的邮件程序参数,因为自定义脚本用不上 Defaults mailerflags=""第三步:编写自定义邮件脚本
创建/usr/local/bin/sudo-custom-mail.sh脚本,你可以在里面自由定制邮件的主题和内容,比如参考下面的例子:#!/bin/bash # 自定义sudo错误密码提醒邮件脚本 # sudo会把收件人地址作为第一个参数传给脚本 RECIPIENT="$1" # 这里改成你想要的邮件主题 SUBJECT="⚠️ SUDO安全提醒:错误密码尝试(由sudo生成)" # 这里自由编辑邮件内容,sudo会自动设置好相关环境变量供咱们使用 BODY="以下是sudo错误密码尝试的详细信息: 尝试使用sudo的用户:$SUDO_USER 发生时间:$(date "+%Y-%m-%d %H:%M:%S") 主机名称:$(hostname) 用户尝试执行的命令:$SUDO_COMMAND" # 用mail命令发送邮件,也可以换成sendmail echo "$BODY" | mail -s "$SUBJECT" "$RECIPIENT"第四步:给脚本添加执行权限
最后执行这条命令,让脚本可以正常运行:chmod +x /usr/local/bin/sudo-custom-mail.sh
这样设置完成后,下次有人用sudo输错密码时,就会收到你完全自定义过主题和内容的邮件啦~
备注:内容来源于stack exchange,提问作者BeBuschka
相关产品推荐
相关产品推荐

