myvemail/build/run/docker-entrypoint/init.d/50-cron.sh
2025-02-26 12:47:08 +00:00

51 lines
1.4 KiB
Bash
Executable file

#!/usr/bin/env bash
# Start at daemon
atd
# Roundcube cleanup (daily)
while true
do
at -f /usr/share/webapps/roundcube/bin/cleandb.sh midnight
sleep 1d
done &
# Update Postscreen Whitelists (daily)
while true
do
at -f /usr/local/bin/postwhite/postwhite midnight
sleep 1d
done &
# Update Yahoo! IPs for Postscreen Whitelists (weekly)
while true
do
at -f /usr/local/bin/postwhite/scrape_yahoo midnight sunday
sleep 7d
done &
# Notify if rejected emails were found
while true
do
bash -c 'tail -n +0 --pid=$$ -f /var/log/mail/maillog* | grep --line-buffered -F -v -f /var/log/mail/reject.log | { sed "/NOQUEUE: reject/q" && kill $$ ;}'
echo "$(grep "NOQUEUE: reject" /var/log/mail/maillog* | grep -F -v -f /var/log/mail/reject.log)" >>/var/log/mail/reject.log
cat <<- mail | sendmail reject@${MYVEMAIL_DOMAIN}
From: reject@${MYVEMAIL_DOMAIN}
To: reject@${MYVEMAIL_DOMAIN}
Subject: Rejected email found
$(tail -n 1 /var/log/mail/reject.log)
mail
done &
# # Refresh ssl keys daily
# # https://www.golinuxcloud.com/renew-self-signed-certificate-openssl/
# while true
# do
# sleep 1d
# openssl x509 -x509toreq -in /etc/ssl/dovecot/tls.pem -signkey /etc/ssl/dovecot/tls.key -out /tmp/new-certificate-sign-request.csr
# openssl x509 -req -days 3650 -in /tmp/new-certificate-sign-request.csr -signkey /etc/ssl/dovecot/tls.key -out /etc/ssl/dovecot/tls.pem
# rm /tmp/new-certificate-sign-request.csr
# dovecot reload
# postfix reload
# done &