我使用logrotate定期向我发送日志。我的服务器是一个运行Postfix的VPS作为仅限外发的SMTP服务器。邮寄之前的Logrotate加密
我希望所有的邮寄日志(Logrotate发送的)用PGP或S/MIME加密。我怎样才能做到这一点?
我搜索了logrotate邮件加密,但找不到任何。因此,我认为我可以在logrotate config中传递“nomail”命令,但是在脚本中添加“postscript”脚本来首先加密邮件然后发送。
那么,有没有更好的方法来加密logrotate邮件与PGP?或者这就是我需要做的事情?我会很感激任何意见或这样的脚本的例子。
此外,我不考虑使用TLS,因为有可能的方法可以绕过SMTP服务器。我宁愿依赖于单个消息的加密。
谢谢!
编辑:
这里是我的脚本,我使用自定义的电子邮件发送(无GPG现在):
#!/bin/bash
read MSG
echo $MSG | mail -s $1 $2
但是,当我强迫与logrotate --mail=loggpg.sh --force /etc/logrotate.d/ufw
旋转,我不断收到错误有关解压缩,我需要手动解压缩吗?或者脚本有错误吗?
错误,我得到:
error: mail command failed for /var/log/ufw.log.5.gz
error: uncompress command failed mailing /var/log/ufw.log.5.gz`
感谢您的回复!我会尝试制作一个脚本,一旦成功就会更新。 – Ilya
嘿,我已经尝试制作一个shell脚本,并且首先不使用gpg来调用它,只是为了确保它能正常工作并发送邮件。但是我不断收到错误。我更新了我的问题。如果你能告诉我什么是错的,我将不胜感激。谢谢! – Ilya
而不是'读MSG;回声$ MSG | mail -s $ 1 $ 2'尝试'邮件-s“$ 1”“$ 2”' – AnFi