mailcow can enforce TLS for inbound and outbound connections.
mailcow can obtain and renew certificates automatically.
# Check certificate status
docker compose logs acme-mailcow | grep "Certificate obtained"
# View certificate expiration
docker compose exec nginx-mailcow openssl x509 -in /etc/ssl/mailcow/cert.pem -noout -dates
# Force renewal (restart ACME container)
docker compose restart acme-mailcow
If you provide your own cert/key:
# Place certificates
cp your-cert.pem /opt/mailcow-dockerized/data/assets/ssl/
cp your-key.pem /opt/mailcow-dockerized/data/assets/ssl/
# Restart Nginx
docker compose restart nginx-mailcow