fix purge script

master
Gnieark 7 years ago
parent 7d0dae228a
commit b8534de6e4

@ -1,6 +1,8 @@
# Trash-email-alias # Trash-email-alias
A dovecot sieve 's script and configuration to generate a temporary random alias. A dovecot sieve 's script and configuration to generate a temporary random alias.
Read more on my blog (french) https://blog-du-grouik.tinad.fr/post/2017/01/18/Alias-mail-temporaire
# Usage # Usage
Just send an email to the configured em-mail generator. It will respond you and indicate what is your alias. Just send an email to the configured em-mail generator. It will respond you and indicate what is your alias.
You can test it by sending a mail to [ getalias Arobaze tinad.fr ]. You can test it by sending a mail to [ getalias Arobaze tinad.fr ].
@ -47,9 +49,11 @@ On /etc/dovecot/dovecot.conf my plugin section looks like:
(...) (...)
} }
Change your mysql credentials on cron/purge.sh and execute/genalias.sh Copy this repo's files where they're needed ;)
In my case, this files are owned by the unix user "dovecot".
Change your mysql credentials on cron/purge.sh and execute/genalias.sh
Add purge.sh on your crontab. Every 10 minutes is enougth. In my case, this files are owned by the unix user "dovecot".
Add the filters on yours sieve rules. Sample on this repo ./global.sieve file. Add purge.sh on your crontab. Every 10 minutes is enougth.
Add the filters on yours sieve rules. Sample on this repo ./global.sieve file.

@ -1,24 +1,24 @@
#!/bin/bash #!/bin/bash
#Gnieark https://blog-du-grouik.tinad.fr 2017 #Gnieark https://blog-du-grouik.tinad.fr 2017
#GNU GPL V2 license #GNU GPL V2 license
#inactivate alias olders than on #inactivate alias olders than on
MYSQLPATH="/usr/bin/mysql" MYSQLPATH="/usr/bin/mysql"
MYSQLDB="postfix" MYSQLDB="postfix"
MYSQLUSER="postfix" MYSQLUSER="postfix"
MYSQLPWD="******" MYSQLPWD="******"
LOGGERPATH="/usr/bin/logger" LOGGERPATH="/usr/bin/logger"
LOGFILE="/var/log/genalias.log" LOGFILE="/var/log/genalias.log"
DOMAIN="tinad.fr"
TTL="3600"
TTL="3600" $MYSQLPATH -u $MYSQLUSER -p$MYSQLPWD $MYSQLDB<< EOF
$MYSQLPATH -u $MYSQLUSER -p$MYSQLPWD $MYSQLDB<< EOF
UPDATE alias UPDATE alias
SET active='0' SET active='0'
WHERE DOMAIN='tinad.fr' WHERE DOMAIN='$DOMAIN'
AND active = '1' AND active = '1'
AND created < (UNIX_TIMESTAMP() - $TTL) AND modified > (UNIX_TIMESTAMP() - $TTL)
AND temporary='1'; AND temporary='1';
EOF EOF
$LOGGERPATH -s "Inactivate temporary alias older than 1 hour" 2> $LOGFILE $LOGGERPATH -s "Inactivate temporary alias older than 1 hour" 2> $LOGFILE
exit 0 exit 0
Loading…
Cancel
Save