myvemail/build/run/docker-entrypoint/init.d/50-cron.sh

52 lines
1.5 KiB
Bash
Raw Normal View History

2024-08-09 12:50:33 +00:00
#!/usr/bin/env bash
2024-08-14 17:26:17 +00:00
# Start at daemon
atd
# Roundcube cleanup (daily)
2024-08-09 12:50:33 +00:00
while true
do
at -f /usr/share/webapps/roundcube/bin/cleandb.sh midnight
sleep 1d
2024-08-09 12:50:33 +00:00
done &
2024-08-18 07:39:52 +00:00
# Update Postscreen Whitelists (daily)
while true
do
at -f /usr/local/bin/postwhite/postwhite midnight
sleep 1d
2024-08-18 07:39:52 +00:00
done &
2024-08-09 12:50:33 +00:00
2024-08-14 17:26:17 +00:00
# Update Yahoo! IPs for Postscreen Whitelists (weekly)
2024-08-09 12:50:33 +00:00
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
2025-02-26 00:28:59 +00:00
$(tail -n 1 /var/log/mail/reject.log)
mail
2024-08-09 12:50:33 +00:00
done &
2024-08-09 12:50:33 +00:00
# # 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 &