46 lines
1.3 KiB
Bash
Executable File
46 lines
1.3 KiB
Bash
Executable File
#!/bin/bash
|
|
|
|
mkdir -p /etc/rspamd/plugins.d \
|
|
/etc/rspamd/custom
|
|
|
|
touch /etc/rspamd/rspamd.conf.local \
|
|
/etc/rspamd/rspamd.conf.override
|
|
|
|
chmod 755 /var/lib/rspamd
|
|
|
|
[[ ! -f /etc/rspamd/override.d/worker-controller-password.inc ]] && echo '# Autogenerated by mailcow' > /etc/rspamd/override.d/worker-controller-password.inc
|
|
[[ ! -f /etc/rspamd/custom/sa-rules-heinlein ]] && echo '# Autogenerated by mailcow' > /etc/rspamd/custom/sa-rules-heinlein
|
|
[[ ! -f /etc/rspamd/custom/dovecot_trusted.map ]] && echo '# Autogenerated by mailcow' > /etc/rspamd/custom/dovecot_trusted.map
|
|
|
|
DOVECOT_V4=
|
|
DOVECOT_V6=
|
|
until [[ ! -z ${DOVECOT_V4} ]]; do
|
|
DOVECOT_V4=$(dig a dovecot +short)
|
|
DOVECOT_V6=$(dig aaaa dovecot +short)
|
|
[[ ! -z ${DOVECOT_V4} ]] && break;
|
|
echo "Waiting for Dovecot"
|
|
sleep 3
|
|
done
|
|
echo ${DOVECOT_V4}/32 > /etc/rspamd/custom/dovecot_trusted.map
|
|
if [[ ! -z ${DOVECOT_V6} ]]; then
|
|
echo ${DOVECOT_V6}/128 >> /etc/rspamd/custom/dovecot_trusted.map
|
|
fi
|
|
|
|
chown -R _rspamd:_rspamd /var/lib/rspamd \
|
|
/etc/rspamd/local.d \
|
|
/etc/rspamd/override.d \
|
|
/etc/rspamd/custom \
|
|
/etc/rspamd/rspamd.conf.local \
|
|
/etc/rspamd/rspamd.conf.override \
|
|
/etc/rspamd/plugins.d
|
|
|
|
# Run hooks
|
|
for file in /hooks/*; do
|
|
if [ -x "${file}" ]; then
|
|
echo "Running hook ${file}"
|
|
"${file}"
|
|
fi
|
|
done
|
|
|
|
exec "$@"
|