mirror of
https://github.com/mailcow/mailcow-dockerized.git
synced 2025-12-19 12:51:29 +00:00
41 lines
1.2 KiB
Bash
Executable File
41 lines
1.2 KiB
Bash
Executable File
#!/bin/bash
|
|
|
|
# Run hooks
|
|
for file in /hooks/*; do
|
|
if [ -x "${file}" ]; then
|
|
echo "Running hook ${file}"
|
|
"${file}"
|
|
fi
|
|
done
|
|
|
|
python3 -u /bootstrap/main.py
|
|
BOOTSTRAP_EXIT_CODE=$?
|
|
|
|
if [ $BOOTSTRAP_EXIT_CODE -ne 0 ]; then
|
|
echo "Bootstrap failed with exit code $BOOTSTRAP_EXIT_CODE. Not starting Postfix."
|
|
exit $BOOTSTRAP_EXIT_CODE
|
|
fi
|
|
|
|
# Fix OpenSSL 3.X TLS1.0, 1.1 support (https://community.mailcow.email/d/4062-hi-all/20)
|
|
if grep -qE '\!SSLv2|\!SSLv3|>=TLSv1(\.[0-1])?$' /opt/postfix/conf/main.cf /opt/postfix/conf/extra.cf; then
|
|
sed -i '/\[openssl_init\]/a ssl_conf = ssl_configuration' /etc/ssl/openssl.cnf
|
|
|
|
echo "[ssl_configuration]" >> /etc/ssl/openssl.cnf
|
|
echo "system_default = tls_system_default" >> /etc/ssl/openssl.cnf
|
|
echo "[tls_system_default]" >> /etc/ssl/openssl.cnf
|
|
echo "MinProtocol = TLSv1" >> /etc/ssl/openssl.cnf
|
|
echo "CipherString = DEFAULT@SECLEVEL=0" >> /etc/ssl/openssl.cnf
|
|
fi
|
|
|
|
|
|
# Start Postfix
|
|
postconf -c /opt/postfix/conf > /dev/null
|
|
if [[ $? != 0 ]]; then
|
|
echo "Postfix configuration error, refusing to start."
|
|
exit 1
|
|
else
|
|
echo "Bootstrap succeeded. Starting Postfix..."
|
|
postfix -c /opt/postfix/conf start
|
|
sleep 126144000
|
|
fi
|