diff --git a/404.html b/404.html index 42c5b72c5..86d57c39c 100644 --- a/404.html +++ b/404.html @@ -554,9 +554,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/assets/images/social/post_installation/firststeps-rp.de.png b/assets/images/social/post_installation/firststeps-rp.de.png deleted file mode 100644 index 6f4e376e9..000000000 Binary files a/assets/images/social/post_installation/firststeps-rp.de.png and /dev/null differ diff --git a/assets/images/social/post_installation/firststeps-rp.en.png b/assets/images/social/post_installation/firststeps-rp.en.png deleted file mode 100644 index 6f4e376e9..000000000 Binary files a/assets/images/social/post_installation/firststeps-rp.en.png and /dev/null differ diff --git a/assets/images/social/post_installation/reverse-proxy/r_p-apache24.de.png b/assets/images/social/post_installation/reverse-proxy/r_p-apache24.de.png new file mode 100644 index 000000000..f6568ff5c Binary files /dev/null and b/assets/images/social/post_installation/reverse-proxy/r_p-apache24.de.png differ diff --git a/assets/images/social/post_installation/reverse-proxy/r_p-apache24.en.png b/assets/images/social/post_installation/reverse-proxy/r_p-apache24.en.png new file mode 100644 index 000000000..f6568ff5c Binary files /dev/null and b/assets/images/social/post_installation/reverse-proxy/r_p-apache24.en.png differ diff --git a/assets/images/social/post_installation/reverse-proxy/r_p-caddy2.de.png b/assets/images/social/post_installation/reverse-proxy/r_p-caddy2.de.png new file mode 100644 index 000000000..a31f58482 Binary files /dev/null and b/assets/images/social/post_installation/reverse-proxy/r_p-caddy2.de.png differ diff --git a/assets/images/social/post_installation/reverse-proxy/r_p-caddy2.en.png b/assets/images/social/post_installation/reverse-proxy/r_p-caddy2.en.png new file mode 100644 index 000000000..1dcf549e9 Binary files /dev/null and b/assets/images/social/post_installation/reverse-proxy/r_p-caddy2.en.png differ diff --git a/assets/images/social/post_installation/reverse-proxy/r_p-haproxy.de.png b/assets/images/social/post_installation/reverse-proxy/r_p-haproxy.de.png new file mode 100644 index 000000000..c9b026d6a Binary files /dev/null and b/assets/images/social/post_installation/reverse-proxy/r_p-haproxy.de.png differ diff --git a/assets/images/social/post_installation/reverse-proxy/r_p-haproxy.en.png b/assets/images/social/post_installation/reverse-proxy/r_p-haproxy.en.png new file mode 100644 index 000000000..5fa4e6e89 Binary files /dev/null and b/assets/images/social/post_installation/reverse-proxy/r_p-haproxy.en.png differ diff --git a/assets/images/social/post_installation/reverse-proxy/r_p-nginx.de.png b/assets/images/social/post_installation/reverse-proxy/r_p-nginx.de.png new file mode 100644 index 000000000..54c49f3bc Binary files /dev/null and b/assets/images/social/post_installation/reverse-proxy/r_p-nginx.de.png differ diff --git a/assets/images/social/post_installation/reverse-proxy/r_p-nginx.en.png b/assets/images/social/post_installation/reverse-proxy/r_p-nginx.en.png new file mode 100644 index 000000000..54c49f3bc Binary files /dev/null and b/assets/images/social/post_installation/reverse-proxy/r_p-nginx.en.png differ diff --git a/assets/images/social/post_installation/reverse-proxy/r_p-traefik2.de.png b/assets/images/social/post_installation/reverse-proxy/r_p-traefik2.de.png new file mode 100644 index 000000000..7b357ba86 Binary files /dev/null and b/assets/images/social/post_installation/reverse-proxy/r_p-traefik2.de.png differ diff --git a/assets/images/social/post_installation/reverse-proxy/r_p-traefik2.en.png b/assets/images/social/post_installation/reverse-proxy/r_p-traefik2.en.png new file mode 100644 index 000000000..26517719f Binary files /dev/null and b/assets/images/social/post_installation/reverse-proxy/r_p-traefik2.en.png differ diff --git a/assets/images/social/post_installation/reverse-proxy/r_p.de.png b/assets/images/social/post_installation/reverse-proxy/r_p.de.png new file mode 100644 index 000000000..efc780d91 Binary files /dev/null and b/assets/images/social/post_installation/reverse-proxy/r_p.de.png differ diff --git a/assets/images/social/post_installation/reverse-proxy/r_p.en.png b/assets/images/social/post_installation/reverse-proxy/r_p.en.png new file mode 100644 index 000000000..0cdc596e8 Binary files /dev/null and b/assets/images/social/post_installation/reverse-proxy/r_p.en.png differ diff --git a/backup_restore/b_n_r-accidental_deletion/index.html b/backup_restore/b_n_r-accidental_deletion/index.html index 8c2c547f3..80d6c4ece 100644 --- a/backup_restore/b_n_r-accidental_deletion/index.html +++ b/backup_restore/b_n_r-accidental_deletion/index.html @@ -591,9 +591,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/backup_restore/b_n_r-backup/index.html b/backup_restore/b_n_r-backup/index.html index 0f79c87dc..d8c579008 100644 --- a/backup_restore/b_n_r-backup/index.html +++ b/backup_restore/b_n_r-backup/index.html @@ -591,9 +591,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/backup_restore/b_n_r-backup_restore-maildir/index.html b/backup_restore/b_n_r-backup_restore-maildir/index.html index 7b8498c60..c87994a71 100644 --- a/backup_restore/b_n_r-backup_restore-maildir/index.html +++ b/backup_restore/b_n_r-backup_restore-maildir/index.html @@ -591,9 +591,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/backup_restore/b_n_r-backup_restore-mysql/index.html b/backup_restore/b_n_r-backup_restore-mysql/index.html index 36d47260b..5aec02fd6 100644 --- a/backup_restore/b_n_r-backup_restore-mysql/index.html +++ b/backup_restore/b_n_r-backup_restore-mysql/index.html @@ -591,9 +591,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/backup_restore/b_n_r-coldstandby/index.html b/backup_restore/b_n_r-coldstandby/index.html index a0a4ad9d0..718c81f51 100644 --- a/backup_restore/b_n_r-coldstandby/index.html +++ b/backup_restore/b_n_r-coldstandby/index.html @@ -591,9 +591,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/backup_restore/b_n_r-restore/index.html b/backup_restore/b_n_r-restore/index.html index a87be5e9f..94e0491fd 100644 --- a/backup_restore/b_n_r-restore/index.html +++ b/backup_restore/b_n_r-restore/index.html @@ -591,9 +591,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/client/client-android/index.html b/client/client-android/index.html index 816d9b02d..0aafd5a77 100644 --- a/client/client-android/index.html +++ b/client/client-android/index.html @@ -586,9 +586,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/client/client-apple/index.html b/client/client-apple/index.html index 73ae8d5f8..e92bd8b23 100644 --- a/client/client-apple/index.html +++ b/client/client-apple/index.html @@ -591,9 +591,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/client/client-emclient/index.html b/client/client-emclient/index.html index 89d0ad482..33139da3a 100644 --- a/client/client-emclient/index.html +++ b/client/client-emclient/index.html @@ -586,9 +586,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/client/client-kontact/index.html b/client/client-kontact/index.html index 3d4741dc8..5a08b1539 100644 --- a/client/client-kontact/index.html +++ b/client/client-kontact/index.html @@ -586,9 +586,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/client/client-manual/index.html b/client/client-manual/index.html index 917932903..82335ecb1 100644 --- a/client/client-manual/index.html +++ b/client/client-manual/index.html @@ -591,9 +591,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/client/client-outlook/index.html b/client/client-outlook/index.html index d0787ef07..6b7c2c2f5 100644 --- a/client/client-outlook/index.html +++ b/client/client-outlook/index.html @@ -591,9 +591,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/client/client-thunderbird/index.html b/client/client-thunderbird/index.html index b6f07ffc6..ed1e8b3a3 100644 --- a/client/client-thunderbird/index.html +++ b/client/client-thunderbird/index.html @@ -586,9 +586,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/client/client-windows/index.html b/client/client-windows/index.html index 598eb9b83..4accbcad1 100644 --- a/client/client-windows/index.html +++ b/client/client-windows/index.html @@ -586,9 +586,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/client/client/index.html b/client/client/index.html index cef49b9aa..0d566eeb6 100644 --- a/client/client/index.html +++ b/client/client/index.html @@ -586,9 +586,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/de/backup_restore/b_n_r-accidental_deletion/index.html b/de/backup_restore/b_n_r-accidental_deletion/index.html index 448030fa4..7d417fce2 100644 --- a/de/backup_restore/b_n_r-accidental_deletion/index.html +++ b/de/backup_restore/b_n_r-accidental_deletion/index.html @@ -591,9 +591,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/de/backup_restore/b_n_r-backup/index.html b/de/backup_restore/b_n_r-backup/index.html index f0b5e3aa2..8007b9049 100644 --- a/de/backup_restore/b_n_r-backup/index.html +++ b/de/backup_restore/b_n_r-backup/index.html @@ -591,9 +591,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/de/backup_restore/b_n_r-backup_restore-maildir/index.html b/de/backup_restore/b_n_r-backup_restore-maildir/index.html index e526e59b6..d3b6d0e18 100644 --- a/de/backup_restore/b_n_r-backup_restore-maildir/index.html +++ b/de/backup_restore/b_n_r-backup_restore-maildir/index.html @@ -591,9 +591,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/de/backup_restore/b_n_r-backup_restore-mysql/index.html b/de/backup_restore/b_n_r-backup_restore-mysql/index.html index db0779fd0..7f6e9990d 100644 --- a/de/backup_restore/b_n_r-backup_restore-mysql/index.html +++ b/de/backup_restore/b_n_r-backup_restore-mysql/index.html @@ -591,9 +591,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/de/backup_restore/b_n_r-coldstandby/index.html b/de/backup_restore/b_n_r-coldstandby/index.html index d43263dd8..d6ae55809 100644 --- a/de/backup_restore/b_n_r-coldstandby/index.html +++ b/de/backup_restore/b_n_r-coldstandby/index.html @@ -591,9 +591,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/de/backup_restore/b_n_r-restore/index.html b/de/backup_restore/b_n_r-restore/index.html index 69605a706..d1e7f98e4 100644 --- a/de/backup_restore/b_n_r-restore/index.html +++ b/de/backup_restore/b_n_r-restore/index.html @@ -591,9 +591,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/de/client/client-android/index.html b/de/client/client-android/index.html index f4628bf7c..1706e46ca 100644 --- a/de/client/client-android/index.html +++ b/de/client/client-android/index.html @@ -586,9 +586,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/de/client/client-apple/index.html b/de/client/client-apple/index.html index cf88b104a..081733cd2 100644 --- a/de/client/client-apple/index.html +++ b/de/client/client-apple/index.html @@ -591,9 +591,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/de/client/client-emclient/index.html b/de/client/client-emclient/index.html index 3f22d085d..fc0534a12 100644 --- a/de/client/client-emclient/index.html +++ b/de/client/client-emclient/index.html @@ -586,9 +586,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/de/client/client-kontact/index.html b/de/client/client-kontact/index.html index effd31751..7fa2acc73 100644 --- a/de/client/client-kontact/index.html +++ b/de/client/client-kontact/index.html @@ -586,9 +586,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/de/client/client-manual/index.html b/de/client/client-manual/index.html index da77a6f6f..f10ef3086 100644 --- a/de/client/client-manual/index.html +++ b/de/client/client-manual/index.html @@ -591,9 +591,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/de/client/client-outlook/index.html b/de/client/client-outlook/index.html index bd821a8aa..3890a7535 100644 --- a/de/client/client-outlook/index.html +++ b/de/client/client-outlook/index.html @@ -591,9 +591,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/de/client/client-thunderbird/index.html b/de/client/client-thunderbird/index.html index c36dc69f0..1813bc784 100644 --- a/de/client/client-thunderbird/index.html +++ b/de/client/client-thunderbird/index.html @@ -586,9 +586,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/de/client/client-windows/index.html b/de/client/client-windows/index.html index 2af92be3b..d2ac82ef7 100644 --- a/de/client/client-windows/index.html +++ b/de/client/client-windows/index.html @@ -586,9 +586,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/de/client/client/index.html b/de/client/client/index.html index 16eaa1c42..90119260b 100644 --- a/de/client/client/index.html +++ b/de/client/client/index.html @@ -586,9 +586,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/de/i_u_m/i_u_m_deinstall/index.html b/de/i_u_m/i_u_m_deinstall/index.html index 884283f24..7348e32df 100644 --- a/de/i_u_m/i_u_m_deinstall/index.html +++ b/de/i_u_m/i_u_m_deinstall/index.html @@ -596,9 +596,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/de/i_u_m/i_u_m_install/index.html b/de/i_u_m/i_u_m_install/index.html index c9332e907..6123dd7e7 100644 --- a/de/i_u_m/i_u_m_install/index.html +++ b/de/i_u_m/i_u_m_install/index.html @@ -725,9 +725,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/de/i_u_m/i_u_m_migration/index.html b/de/i_u_m/i_u_m_migration/index.html index d290ca8e5..54873053b 100644 --- a/de/i_u_m/i_u_m_migration/index.html +++ b/de/i_u_m/i_u_m_migration/index.html @@ -596,9 +596,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/de/i_u_m/i_u_m_update/index.html b/de/i_u_m/i_u_m_update/index.html index 957aba7d2..3e0806660 100644 --- a/de/i_u_m/i_u_m_update/index.html +++ b/de/i_u_m/i_u_m_update/index.html @@ -712,9 +712,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/de/index.html b/de/index.html index 3eb90aeff..d999f207f 100644 --- a/de/index.html +++ b/de/index.html @@ -671,9 +671,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/de/manual-guides/ClamAV/u_e-clamav-additional_dbs/index.html b/de/manual-guides/ClamAV/u_e-clamav-additional_dbs/index.html index d8e8eae5c..10982da8c 100644 --- a/de/manual-guides/ClamAV/u_e-clamav-additional_dbs/index.html +++ b/de/manual-guides/ClamAV/u_e-clamav-additional_dbs/index.html @@ -591,9 +591,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/de/manual-guides/ClamAV/u_e-clamav-whitelist/index.html b/de/manual-guides/ClamAV/u_e-clamav-whitelist/index.html index be4c2fb83..b0136f238 100644 --- a/de/manual-guides/ClamAV/u_e-clamav-whitelist/index.html +++ b/de/manual-guides/ClamAV/u_e-clamav-whitelist/index.html @@ -591,9 +591,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/de/manual-guides/Docker/u_e-docker-cust_dockerfiles/index.html b/de/manual-guides/Docker/u_e-docker-cust_dockerfiles/index.html index 31f7cebdb..10c4521d0 100644 --- a/de/manual-guides/Docker/u_e-docker-cust_dockerfiles/index.html +++ b/de/manual-guides/Docker/u_e-docker-cust_dockerfiles/index.html @@ -586,9 +586,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/de/manual-guides/Dovecot/u_e-dovecot-any_acl/index.html b/de/manual-guides/Dovecot/u_e-dovecot-any_acl/index.html index a82957fa7..d714d6494 100644 --- a/de/manual-guides/Dovecot/u_e-dovecot-any_acl/index.html +++ b/de/manual-guides/Dovecot/u_e-dovecot-any_acl/index.html @@ -586,9 +586,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/de/manual-guides/Dovecot/u_e-dovecot-catchall_vacation/index.html b/de/manual-guides/Dovecot/u_e-dovecot-catchall_vacation/index.html index af79b6e00..9815ac2ea 100644 --- a/de/manual-guides/Dovecot/u_e-dovecot-catchall_vacation/index.html +++ b/de/manual-guides/Dovecot/u_e-dovecot-catchall_vacation/index.html @@ -586,9 +586,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/de/manual-guides/Dovecot/u_e-dovecot-expunge/index.html b/de/manual-guides/Dovecot/u_e-dovecot-expunge/index.html index 26577b4f9..dfd164cee 100644 --- a/de/manual-guides/Dovecot/u_e-dovecot-expunge/index.html +++ b/de/manual-guides/Dovecot/u_e-dovecot-expunge/index.html @@ -591,9 +591,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/de/manual-guides/Dovecot/u_e-dovecot-extra_conf/index.html b/de/manual-guides/Dovecot/u_e-dovecot-extra_conf/index.html index f6b6328d0..a87336411 100644 --- a/de/manual-guides/Dovecot/u_e-dovecot-extra_conf/index.html +++ b/de/manual-guides/Dovecot/u_e-dovecot-extra_conf/index.html @@ -586,9 +586,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/de/manual-guides/Dovecot/u_e-dovecot-fts/index.html b/de/manual-guides/Dovecot/u_e-dovecot-fts/index.html index f8ba9524c..ed27e158c 100644 --- a/de/manual-guides/Dovecot/u_e-dovecot-fts/index.html +++ b/de/manual-guides/Dovecot/u_e-dovecot-fts/index.html @@ -591,9 +591,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/de/manual-guides/Dovecot/u_e-dovecot-idle_interval/index.html b/de/manual-guides/Dovecot/u_e-dovecot-idle_interval/index.html index 226733dd3..3c0468bdf 100644 --- a/de/manual-guides/Dovecot/u_e-dovecot-idle_interval/index.html +++ b/de/manual-guides/Dovecot/u_e-dovecot-idle_interval/index.html @@ -591,9 +591,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/de/manual-guides/Dovecot/u_e-dovecot-mail-crypt/index.html b/de/manual-guides/Dovecot/u_e-dovecot-mail-crypt/index.html index eec6c0d11..2519219ad 100644 --- a/de/manual-guides/Dovecot/u_e-dovecot-mail-crypt/index.html +++ b/de/manual-guides/Dovecot/u_e-dovecot-mail-crypt/index.html @@ -586,9 +586,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/de/manual-guides/Dovecot/u_e-dovecot-more/index.html b/de/manual-guides/Dovecot/u_e-dovecot-more/index.html index 09f34deda..3fd00daae 100644 --- a/de/manual-guides/Dovecot/u_e-dovecot-more/index.html +++ b/de/manual-guides/Dovecot/u_e-dovecot-more/index.html @@ -591,9 +591,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/de/manual-guides/Dovecot/u_e-dovecot-performance/index.html b/de/manual-guides/Dovecot/u_e-dovecot-performance/index.html index 2d7a78eb2..67e2975fc 100644 --- a/de/manual-guides/Dovecot/u_e-dovecot-performance/index.html +++ b/de/manual-guides/Dovecot/u_e-dovecot-performance/index.html @@ -591,9 +591,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/de/manual-guides/Dovecot/u_e-dovecot-public_folder/index.html b/de/manual-guides/Dovecot/u_e-dovecot-public_folder/index.html index 632288a34..81131cbb5 100644 --- a/de/manual-guides/Dovecot/u_e-dovecot-public_folder/index.html +++ b/de/manual-guides/Dovecot/u_e-dovecot-public_folder/index.html @@ -591,9 +591,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/de/manual-guides/Dovecot/u_e-dovecot-static_master/index.html b/de/manual-guides/Dovecot/u_e-dovecot-static_master/index.html index 209999b05..c52505f19 100644 --- a/de/manual-guides/Dovecot/u_e-dovecot-static_master/index.html +++ b/de/manual-guides/Dovecot/u_e-dovecot-static_master/index.html @@ -586,9 +586,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/de/manual-guides/Dovecot/u_e-dovecot-vmail-volume/index.html b/de/manual-guides/Dovecot/u_e-dovecot-vmail-volume/index.html index 672c2c40d..34140bfa1 100644 --- a/de/manual-guides/Dovecot/u_e-dovecot-vmail-volume/index.html +++ b/de/manual-guides/Dovecot/u_e-dovecot-vmail-volume/index.html @@ -591,9 +591,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/de/manual-guides/Nginx/u_e-nginx_custom/index.html b/de/manual-guides/Nginx/u_e-nginx_custom/index.html index 08510a782..a05ff0b3d 100644 --- a/de/manual-guides/Nginx/u_e-nginx_custom/index.html +++ b/de/manual-guides/Nginx/u_e-nginx_custom/index.html @@ -591,9 +591,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/de/manual-guides/Nginx/u_e-nginx_webmail-site/index.html b/de/manual-guides/Nginx/u_e-nginx_webmail-site/index.html index 9fb3f3230..e2f5ca646 100644 --- a/de/manual-guides/Nginx/u_e-nginx_webmail-site/index.html +++ b/de/manual-guides/Nginx/u_e-nginx_webmail-site/index.html @@ -586,9 +586,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/de/manual-guides/Postfix/u_e-postfix-attachment_size/index.html b/de/manual-guides/Postfix/u_e-postfix-attachment_size/index.html index 4498465c7..21481cc19 100644 --- a/de/manual-guides/Postfix/u_e-postfix-attachment_size/index.html +++ b/de/manual-guides/Postfix/u_e-postfix-attachment_size/index.html @@ -586,9 +586,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/de/manual-guides/Postfix/u_e-postfix-custom_transport/index.html b/de/manual-guides/Postfix/u_e-postfix-custom_transport/index.html index 9a6f5d78f..82f63e201 100644 --- a/de/manual-guides/Postfix/u_e-postfix-custom_transport/index.html +++ b/de/manual-guides/Postfix/u_e-postfix-custom_transport/index.html @@ -586,9 +586,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/de/manual-guides/Postfix/u_e-postfix-disable_sender_verification/index.html b/de/manual-guides/Postfix/u_e-postfix-disable_sender_verification/index.html index 964720797..6b1c4072d 100644 --- a/de/manual-guides/Postfix/u_e-postfix-disable_sender_verification/index.html +++ b/de/manual-guides/Postfix/u_e-postfix-disable_sender_verification/index.html @@ -591,9 +591,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/de/manual-guides/Postfix/u_e-postfix-extra_cf/index.html b/de/manual-guides/Postfix/u_e-postfix-extra_cf/index.html index 81948d808..7f931050c 100644 --- a/de/manual-guides/Postfix/u_e-postfix-extra_cf/index.html +++ b/de/manual-guides/Postfix/u_e-postfix-extra_cf/index.html @@ -586,9 +586,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/de/manual-guides/Postfix/u_e-postfix-pflogsumm/index.html b/de/manual-guides/Postfix/u_e-postfix-pflogsumm/index.html index 9f21fcc7c..66ef966a1 100644 --- a/de/manual-guides/Postfix/u_e-postfix-pflogsumm/index.html +++ b/de/manual-guides/Postfix/u_e-postfix-pflogsumm/index.html @@ -586,9 +586,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/de/manual-guides/Postfix/u_e-postfix-postscreen_whitelist/index.html b/de/manual-guides/Postfix/u_e-postfix-postscreen_whitelist/index.html index eb1710cbb..ebdf3a307 100644 --- a/de/manual-guides/Postfix/u_e-postfix-postscreen_whitelist/index.html +++ b/de/manual-guides/Postfix/u_e-postfix-postscreen_whitelist/index.html @@ -586,9 +586,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/de/manual-guides/Postfix/u_e-postfix-relayhost/index.html b/de/manual-guides/Postfix/u_e-postfix-relayhost/index.html index e2266654e..a844f2e61 100644 --- a/de/manual-guides/Postfix/u_e-postfix-relayhost/index.html +++ b/de/manual-guides/Postfix/u_e-postfix-relayhost/index.html @@ -591,9 +591,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/de/manual-guides/Postfix/u_e-postfix-trust_networks/index.html b/de/manual-guides/Postfix/u_e-postfix-trust_networks/index.html index 97b7c48db..776a87b74 100644 --- a/de/manual-guides/Postfix/u_e-postfix-trust_networks/index.html +++ b/de/manual-guides/Postfix/u_e-postfix-trust_networks/index.html @@ -591,9 +591,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/de/manual-guides/Redis/u_e-redis/index.html b/de/manual-guides/Redis/u_e-redis/index.html index 3bbb87bbe..b9b63bd63 100644 --- a/de/manual-guides/Redis/u_e-redis/index.html +++ b/de/manual-guides/Redis/u_e-redis/index.html @@ -591,9 +591,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/de/manual-guides/Rspamd/u_e-rspamd/index.html b/de/manual-guides/Rspamd/u_e-rspamd/index.html index ff4598fa8..5c4698a11 100644 --- a/de/manual-guides/Rspamd/u_e-rspamd/index.html +++ b/de/manual-guides/Rspamd/u_e-rspamd/index.html @@ -591,9 +591,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/de/manual-guides/SOGo/u_e-sogo/index.html b/de/manual-guides/SOGo/u_e-sogo/index.html index d17b5a0a5..ee702c91d 100644 --- a/de/manual-guides/SOGo/u_e-sogo/index.html +++ b/de/manual-guides/SOGo/u_e-sogo/index.html @@ -591,9 +591,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/de/manual-guides/Unbound/u_e-unbound-fwd/index.html b/de/manual-guides/Unbound/u_e-unbound-fwd/index.html index 5f13c3479..9baca78c9 100644 --- a/de/manual-guides/Unbound/u_e-unbound-fwd/index.html +++ b/de/manual-guides/Unbound/u_e-unbound-fwd/index.html @@ -591,9 +591,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/de/manual-guides/Watchdog/u_e-watchdog-thresholds/index.html b/de/manual-guides/Watchdog/u_e-watchdog-thresholds/index.html index 0e3c8f79f..03290263d 100644 --- a/de/manual-guides/Watchdog/u_e-watchdog-thresholds/index.html +++ b/de/manual-guides/Watchdog/u_e-watchdog-thresholds/index.html @@ -591,9 +591,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/de/manual-guides/mailcow-UI/u_e-mailcow_ui-bl_wl/index.html b/de/manual-guides/mailcow-UI/u_e-mailcow_ui-bl_wl/index.html index 2ba8c1c44..ae93bc177 100644 --- a/de/manual-guides/mailcow-UI/u_e-mailcow_ui-bl_wl/index.html +++ b/de/manual-guides/mailcow-UI/u_e-mailcow_ui-bl_wl/index.html @@ -586,9 +586,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/de/manual-guides/mailcow-UI/u_e-mailcow_ui-config/index.html b/de/manual-guides/mailcow-UI/u_e-mailcow_ui-config/index.html index 2a581b05d..c5b0b945f 100644 --- a/de/manual-guides/mailcow-UI/u_e-mailcow_ui-config/index.html +++ b/de/manual-guides/mailcow-UI/u_e-mailcow_ui-config/index.html @@ -586,9 +586,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/de/manual-guides/mailcow-UI/u_e-mailcow_ui-css/index.html b/de/manual-guides/mailcow-UI/u_e-mailcow_ui-css/index.html index 30089b270..fff98e4e3 100644 --- a/de/manual-guides/mailcow-UI/u_e-mailcow_ui-css/index.html +++ b/de/manual-guides/mailcow-UI/u_e-mailcow_ui-css/index.html @@ -586,9 +586,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/de/manual-guides/mailcow-UI/u_e-mailcow_ui-fido/index.html b/de/manual-guides/mailcow-UI/u_e-mailcow_ui-fido/index.html index f16d08459..48ba59e46 100644 --- a/de/manual-guides/mailcow-UI/u_e-mailcow_ui-fido/index.html +++ b/de/manual-guides/mailcow-UI/u_e-mailcow_ui-fido/index.html @@ -591,9 +591,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/de/manual-guides/mailcow-UI/u_e-mailcow_ui-netfilter/index.html b/de/manual-guides/mailcow-UI/u_e-mailcow_ui-netfilter/index.html index 1b25381c6..81742fcf5 100644 --- a/de/manual-guides/mailcow-UI/u_e-mailcow_ui-netfilter/index.html +++ b/de/manual-guides/mailcow-UI/u_e-mailcow_ui-netfilter/index.html @@ -591,9 +591,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/de/manual-guides/mailcow-UI/u_e-mailcow_ui-pushover/index.html b/de/manual-guides/mailcow-UI/u_e-mailcow_ui-pushover/index.html index ad07a414e..e54d48316 100644 --- a/de/manual-guides/mailcow-UI/u_e-mailcow_ui-pushover/index.html +++ b/de/manual-guides/mailcow-UI/u_e-mailcow_ui-pushover/index.html @@ -586,9 +586,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/de/manual-guides/mailcow-UI/u_e-mailcow_ui-spamalias/index.html b/de/manual-guides/mailcow-UI/u_e-mailcow_ui-spamalias/index.html index 24f1cfd93..605fb4716 100644 --- a/de/manual-guides/mailcow-UI/u_e-mailcow_ui-spamalias/index.html +++ b/de/manual-guides/mailcow-UI/u_e-mailcow_ui-spamalias/index.html @@ -586,9 +586,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/de/manual-guides/mailcow-UI/u_e-mailcow_ui-spamfilter/index.html b/de/manual-guides/mailcow-UI/u_e-mailcow_ui-spamfilter/index.html index 3d4d1e6b2..4ff927045 100644 --- a/de/manual-guides/mailcow-UI/u_e-mailcow_ui-spamfilter/index.html +++ b/de/manual-guides/mailcow-UI/u_e-mailcow_ui-spamfilter/index.html @@ -586,9 +586,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/de/manual-guides/mailcow-UI/u_e-mailcow_ui-sub_addressing/index.html b/de/manual-guides/mailcow-UI/u_e-mailcow_ui-sub_addressing/index.html index f4448b086..f05e93991 100644 --- a/de/manual-guides/mailcow-UI/u_e-mailcow_ui-sub_addressing/index.html +++ b/de/manual-guides/mailcow-UI/u_e-mailcow_ui-sub_addressing/index.html @@ -591,9 +591,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/de/manual-guides/mailcow-UI/u_e-mailcow_ui-tags/index.html b/de/manual-guides/mailcow-UI/u_e-mailcow_ui-tags/index.html index 24fc0ca23..da9ef3c20 100644 --- a/de/manual-guides/mailcow-UI/u_e-mailcow_ui-tags/index.html +++ b/de/manual-guides/mailcow-UI/u_e-mailcow_ui-tags/index.html @@ -591,9 +591,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/de/manual-guides/mailcow-UI/u_e-mailcow_ui-tfa/index.html b/de/manual-guides/mailcow-UI/u_e-mailcow_ui-tfa/index.html index c85206dd6..8187d2f01 100644 --- a/de/manual-guides/mailcow-UI/u_e-mailcow_ui-tfa/index.html +++ b/de/manual-guides/mailcow-UI/u_e-mailcow_ui-tfa/index.html @@ -591,9 +591,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/de/manual-guides/u_e-80_to_443/index.html b/de/manual-guides/u_e-80_to_443/index.html index 3c79e77ff..a8a9283ce 100644 --- a/de/manual-guides/u_e-80_to_443/index.html +++ b/de/manual-guides/u_e-80_to_443/index.html @@ -586,9 +586,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI @@ -2464,7 +2568,7 @@

    HTTP auf HTTPS umleiten

    Seit dem 28. Februar 2017 wird mailcow mit aktivierten Ports 80 und 443 geliefert.

    -

    Verwenden Sie die untenstehende Konfiguration nicht für Reverse-Proxy-Setups, bitte lesen Sie dazu unsere Reverse-Proxy-Anleitung, die einen Redirect von HTTP zu HTTPS beinhaltet.

    +

    Verwenden Sie die untenstehende Konfiguration nicht für Reverse-Proxy-Setups, bitte lesen Sie dazu unsere Reverse-Proxy-Anleitung, die einen Redirect von HTTP zu HTTPS beinhaltet.

    Öffne mailcow.conf und setze HTTP_BIND= - falls nicht bereits gesetzt.

    Erstellen Sie eine neue Datei data/conf/nginx/redirect.conf und fügen Sie die folgende Serverkonfiguration in die Datei ein:

    server {
    @@ -2514,7 +2618,7 @@
       
         
           Letztes Update:
    -      2023-01-13 18:16:08
    +      2023-06-14 00:15:06
           
         
       
    diff --git a/de/manual-guides/u_e-autodiscover_config/index.html b/de/manual-guides/u_e-autodiscover_config/index.html
    index 55aa398c6..62303f484 100644
    --- a/de/manual-guides/u_e-autodiscover_config/index.html
    +++ b/de/manual-guides/u_e-autodiscover_config/index.html
    @@ -586,9 +586,36 @@
       
       
       
    +    
    +    
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/de/manual-guides/u_e-reeanble-weak-protocols/index.html b/de/manual-guides/u_e-reeanble-weak-protocols/index.html index 6b04d0f99..246695ab8 100644 --- a/de/manual-guides/u_e-reeanble-weak-protocols/index.html +++ b/de/manual-guides/u_e-reeanble-weak-protocols/index.html @@ -586,9 +586,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/de/manual-guides/u_e-update-hooks/index.html b/de/manual-guides/u_e-update-hooks/index.html index e987d0d5d..380a48a86 100644 --- a/de/manual-guides/u_e-update-hooks/index.html +++ b/de/manual-guides/u_e-update-hooks/index.html @@ -586,9 +586,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/de/manual-guides/u_e-why_unbound/index.html b/de/manual-guides/u_e-why_unbound/index.html index 128642ff9..2271a7687 100644 --- a/de/manual-guides/u_e-why_unbound/index.html +++ b/de/manual-guides/u_e-why_unbound/index.html @@ -586,9 +586,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/de/models/model-acl/index.html b/de/models/model-acl/index.html index 1c0276b1a..f9ace2b7f 100644 --- a/de/models/model-acl/index.html +++ b/de/models/model-acl/index.html @@ -586,9 +586,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/de/models/model-passwd/index.html b/de/models/model-passwd/index.html index f8e2acd6b..88120bc0a 100644 --- a/de/models/model-passwd/index.html +++ b/de/models/model-passwd/index.html @@ -591,9 +591,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/de/models/model-sender_rcv/index.html b/de/models/model-sender_rcv/index.html index 67b9802e8..d91ffe187 100644 --- a/de/models/model-sender_rcv/index.html +++ b/de/models/model-sender_rcv/index.html @@ -591,9 +591,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/de/post_installation/firststeps-disable_ipv6/index.html b/de/post_installation/firststeps-disable_ipv6/index.html index bb6604d98..4a01d0679 100644 --- a/de/post_installation/firststeps-disable_ipv6/index.html +++ b/de/post_installation/firststeps-disable_ipv6/index.html @@ -596,9 +596,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/de/post_installation/firststeps-dmarc_reporting/index.html b/de/post_installation/firststeps-dmarc_reporting/index.html index 9f27d4a37..2918bfd54 100644 --- a/de/post_installation/firststeps-dmarc_reporting/index.html +++ b/de/post_installation/firststeps-dmarc_reporting/index.html @@ -658,9 +658,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/de/post_installation/firststeps-ip_bindings/index.html b/de/post_installation/firststeps-ip_bindings/index.html index 8c3e2e5ec..2436d02b7 100644 --- a/de/post_installation/firststeps-ip_bindings/index.html +++ b/de/post_installation/firststeps-ip_bindings/index.html @@ -637,9 +637,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/de/post_installation/firststeps-local_mta/index.html b/de/post_installation/firststeps-local_mta/index.html index b03d06b72..4af12697a 100644 --- a/de/post_installation/firststeps-local_mta/index.html +++ b/de/post_installation/firststeps-local_mta/index.html @@ -596,9 +596,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/de/post_installation/firststeps-logging/index.html b/de/post_installation/firststeps-logging/index.html index e751d175e..7e5dcb546 100644 --- a/de/post_installation/firststeps-logging/index.html +++ b/de/post_installation/firststeps-logging/index.html @@ -14,7 +14,7 @@ - + @@ -677,9 +677,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/de/post_installation/firststeps-rspamd_ui/index.html b/de/post_installation/firststeps-rspamd_ui/index.html index 2d23476a4..0c78c9954 100644 --- a/de/post_installation/firststeps-rspamd_ui/index.html +++ b/de/post_installation/firststeps-rspamd_ui/index.html @@ -11,7 +11,7 @@ - + @@ -588,9 +588,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + diff --git a/de/post_installation/firststeps-snat/index.html b/de/post_installation/firststeps-snat/index.html index c54319e80..da7e0a9bb 100644 --- a/de/post_installation/firststeps-snat/index.html +++ b/de/post_installation/firststeps-snat/index.html @@ -588,9 +588,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/de/post_installation/firststeps-ssl/index.html b/de/post_installation/firststeps-ssl/index.html index 3baee217b..c2dbceacb 100644 --- a/de/post_installation/firststeps-ssl/index.html +++ b/de/post_installation/firststeps-ssl/index.html @@ -719,9 +719,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI @@ -2886,7 +2990,7 @@ Sie sollten sicherstellen, dass diese Clients den MAILCOW_HOSTNAME docker restart $(docker ps -qaf name=nginx-mailcow) docker restart $(docker ps -qaf name=dovecot-mailcow)
  • -

    Siehe Post-Hook-Skript für Nicht-mailcow-ACME-Clients für ein vollständiges Beispielskript.

    +

    Siehe Post-Hook-Skript für Nicht-mailcow-ACME-Clients für ein vollständiges Beispielskript.

    Test gegen das ACME-Verzeichnis

    Bearbeiten Sie mailcow.conf und fügen Sie LE_STAGING=y hinzu.

    Führen Sie den folgenden Befehl aus, um Ihre Änderungen zu aktivieren:

    @@ -2959,7 +3063,7 @@ bash helper-scripts/expiry-dates.sh Letztes Update: - 2023-01-13 18:34:22 + 2023-06-14 00:15:06 diff --git a/de/post_installation/firststeps-sync_jobs_migration/index.html b/de/post_installation/firststeps-sync_jobs_migration/index.html index 0b4c877cc..d78e2a191 100644 --- a/de/post_installation/firststeps-sync_jobs_migration/index.html +++ b/de/post_installation/firststeps-sync_jobs_migration/index.html @@ -593,9 +593,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/de/post_installation/reverse-proxy/r_p-apache24/index.html b/de/post_installation/reverse-proxy/r_p-apache24/index.html new file mode 100644 index 000000000..d81172c9b --- /dev/null +++ b/de/post_installation/reverse-proxy/r_p-apache24/index.html @@ -0,0 +1,2728 @@ + + + + + + + + + + + + + + + + + + + + + + + + Apache 2.4 - mailcow: dockerized Dokumentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    + +
    +
    + + + +
    + + + + + + +
    + + +
    + +
    + + + + + + +
    +
    + + + +
    +
    +
    + + + + +
    +
    +
    + + + +
    +
    +
    + + + +
    +
    +
    + + + +
    +
    + + + + + + + +

    Apache 2.4

    + +
    +

    Wichtig

    +

    Lesen Sie zuerst die Übersicht.

    +
    +

    Erforderliche Module: +

    a2enmod rewrite proxy proxy_http headers ssl
    +

    +

    Let's Encrypt wird unserem Rewrite folgen, Zertifikatsanfragen in mailcow werden problemlos funktionieren.

    +

    Die hervorgehobenen Zeilen müssen beachtet werden.

    +
    <VirtualHost *:80>
    +  ServerName ZU MAILCOW HOSTNAMEN ÄNDERN
    +  ServerAlias autodiscover.*
    +  ServerAlias autoconfig.*
    +  RewriteEngine on
    +
    +  RewriteCond %{HTTPS} off
    +  RewriteRule ^/?(.*) https://%{HTTP_HOST}/$1 [R=301,L]
    +
    +  ProxyPass / http://127.0.0.1:8080/
    +  ProxyPassReverse / http://127.0.0.1:8080/
    +  ProxyPreserveHost On
    +  ProxyAddHeaders On
    +  RequestHeader set X-Forwarded-Proto "http"
    +</VirtualHost>
    +<VirtualHost *:443>
    +  ServerName ZU MAILCOW HOSTNAMEN ÄNDERN
    +  ServerAlias autodiscover.*
    +  ServerAlias autoconfig.*
    +
    +  # You should proxy to a plain HTTP session to offload SSL processing
    +  ProxyPass /Microsoft-Server-ActiveSync http://127.0.0.1:8080/Microsoft-Server-ActiveSync connectiontimeout=4000
    +  ProxyPassReverse /Microsoft-Server-ActiveSync http://127.0.0.1:8080/Microsoft-Server-ActiveSync
    +  ProxyPass / http://127.0.0.1:8080/
    +  ProxyPassReverse / http://127.0.0.1:8080/
    +  ProxyPreserveHost On
    +  ProxyAddHeaders On
    +  RequestHeader set X-Forwarded-Proto "https"
    +
    +  SSLCertificateFile MAILCOW_ORDNER/data/assets/ssl/cert.pem
    +  SSLCertificateKeyFile MAILCOW_ORDNER/data/assets/ssl/key.pem
    +
    +  # Wenn Sie einen HTTPS-Host als Proxy verwenden möchten:
    +  #SSLProxyEngine On
    +
    +  # Wenn Sie einen Proxy für einen nicht vertrauenswürdigen HTTPS-Host einrichten wollen:
    +  #SSLProxyVerify none
    +  #SSLProxyCheckPeerCN off
    +  #SSLProxyCheckPeerName off
    +  #SSLProxyCheckPeerExpire off
    +</VirtualHost>
    +
    + +
    +
    + + + Letztes Update: + 2023-06-14 00:42:41 + + + +
    + + + + + + +
    +
    + + + + +
    + + + +
    + + + +
    +
    +
    +
    + + + + + + + + + + + \ No newline at end of file diff --git a/de/post_installation/reverse-proxy/r_p-caddy2/index.html b/de/post_installation/reverse-proxy/r_p-caddy2/index.html new file mode 100644 index 000000000..df3177c9b --- /dev/null +++ b/de/post_installation/reverse-proxy/r_p-caddy2/index.html @@ -0,0 +1,2732 @@ + + + + + + + + + + + + + + + + + + + + + + + + Caddy v2 (von der Community unterstützt) - mailcow: dockerized Dokumentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    + +
    +
    + + + +
    + + + + + + +
    + + +
    + +
    + + + + + + +
    +
    + + + +
    +
    +
    + + + + +
    +
    +
    + + + +
    +
    +
    + + + +
    +
    +
    + + + +
    +
    + + + + + + + +

    Caddy v2 (von der Community unterstützt)

    + +
    +

    Wichtig

    +

    Lesen Sie zuerst die Übersicht.

    +
    +
    +

    Warnung

    +

    Dies ist ein nicht unterstützter Communitybeitrag. Korrekturen sind immer erwünscht!

    +
    +

    Die Konfiguration von Caddy mit mailcow ist sehr simpel.

    +

    In der Caddyfile muss einfach nur ein Bereich für den E-Mailserver angelegt werden.

    +

    Bspw:

    +
    MAILCOW_HOSTNAME autodiscover.MAILCOW_HOSTNAME autoconfig.MAILCOW_HOSTNAME {
    +        log {
    +                output file /var/log/caddy/MAILCOW_HOSTNAME.log {
    +                        roll_disabled
    +                        roll_size 512M
    +                        roll_uncompressed
    +                        roll_local_time
    +                        roll_keep 3
    +                        roll_keep_for 48h
    +                }
    +        }
    +
    +        reverse_proxy 127.0.0.1:HTTP_BIND
    +}
    +
    +

    Dies erlaubt es Caddy automatisch die Zertifikate zu erstellen und den Traffic für diese erwähnten Domains anzunehmen und an mailcow weiterzuleiten.

    +

    Wichtig: Der ACME Client der mailcow muss deaktiviert sein, da es sonst zu Fehlern seitens mailcow kommt.

    +

    Da Caddy sich direkt selbst um die Zertifikate kümmert, können wir mit dem folgenden Skript die Caddy generierten Zertifikate in die mailcow inkludieren:

    +
    #!/bin/bash
    +MD5SUM_CURRENT_CERT=($(md5sum /opt/mailcow-dockerized/data/assets/ssl/cert.pem))
    +MD5SUM_NEW_CERT=($(md5sum /var/lib/caddy/.local/share/caddy/certificates/acme-v02.api.letsencrypt.org-directory/your.domain.tld/your.domain.tld.crt))
    +
    +if [ $MD5SUM_CURRENT_CERT != $MD5SUM_NEW_CERT ]; then
    +        cp /var/lib/caddy/.local/share/caddy/certificates/acme-v02.api.letsencrypt.org-directory/your.domain.tld/your.domain.tld.crt /opt/mailcow-dockerized/data/assets/ssl/cert.pem
    +        cp /var/lib/caddy/.local/share/caddy/certificates/acme-v02.api.letsencrypt.org-directory/your.domain.tld/your.domain.tld.key /opt/mailcow-dockerized/data/assets/ssl/key.pem
    +        postfix_c=$(docker ps -qaf name=postfix-mailcow)
    +        dovecot_c=$(docker ps -qaf name=dovecot-mailcow)
    +        nginx_c=$(docker ps -qaf name=nginx-mailcow)
    +        docker restart ${postfix_c} ${dovecot_c} ${nginx_c}
    +
    +else
    +        echo "Certs not copied from Caddy (Not needed)"
    +fi
    +
    +
    +

    Achtung

    +

    Der Zertifikatspfad von Caddy variiert je nach Installationsart.
    +Bei diesem Installationsbeispiel wurde Caddy mithilfe des Caddy Repos (weitere Informationen hier) installiert.
    +
    +Um den Caddy Zertifikatspfad auf Ihrem System herauszufinden, genügt ein find / -name "certificates".

    +
    +

    Dieses Skript könnte dann als Cronjob jede Stunde aufgerufen werden:

    +
    0 * * * * /bin/bash /path/to/script/deploy-certs.sh  >/dev/null 2>&1
    +
    + +
    +
    + + + Letztes Update: + 2023-06-14 00:42:41 + + + +
    + + + + + + +
    +
    + + + + +
    + + + +
    + + + +
    +
    +
    +
    + + + + + + + + + + + \ No newline at end of file diff --git a/de/post_installation/reverse-proxy/r_p-haproxy/index.html b/de/post_installation/reverse-proxy/r_p-haproxy/index.html new file mode 100644 index 000000000..ea2c6593e --- /dev/null +++ b/de/post_installation/reverse-proxy/r_p-haproxy/index.html @@ -0,0 +1,2696 @@ + + + + + + + + + + + + + + + + + + + + + + + + HAProxy (von der Community unterstützt) - mailcow: dockerized Dokumentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    + +
    +
    + + + +
    + + + + + + +
    + + +
    + +
    + + + + + + +
    +
    + + + +
    +
    +
    + + + + +
    +
    +
    + + + +
    +
    +
    + + + +
    +
    +
    + + + +
    +
    + + + + + + + +

    HAProxy (von der Community unterstützt)

    + +
    +

    Wichtig

    +

    Lesen Sie zuerst die Übersicht.

    +
    +
    +

    Warnung

    +

    Dies ist ein nicht unterstützter Community Beitrag. Korrekturen sind immer erwünscht!

    +
    +

    Wichtig/Fix erwünscht: Dieses Beispiel leitet nur HTTPS-Verkehr weiter und benutzt nicht den in mailcow eingebauten ACME-Client.

    +
    frontend https-in
    +  bind :::443 v4v6 ssl crt mailcow.pem
    +  default_backend mailcow
    +
    +backend mailcow
    +  option forwardfor
    +  http-request set-header X-Forwarded-Proto https if { ssl_fc }
    +  http-request set-header X-Forwarded-Proto http if !{ ssl_fc }
    +  server mailcow 127.0.0.1:8080 check
    +
    + +
    +
    + + + Letztes Update: + 2023-06-14 00:42:41 + + + +
    + + + + + + +
    +
    + + + + +
    + + + +
    + + + +
    +
    +
    +
    + + + + + + + + + + + \ No newline at end of file diff --git a/de/post_installation/reverse-proxy/r_p-nginx/index.html b/de/post_installation/reverse-proxy/r_p-nginx/index.html new file mode 100644 index 000000000..a5f68fba4 --- /dev/null +++ b/de/post_installation/reverse-proxy/r_p-nginx/index.html @@ -0,0 +1,2735 @@ + + + + + + + + + + + + + + + + + + + + + + + + Nginx - mailcow: dockerized Dokumentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    + +
    +
    + + + +
    + + + + + + +
    + + +
    + +
    + + + + + + +
    +
    + + + +
    +
    +
    + + + + +
    +
    +
    + + + +
    +
    +
    + + + +
    +
    +
    + + + +
    +
    + + + + + + + +

    Nginx

    + +
    +

    Wichtig

    +

    Lesen Sie zuerst die Übersicht.

    +
    +

    Let's Encrypt folgt unserem Rewrite, Zertifikatsanfragen funktionieren problemlos.

    +

    Achten Sie auf die hervorgehobenen Zeilen.

    +
    server {
    +  listen 80 default_server;
    +  listen [::]:80 default_server;
    +  server_name ZU MAILCOW HOSTNAMEN ÄNDERN autodiscover.* autoconfig.*;
    +  return 301 https://$host$request_uri;
    +}
    +server {
    +  listen 443 ssl http2;
    +  listen [::]:443 ssl http2;
    +  server_name ZU MAILCOW HOSTNAMEN ÄNDERN autodiscover.* autoconfig.*;
    +
    +  ssl_certificate MAILCOW_PATH/data/assets/ssl/cert.pem;
    +  ssl_certificate_key MAILCOW_PATH/data/assets/ssl/key.pem;
    +  ssl_session_timeout 1d;
    +  ssl_session_cache shared:SSL:50m;
    +  ssl_session_tickets off;
    +
    +  # Siehe https://ssl-config.mozilla.org/#server=nginx für die neuesten Empfehlungen zu ssl-Einstellungen
    +  # Ein Beispiel für eine Konfiguration ist unten angegeben
    +  ssl_protocols TLSv1.2;
    +  ssl_ciphers HIGH:!aNULL:!MD5:!SHA1:!kRSA;
    +  ssl_prefer_server_ciphers off;
    +
    +  location /Microsoft-Server-ActiveSync {
    +    proxy_pass http://127.0.0.1:8080/Microsoft-Server-ActiveSync;
    +    proxy_set_header Host $http_host;
    +    proxy_set_header X-Real-IP $remote_addr;
    +    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    +    proxy_set_header X-Forwarded-Proto $scheme;
    +    proxy_connect_timeout 75;
    +    proxy_send_timeout 3650;
    +    proxy_read_timeout 3650;
    +    proxy_buffers 64 512k; # Seit dem 2022-04 Update nötig für SOGo
    +    client_body_buffer_size 512k;
    +    client_max_body_size 0;
    +  }
    +
    +  location / {
    +    proxy_pass http://127.0.0.1:8080/;
    +    proxy_set_header Host $http_host;
    +    proxy_set_header X-Real-IP $remote_addr;
    +    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    +    proxy_set_header X-Forwarded-Proto $scheme;
    +    client_max_body_size 0;
    +  # Die folgenden Proxy-Buffer müssen gesetzt werden, wenn Sie SOGo nach dem Update 2022-04 (April 2022) verwenden wollen
    +  # Andernfalls wird ein Login wie folgt fehlschlagen: https://github.com/mailcow/mailcow-dockerized/issues/4537
    +    proxy_buffer_size 128k;
    +    proxy_buffers 64 512k;
    +    proxy_busy_buffers_size 512k;
    +  }
    +}
    +
    + +
    +
    + + + Letztes Update: + 2023-06-14 00:42:41 + + + +
    + + + + + + +
    +
    + + + + +
    + + + +
    + + + +
    +
    +
    +
    + + + + + + + + + + + \ No newline at end of file diff --git a/de/post_installation/firststeps-rp/index.html b/de/post_installation/reverse-proxy/r_p-traefik2/index.html similarity index 64% rename from de/post_installation/firststeps-rp/index.html rename to de/post_installation/reverse-proxy/r_p-traefik2/index.html index 850f6d6b2..2ab4bf188 100644 --- a/de/post_installation/firststeps-rp/index.html +++ b/de/post_installation/reverse-proxy/r_p-traefik2/index.html @@ -8,27 +8,27 @@ - + - + - + - + - Reverse Proxy - mailcow: dockerized Dokumentation + Traefik v2 (von der Community unterstützt) - mailcow: dockerized Dokumentation - + - + @@ -38,9 +38,9 @@ - + - + @@ -49,11 +49,11 @@ - + - + @@ -61,15 +61,15 @@ - + - + - + @@ -94,11 +94,6 @@
    - - - Zum Inhalt - -
    @@ -129,9 +124,9 @@
    @@ -2594,183 +2567,21 @@ -

    Reverse Proxy

    +

    Traefik v2 (von der Community unterstützt)

    -

    Sie müssen die Nginx-Seite, die mit mailcow: dockerized geliefert wird, nicht ändern. -mailcow: dockerized vertraut auf das Standard-Gateway IP 172.22.1.1 als Proxy.

    -

    1. Stellen Sie sicher, dass Sie HTTP_BIND und HTTPS_BIND in mailcow.conf auf eine lokale Adresse ändern und die Ports entsprechend einstellen, zum Beispiel: -

    HTTP_BIND=127.0.0.1
    -HTTP_PORT=8080
    -HTTPS_BIND=127.0.0.1
    -HTTPS_PORT=8443
    -

    -

    Dadurch werden auch die Bindungen innerhalb des Nginx-Containers geändert! Dies ist wichtig, wenn Sie sich entscheiden, einen Proxy innerhalb von Docker zu verwenden.

    -

    WICHTIG: Verwenden Sie nicht Port 8081, 9081 oder 65510!

    -

    Erzeugen Sie die betroffenen Container neu, indem Sie den folgenden Befehl ausführen:

    -
    -
    -
    -
    docker compose up -d
    -
    -
    -
    -
    docker-compose up -d
    -
    -
    -
    -
    -

    Wichtige Informationen, bitte lesen Sie diese sorgfältig durch!

    -
    -

    Info

    -

    Wenn Sie planen, einen Reverse-Proxy zu verwenden und einen anderen Servernamen als MAILCOW_HOSTNAME verwenden wollen, müssen Sie Zusätzliche Servernamen für mailcow UI am Ende dieser Seite hinzufügen.

    -
    -

    Warnung

    -

    Stellen Sie sicher, dass Sie generate_config.sh ausführen, bevor Sie die untenstehenden Konfigurationsbeispiele aktivieren. -Das Skript generate_config.sh kopiert die Snake-oil Zertifikate an den richtigen Ort, so dass die Dienste nicht aufgrund fehlender Dateien nicht starten können.

    +

    Wichtig

    +

    Lesen Sie zuerst die Übersicht.

    Warnung

    -

    Wenn Sie TLS SNI aktivieren (ENABLE_TLS_SNI in mailcow.conf), müssen die Zertifikatspfade in Ihrem Reverse-Proxy mit den korrekten Pfaden in data/assets/ssl/{hostname} übereinstimmen. Die Zertifikate werden in data/assets/ssl/{hostname1,hostname2,etc} aufgeteilt und werden daher nicht funktionieren, wenn Sie die Beispiele von unten kopieren, die auf data/assets/ssl/cert.pem etc. zeigen.

    -
    -
    -

    Info

    -

    Die Verwendung der untenstehenden Site-Konfigurationen wird acme-Anfragen an mailcow weiterleiten und es die Zertifikate selbst verwalten lassen. -Der Nachteil der Verwendung von mailcow als ACME-Client hinter einem Reverse-Proxy ist, dass Sie Ihren Webserver neu laden müssen, nachdem acme-mailcow das Zertifikat geändert/erneuert/erstellt hat. Sie können entweder Ihren Webserver täglich neu laden oder ein Skript schreiben, um die Datei auf Änderungen zu überwachen. -Auf vielen Servern wird logrotate den Webserver sowieso täglich neu laden.

    -

    Wenn Sie eine lokale Certbot-Installation verwenden möchten, müssen Sie die SSL-Zertifikatsparameter entsprechend ändern. -Stellen Sie sicher, dass Sie ein Post-Hook-Skript ausführen, wenn Sie sich entscheiden, externe ACME-Clients zu verwenden. Ein Beispiel finden Sie am Ende dieser Seite.

    -
    -

    2. Konfigurieren Sie Ihren lokalen Webserver als Reverse Proxy:

    -

    Apache 2.4

    -

    Erforderliche Module: -

    a2enmod rewrite proxy proxy_http headers ssl
    -

    -

    Let's Encrypt wird unserem Rewrite folgen, Zertifikatsanfragen in mailcow werden problemlos funktionieren.

    -

    Die hervorgehobenen Zeilen müssen beachtet werden.

    -
    <VirtualHost *:80>
    -  ServerName ZU MAILCOW HOSTNAMEN ÄNDERN
    -  ServerAlias autodiscover.*
    -  ServerAlias autoconfig.*
    -  RewriteEngine on
    -
    -  RewriteCond %{HTTPS} off
    -  RewriteRule ^/?(.*) https://%{HTTP_HOST}/$1 [R=301,L]
    -
    -  ProxyPass / http://127.0.0.1:8080/
    -  ProxyPassReverse / http://127.0.0.1:8080/
    -  ProxyPreserveHost On
    -  ProxyAddHeaders On
    -  RequestHeader set X-Forwarded-Proto "http"
    -</VirtualHost>
    -<VirtualHost *:443>
    -  ServerName ZU MAILCOW HOSTNAMEN ÄNDERN
    -  ServerAlias autodiscover.*
    -  ServerAlias autoconfig.*
    -
    -  # You should proxy to a plain HTTP session to offload SSL processing
    -  ProxyPass /Microsoft-Server-ActiveSync http://127.0.0.1:8080/Microsoft-Server-ActiveSync connectiontimeout=4000
    -  ProxyPassReverse /Microsoft-Server-ActiveSync http://127.0.0.1:8080/Microsoft-Server-ActiveSync
    -  ProxyPass / http://127.0.0.1:8080/
    -  ProxyPassReverse / http://127.0.0.1:8080/
    -  ProxyPreserveHost On
    -  ProxyAddHeaders On
    -  RequestHeader set X-Forwarded-Proto "https"
    -
    -  SSLCertificateFile MAILCOW_ORDNER/data/assets/ssl/cert.pem
    -  SSLCertificateKeyFile MAILCOW_ORDNER/data/assets/ssl/key.pem
    -
    -  # Wenn Sie einen HTTPS-Host als Proxy verwenden möchten:
    -  #SSLProxyEngine On
    -
    -  # Wenn Sie einen Proxy für einen nicht vertrauenswürdigen HTTPS-Host einrichten wollen:
    -  #SSLProxyVerify none
    -  #SSLProxyCheckPeerCN off
    -  #SSLProxyCheckPeerName off
    -  #SSLProxyCheckPeerExpire off
    -</VirtualHost>
    -
    -

    Nginx

    -

    Let's Encrypt folgt unserem Rewrite, Zertifikatsanfragen funktionieren problemlos.

    -

    Achten Sie auf die hervorgehobenen Zeilen.

    -
    server {
    -  listen 80 default_server;
    -  listen [::]:80 default_server;
    -  server_name ZU MAILCOW HOSTNAMEN ÄNDERN autodiscover.* autoconfig.*;
    -  return 301 https://$host$request_uri;
    -}
    -server {
    -  listen 443 ssl http2;
    -  listen [::]:443 ssl http2;
    -  server_name ZU MAILCOW HOSTNAMEN ÄNDERN autodiscover.* autoconfig.*;
    -
    -  ssl_certificate MAILCOW_PATH/data/assets/ssl/cert.pem;
    -  ssl_certificate_key MAILCOW_PATH/data/assets/ssl/key.pem;
    -  ssl_session_timeout 1d;
    -  ssl_session_cache shared:SSL:50m;
    -  ssl_session_tickets off;
    -
    -  # Siehe https://ssl-config.mozilla.org/#server=nginx für die neuesten Empfehlungen zu ssl-Einstellungen
    -  # Ein Beispiel für eine Konfiguration ist unten angegeben
    -  ssl_protocols TLSv1.2;
    -  ssl_ciphers HIGH:!aNULL:!MD5:!SHA1:!kRSA;
    -  ssl_prefer_server_ciphers off;
    -
    -  location /Microsoft-Server-ActiveSync {
    -    proxy_pass http://127.0.0.1:8080/Microsoft-Server-ActiveSync;
    -    proxy_set_header Host $http_host;
    -    proxy_set_header X-Real-IP $remote_addr;
    -    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    -    proxy_set_header X-Forwarded-Proto $scheme;
    -    proxy_connect_timeout 75;
    -    proxy_send_timeout 3650;
    -    proxy_read_timeout 3650;
    -    proxy_buffers 64 512k; # Seit dem 2022-04 Update nötig für SOGo
    -    client_body_buffer_size 512k;
    -    client_max_body_size 0;
    -  }
    -
    -  location / {
    -    proxy_pass http://127.0.0.1:8080/;
    -    proxy_set_header Host $http_host;
    -    proxy_set_header X-Real-IP $remote_addr;
    -    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    -    proxy_set_header X-Forwarded-Proto $scheme;
    -    client_max_body_size 0;
    -  # Die folgenden Proxy-Buffer müssen gesetzt werden, wenn Sie SOGo nach dem Update 2022-04 (April 2022) verwenden wollen
    -  # Andernfalls wird ein Login wie folgt fehlschlagen: https://github.com/mailcow/mailcow-dockerized/issues/4537
    -    proxy_buffer_size 128k;
    -    proxy_buffers 64 512k;
    -    proxy_busy_buffers_size 512k;
    -  }
    -}
    -
    -

    HAProxy (von der Community unterstützt)

    -
    -

    Warnung

    -

    Dies ist ein nicht unterstützter Community Beitrag. Korrekturen sind immer erwünscht!

    -
    -

    Wichtig/Fix erwünscht: Dieses Beispiel leitet nur HTTPS-Verkehr weiter und benutzt nicht den in mailcow eingebauten ACME-Client.

    -
    frontend https-in
    -  bind :::443 v4v6 ssl crt mailcow.pem
    -  default_backend mailcow
    -
    -backend mailcow
    -  option forwardfor
    -  http-request set-header X-Forwarded-Proto https if { ssl_fc }
    -  http-request set-header X-Forwarded-Proto http if !{ ssl_fc }
    -  server mailcow 127.0.0.1:8080 check
    -
    -

    Traefik v2 (von der Community unterstützt)

    -
    -

    Warnung

    Dies ist ein nicht unterstützter Community Beitrag. Korrekturen sind immer erwünscht!

    Wichtig: Diese Konfiguration deckt nur das "Reverseproxing" des Webpanels (nginx-mailcow) unter Verwendung von Traefik v2 ab. Wenn Sie auch die Mail-Dienste wie dovecot, postfix... reproxen wollen, müssen Sie die folgende Konfiguration an jeden Container anpassen und einen EntryPoint in Ihrer traefik.toml oder traefik.yml (je nachdem, welche Konfiguration Sie verwenden) für jeden Port erstellen.

    In diesem Abschnitt gehen wir davon aus, dass Sie Ihren Traefik 2 [certificatesresolvers] in Ihrer Traefik-Konfigurationsdatei richtig konfiguriert haben und auch acme verwenden. Das folgende Beispiel verwendet Lets Encrypt, aber Sie können es gerne auf Ihren eigenen Zertifikatsresolver ändern. Eine grundlegende Traefik 2 toml-Konfigurationsdatei mit allen oben genannten Elementen, die für dieses Beispiel verwendet werden kann, finden Sie hier traefik.toml, falls Sie eine solche Datei benötigen oder einen Hinweis, wie Sie Ihre Konfiguration anpassen können.

    Zuallererst werden wir den acme-mailcow-Container deaktivieren, da wir die von traefik bereitgestellten Zertifikate verwenden werden. Dazu müssen wir SKIP_LETS_ENCRYPT=y in unserer mailcow.conf setzen und den folgenden Befehl ausführen, um die Änderungen zu übernehmen:

    -
    +
    docker compose up -d
    @@ -2837,7 +2648,7 @@ Dazu müssen wir SKIP_LETS_ENCRYPT=y in unserer mailcow.conf<
         name: traefik_acme
     

    Starten Sie die neuen Container mit:

    -
    +
    docker compose up -d
    @@ -2854,93 +2665,13 @@ Dazu müssen wir SKIP_LETS_ENCRYPT=y in unserer mailcow.conf<
     

    Sie können es über die Kommandozeile ausführen oder das hier gezeigte docker-compose.yml verwenden.

    Nachdem wir die Zertifikate übertragen haben, müssen wir die Konfigurationen aus unseren Postfix- und Dovecot-Containern neu laden und die Zertifikate überprüfen. Wie das geht, sehen Sie hier.

    Und das sollte es gewesen sein 😊, Sie können überprüfen, ob der Traefik-Router einwandfrei funktioniert, indem Sie das Dashboard von Traefik / traefik logs / über https auf die eingestellte Domain zugreifen, oder / und HTTPS, SMTP und IMAP mit den Befehlen auf der zuvor verlinkten Seite überprüfen.

    -

    Caddy v2 (von der Community unterstützt)

    -
    -

    Warnung

    -

    Dies ist ein nicht unterstützter Communitybeitrag. Korrekturen sind immer erwünscht!

    -
    -

    Die Konfiguration von Caddy mit mailcow ist sehr simpel.

    -

    In der Caddyfile muss einfach nur ein Bereich für den E-Mailserver angelegt werden.

    -

    Bspw:

    -
    MAILCOW_HOSTNAME autodiscover.MAILCOW_HOSTNAME autoconfig.MAILCOW_HOSTNAME {
    -        log {
    -                output file /var/log/caddy/MAILCOW_HOSTNAME.log {
    -                        roll_disabled
    -                        roll_size 512M
    -                        roll_uncompressed
    -                        roll_local_time
    -                        roll_keep 3
    -                        roll_keep_for 48h
    -                }
    -        }
    -
    -        reverse_proxy 127.0.0.1:HTTP_BIND
    -}
    -
    -

    Dies erlaubt es Caddy automatisch die Zertifikate zu erstellen und den Traffic für diese erwähnten Domains anzunehmen und an mailcow weiterzuleiten.

    -

    Wichtig: Der ACME Client der mailcow muss deaktiviert sein, da es sonst zu Fehlern seitens mailcow kommt.

    -

    Da Caddy sich direkt selbst um die Zertifikate kümmert, können wir mit dem folgenden Skript die Caddy generierten Zertifikate in die mailcow inkludieren:

    -
    #!/bin/bash
    -MD5SUM_CURRENT_CERT=($(md5sum /opt/mailcow-dockerized/data/assets/ssl/cert.pem))
    -MD5SUM_NEW_CERT=($(md5sum /var/lib/caddy/.local/share/caddy/certificates/acme-v02.api.letsencrypt.org-directory/your.domain.tld/your.domain.tld.crt))
    -
    -if [ $MD5SUM_CURRENT_CERT != $MD5SUM_NEW_CERT ]; then
    -        cp /var/lib/caddy/.local/share/caddy/certificates/acme-v02.api.letsencrypt.org-directory/your.domain.tld/your.domain.tld.crt /opt/mailcow-dockerized/data/assets/ssl/cert.pem
    -        cp /var/lib/caddy/.local/share/caddy/certificates/acme-v02.api.letsencrypt.org-directory/your.domain.tld/your.domain.tld.key /opt/mailcow-dockerized/data/assets/ssl/key.pem
    -        postfix_c=$(docker ps -qaf name=postfix-mailcow)
    -        dovecot_c=$(docker ps -qaf name=dovecot-mailcow)
    -        nginx_c=$(docker ps -qaf name=nginx-mailcow)
    -        docker restart ${postfix_c} ${dovecot_c} ${nginx_c}
    -
    -else
    -        echo "Certs not copied from Caddy (Not needed)"
    -fi
    -
    -
    -

    Achtung

    -

    Der Zertifikatspfad von Caddy variiert je nach Installationsart.
    -Bei diesem Installationsbeispiel wurde Caddy mithilfe des Caddy Repos (weitere Informationen hier) installiert.
    -
    -Um den Caddy Zertifikatspfad auf Ihrem System herauszufinden, genügt ein find / -name "certificates".

    -
    -

    Dieses Skript könnte dann als Cronjob jede Stunde aufgerufen werden:

    -
    0 * * * * /bin/bash /path/to/script/deploy-certs.sh  >/dev/null 2>&1
    -
    -

    Optional: Post-Hook-Skript für nicht-mailcow ACME-Clients

    -

    Die Verwendung eines lokalen Certbots (oder eines anderen ACME-Clients) erfordert den Neustart einiger Container, was Sie mit einem Post-Hook-Skript erledigen können. -Stellen Sie sicher, dass Sie die Pfade entsprechend ändern: -

    #!/bin/bash
    -cp /etc/letsencrypt/live/my.domain.tld/fullchain.pem /opt/mailcow-dockerized/data/assets/ssl/cert.pem
    -cp /etc/letsencrypt/live/my.domain.tld/privkey.pem /opt/mailcow-dockerized/data/assets/ssl/key.pem
    -postfix_c=$(docker ps -qaf name=postfix-mailcow)
    -dovecot_c=$(docker ps -qaf name=dovecot-mailcow)
    -nginx_c=$(docker ps -qaf name=nginx-mailcow)
    -docker restart ${postfix_c} ${dovecot_c} ${nginx_c}
    -

    -

    Hinzufügen weiterer Servernamen für mailcow UI

    -

    Wenn Sie vorhaben, einen Servernamen zu verwenden, der nicht MAILCOW_HOSTNAME in Ihrem Reverse-Proxy ist, stellen Sie sicher, dass Sie diesen Namen zuerst in mailcow.conf über ADDITIONAL_SERVER_NAMES einpflegen. Die Namen müssen durch Kommas getrennt werden und dürfen keine Leerzeichen enthalten. Wenn Sie diesen Schritt überspringen, kann es sein, dass mailcow auf Ihren Reverse-Proxy mit einer falschen Seite antwortet.

    -
    ADDITIONAL_SERVER_NAMES=webmail.domain.tld,other.example.tld
    -
    -

    Führen Sie zum Anwenden folgendes aus:

    -
    -
    -
    -
    docker compose up -d
    -
    -
    -
    -
    docker-compose up -d
    -
    -
    -
    -

    Letztes Update: - 2023-03-11 18:09:21 + 2023-06-14 00:42:41 @@ -3030,12 +2761,12 @@ docker restart ${postfix_c} ${dovecot_c} ${nginx_c}
    - + - + - + diff --git a/de/post_installation/reverse-proxy/r_p/index.html b/de/post_installation/reverse-proxy/r_p/index.html new file mode 100644 index 000000000..49b3c4cdb --- /dev/null +++ b/de/post_installation/reverse-proxy/r_p/index.html @@ -0,0 +1,2835 @@ + + + + + + + + + + + + + + + + + + + + + + + + Übersicht - mailcow: dockerized Dokumentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + + + + + + +
    + + +
    + +
    + + + + + + +
    +
    + + + +
    +
    +
    + + + + +
    +
    +
    + + + + + + + +
    +
    + + + + + + + +

    Übersicht

    + +

    Sie müssen die Nginx-Seite, die mit mailcow: dockerized geliefert wird, nicht ändern. +mailcow: dockerized vertraut auf das Standard-Gateway IP 172.22.1.1 als Proxy.

    +

    Stellen Sie sicher, dass Sie HTTP_BIND und HTTPS_BIND in mailcow.conf auf eine lokale Adresse ändern und die Ports entsprechend einstellen, zum Beispiel: +

    HTTP_BIND=127.0.0.1
    +HTTP_PORT=8080
    +HTTPS_BIND=127.0.0.1
    +HTTPS_PORT=8443
    +

    +

    Dadurch werden auch die Bindungen innerhalb des Nginx-Containers geändert! Dies ist wichtig, wenn Sie sich entscheiden, einen Proxy innerhalb von Docker zu verwenden.

    +

    WICHTIG: Verwenden Sie nicht Port 8081, 9081 oder 65510!

    +

    Erzeugen Sie die betroffenen Container neu, indem Sie den folgenden Befehl ausführen:

    +
    +
    +
    +
    docker compose up -d
    +
    +
    +
    +
    docker-compose up -d
    +
    +
    +
    +
    +

    Wichtige Informationen, bitte lesen Sie diese sorgfältig durch!

    +
    +

    Info

    +

    Wenn Sie planen, einen Reverse-Proxy zu verwenden und einen anderen Servernamen als MAILCOW_HOSTNAME verwenden wollen, müssen Sie Zusätzliche Servernamen für mailcow UI hierunter.

    +
    +
    +

    Warnung

    +

    Stellen Sie sicher, dass Sie generate_config.sh ausführen, bevor Sie die Konfigurationsbeispiele aktivieren. +Das Skript generate_config.sh kopiert die Snake-oil Zertifikate an den richtigen Ort, so dass die Dienste nicht aufgrund fehlender Dateien nicht starten können.

    +
    +
    +

    Warnung

    +

    Wenn Sie TLS SNI aktivieren (ENABLE_TLS_SNI in mailcow.conf), müssen die Zertifikatspfade in Ihrem Reverse-Proxy mit den korrekten Pfaden in data/assets/ssl/{hostname} übereinstimmen. Die Zertifikate werden in data/assets/ssl/{hostname1,hostname2,etc} aufgeteilt und werden daher nicht funktionieren, wenn Sie die Beispiele von unten kopieren, die auf data/assets/ssl/cert.pem etc. zeigen.

    +
    +
    +

    Info

    +

    Die Verwendung der Konfigurationsbeispiele wird acme-Anfragen an mailcow weiterleiten und es die Zertifikate selbst verwalten lassen. +Der Nachteil der Verwendung von mailcow als ACME-Client hinter einem Reverse-Proxy ist, dass Sie Ihren Webserver neu laden müssen, nachdem acme-mailcow das Zertifikat geändert/erneuert/erstellt hat. Sie können entweder Ihren Webserver täglich neu laden oder ein Skript schreiben, um die Datei auf Änderungen zu überwachen. +Auf vielen Servern wird logrotate den Webserver sowieso täglich neu laden.

    +

    Wenn Sie eine lokale Certbot-Installation verwenden möchten, müssen Sie die SSL-Zertifikatsparameter entsprechend ändern. +Stellen Sie sicher, dass Sie ein Post-Hook-Skript ausführen, wenn Sie sich entscheiden, externe ACME-Clients zu verwenden. Ein Beispiel finden Sie hierunter.

    +
    +

    Konfigurieren Sie Ihren lokalen Webserver als Reverse Proxy anhand folgender Konfigurationsbeispiele:

    + +

    Optional: Post-Hook-Skript für nicht-mailcow ACME-Clients

    +

    Die Verwendung eines lokalen Certbots (oder eines anderen ACME-Clients) erfordert den Neustart einiger Container, was Sie mit einem Post-Hook-Skript erledigen können. +Stellen Sie sicher, dass Sie die Pfade entsprechend ändern: +

    #!/bin/bash
    +cp /etc/letsencrypt/live/my.domain.tld/fullchain.pem /opt/mailcow-dockerized/data/assets/ssl/cert.pem
    +cp /etc/letsencrypt/live/my.domain.tld/privkey.pem /opt/mailcow-dockerized/data/assets/ssl/key.pem
    +postfix_c=$(docker ps -qaf name=postfix-mailcow)
    +dovecot_c=$(docker ps -qaf name=dovecot-mailcow)
    +nginx_c=$(docker ps -qaf name=nginx-mailcow)
    +docker restart ${postfix_c} ${dovecot_c} ${nginx_c}
    +

    +

    Hinzufügen weiterer Servernamen für mailcow UI

    +

    Wenn Sie vorhaben, einen Servernamen zu verwenden, der nicht MAILCOW_HOSTNAME in Ihrem Reverse-Proxy ist, stellen Sie sicher, dass Sie diesen Namen zuerst in mailcow.conf über ADDITIONAL_SERVER_NAMES einpflegen. Die Namen müssen durch Kommas getrennt werden und dürfen keine Leerzeichen enthalten. Wenn Sie diesen Schritt überspringen, kann es sein, dass mailcow auf Ihren Reverse-Proxy mit einer falschen Seite antwortet.

    +
    ADDITIONAL_SERVER_NAMES=webmail.domain.tld,other.example.tld
    +
    +

    Führen Sie zum Anwenden folgendes aus:

    +
    +
    +
    +
    docker compose up -d
    +
    +
    +
    +
    docker-compose up -d
    +
    +
    +
    +
    + +
    +
    + + + Letztes Update: + 2023-06-14 00:36:05 + + + +
    + + + + + + +
    +
    + + + + +
    + + + +
    + + + +
    +
    +
    +
    + + + + + + + + + + + \ No newline at end of file diff --git a/de/prerequisite/prerequisite-dns/index.html b/de/prerequisite/prerequisite-dns/index.html index b0a0b8947..5b61d2825 100644 --- a/de/prerequisite/prerequisite-dns/index.html +++ b/de/prerequisite/prerequisite-dns/index.html @@ -699,9 +699,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/de/prerequisite/prerequisite-system/index.html b/de/prerequisite/prerequisite-system/index.html index d8b6dee2f..a05aedee0 100644 --- a/de/prerequisite/prerequisite-system/index.html +++ b/de/prerequisite/prerequisite-system/index.html @@ -698,9 +698,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/de/third_party/borgmatic/third_party-borgmatic/index.html b/de/third_party/borgmatic/third_party-borgmatic/index.html index 5ef24e8c9..c433239af 100644 --- a/de/third_party/borgmatic/third_party-borgmatic/index.html +++ b/de/third_party/borgmatic/third_party-borgmatic/index.html @@ -591,9 +591,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/de/third_party/checkmk/u_e-checkmk/index.html b/de/third_party/checkmk/u_e-checkmk/index.html index 128f0ae58..d48dd21c8 100644 --- a/de/third_party/checkmk/u_e-checkmk/index.html +++ b/de/third_party/checkmk/u_e-checkmk/index.html @@ -591,9 +591,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/de/third_party/exchange_onprem/third_party-exchange_onprem/index.html b/de/third_party/exchange_onprem/third_party-exchange_onprem/index.html index 057524a82..d52d3d6cb 100644 --- a/de/third_party/exchange_onprem/third_party-exchange_onprem/index.html +++ b/de/third_party/exchange_onprem/third_party-exchange_onprem/index.html @@ -591,9 +591,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/de/third_party/gitea/third_party-gitea/index.html b/de/third_party/gitea/third_party-gitea/index.html index 7af309911..25864fb7a 100644 --- a/de/third_party/gitea/third_party-gitea/index.html +++ b/de/third_party/gitea/third_party-gitea/index.html @@ -586,9 +586,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/de/third_party/gogs/third_party-gogs/index.html b/de/third_party/gogs/third_party-gogs/index.html index 89263a4fb..366945105 100644 --- a/de/third_party/gogs/third_party-gogs/index.html +++ b/de/third_party/gogs/third_party-gogs/index.html @@ -586,9 +586,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/de/third_party/mailman3/third_party-mailman3/index.html b/de/third_party/mailman3/third_party-mailman3/index.html index e0e5e6b20..d4af33d22 100644 --- a/de/third_party/mailman3/third_party-mailman3/index.html +++ b/de/third_party/mailman3/third_party-mailman3/index.html @@ -591,9 +591,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/de/third_party/mailpiler/third_party-mailpiler_integration/index.html b/de/third_party/mailpiler/third_party-mailpiler_integration/index.html index fa4d6d039..9957813d7 100644 --- a/de/third_party/mailpiler/third_party-mailpiler_integration/index.html +++ b/de/third_party/mailpiler/third_party-mailpiler_integration/index.html @@ -591,9 +591,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/de/third_party/nextcloud/third_party-nextcloud/index.html b/de/third_party/nextcloud/third_party-nextcloud/index.html index 7fcdf144f..7661227d7 100644 --- a/de/third_party/nextcloud/third_party-nextcloud/index.html +++ b/de/third_party/nextcloud/third_party-nextcloud/index.html @@ -591,9 +591,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/de/third_party/portainer/third_party-portainer/index.html b/de/third_party/portainer/third_party-portainer/index.html index a125951b8..e8de34a0a 100644 --- a/de/third_party/portainer/third_party-portainer/index.html +++ b/de/third_party/portainer/third_party-portainer/index.html @@ -591,9 +591,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/de/third_party/roundcube/third_party-roundcube/index.html b/de/third_party/roundcube/third_party-roundcube/index.html index a5cb93073..1d0814940 100644 --- a/de/third_party/roundcube/third_party-roundcube/index.html +++ b/de/third_party/roundcube/third_party-roundcube/index.html @@ -589,9 +589,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/de/troubleshooting/debug-admin_login_sogo/index.html b/de/troubleshooting/debug-admin_login_sogo/index.html index 012b7963b..f8197830c 100644 --- a/de/troubleshooting/debug-admin_login_sogo/index.html +++ b/de/troubleshooting/debug-admin_login_sogo/index.html @@ -591,9 +591,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/de/troubleshooting/debug-attach_service/index.html b/de/troubleshooting/debug-attach_service/index.html index 446fd2724..5af444547 100644 --- a/de/troubleshooting/debug-attach_service/index.html +++ b/de/troubleshooting/debug-attach_service/index.html @@ -591,9 +591,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/de/troubleshooting/debug-common_problems/index.html b/de/troubleshooting/debug-common_problems/index.html index e065ad953..fcf367c57 100644 --- a/de/troubleshooting/debug-common_problems/index.html +++ b/de/troubleshooting/debug-common_problems/index.html @@ -591,9 +591,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/de/troubleshooting/debug-logs/index.html b/de/troubleshooting/debug-logs/index.html index 173985fff..3afc99416 100644 --- a/de/troubleshooting/debug-logs/index.html +++ b/de/troubleshooting/debug-logs/index.html @@ -586,9 +586,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/de/troubleshooting/debug-mysql_aria/index.html b/de/troubleshooting/debug-mysql_aria/index.html index 2e9430014..9d2212f16 100644 --- a/de/troubleshooting/debug-mysql_aria/index.html +++ b/de/troubleshooting/debug-mysql_aria/index.html @@ -591,9 +591,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/de/troubleshooting/debug-mysql_upgrade/index.html b/de/troubleshooting/debug-mysql_upgrade/index.html index c354c3ed2..503819f8e 100644 --- a/de/troubleshooting/debug-mysql_upgrade/index.html +++ b/de/troubleshooting/debug-mysql_upgrade/index.html @@ -591,9 +591,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/de/troubleshooting/debug-reset_pw/index.html b/de/troubleshooting/debug-reset_pw/index.html index 85d544661..c34d6a549 100644 --- a/de/troubleshooting/debug-reset_pw/index.html +++ b/de/troubleshooting/debug-reset_pw/index.html @@ -591,9 +591,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/de/troubleshooting/debug-reset_tls/index.html b/de/troubleshooting/debug-reset_tls/index.html index e9f676212..c0ebe35f6 100644 --- a/de/troubleshooting/debug-reset_tls/index.html +++ b/de/troubleshooting/debug-reset_tls/index.html @@ -586,9 +586,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/de/troubleshooting/debug-rm_volumes/index.html b/de/troubleshooting/debug-rm_volumes/index.html index 12b2fa22e..57313faff 100644 --- a/de/troubleshooting/debug-rm_volumes/index.html +++ b/de/troubleshooting/debug-rm_volumes/index.html @@ -586,9 +586,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/de/troubleshooting/debug-rspamd_memory_leaks/index.html b/de/troubleshooting/debug-rspamd_memory_leaks/index.html index 1721374a1..71ca8629b 100644 --- a/de/troubleshooting/debug-rspamd_memory_leaks/index.html +++ b/de/troubleshooting/debug-rspamd_memory_leaks/index.html @@ -586,9 +586,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/de/troubleshooting/debug/index.html b/de/troubleshooting/debug/index.html index 4f3b6f33e..d76852aa5 100644 --- a/de/troubleshooting/debug/index.html +++ b/de/troubleshooting/debug/index.html @@ -586,9 +586,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/en/backup_restore/b_n_r-accidental_deletion/index.html b/en/backup_restore/b_n_r-accidental_deletion/index.html index 9936c1955..a8eda5c2c 100644 --- a/en/backup_restore/b_n_r-accidental_deletion/index.html +++ b/en/backup_restore/b_n_r-accidental_deletion/index.html @@ -591,9 +591,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/en/backup_restore/b_n_r-backup/index.html b/en/backup_restore/b_n_r-backup/index.html index 98a0bcbac..6c8374a40 100644 --- a/en/backup_restore/b_n_r-backup/index.html +++ b/en/backup_restore/b_n_r-backup/index.html @@ -591,9 +591,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/en/backup_restore/b_n_r-backup_restore-maildir/index.html b/en/backup_restore/b_n_r-backup_restore-maildir/index.html index b388ed7bf..d3e5e565f 100644 --- a/en/backup_restore/b_n_r-backup_restore-maildir/index.html +++ b/en/backup_restore/b_n_r-backup_restore-maildir/index.html @@ -591,9 +591,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/en/backup_restore/b_n_r-backup_restore-mysql/index.html b/en/backup_restore/b_n_r-backup_restore-mysql/index.html index 24478621b..2e8406748 100644 --- a/en/backup_restore/b_n_r-backup_restore-mysql/index.html +++ b/en/backup_restore/b_n_r-backup_restore-mysql/index.html @@ -591,9 +591,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/en/backup_restore/b_n_r-coldstandby/index.html b/en/backup_restore/b_n_r-coldstandby/index.html index b3af99737..65e18fff4 100644 --- a/en/backup_restore/b_n_r-coldstandby/index.html +++ b/en/backup_restore/b_n_r-coldstandby/index.html @@ -591,9 +591,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/en/backup_restore/b_n_r-restore/index.html b/en/backup_restore/b_n_r-restore/index.html index da3797edd..a5d35b431 100644 --- a/en/backup_restore/b_n_r-restore/index.html +++ b/en/backup_restore/b_n_r-restore/index.html @@ -591,9 +591,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/en/client/client-android/index.html b/en/client/client-android/index.html index 768a16a1c..7ec157439 100644 --- a/en/client/client-android/index.html +++ b/en/client/client-android/index.html @@ -586,9 +586,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/en/client/client-apple/index.html b/en/client/client-apple/index.html index 2069b653e..e43b9ec37 100644 --- a/en/client/client-apple/index.html +++ b/en/client/client-apple/index.html @@ -591,9 +591,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/en/client/client-emclient/index.html b/en/client/client-emclient/index.html index a7bb64003..0039b18d0 100644 --- a/en/client/client-emclient/index.html +++ b/en/client/client-emclient/index.html @@ -586,9 +586,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/en/client/client-kontact/index.html b/en/client/client-kontact/index.html index 26f3d6c86..95b9ea757 100644 --- a/en/client/client-kontact/index.html +++ b/en/client/client-kontact/index.html @@ -586,9 +586,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/en/client/client-manual/index.html b/en/client/client-manual/index.html index 92a907d6b..7361157eb 100644 --- a/en/client/client-manual/index.html +++ b/en/client/client-manual/index.html @@ -591,9 +591,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/en/client/client-outlook/index.html b/en/client/client-outlook/index.html index aa8a5882f..4bc374bf6 100644 --- a/en/client/client-outlook/index.html +++ b/en/client/client-outlook/index.html @@ -591,9 +591,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/en/client/client-thunderbird/index.html b/en/client/client-thunderbird/index.html index a77451a4d..bc582f235 100644 --- a/en/client/client-thunderbird/index.html +++ b/en/client/client-thunderbird/index.html @@ -586,9 +586,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/en/client/client-windows/index.html b/en/client/client-windows/index.html index a4d6ae73a..0345399da 100644 --- a/en/client/client-windows/index.html +++ b/en/client/client-windows/index.html @@ -586,9 +586,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/en/client/client/index.html b/en/client/client/index.html index 51b6da71b..b96f0963a 100644 --- a/en/client/client/index.html +++ b/en/client/client/index.html @@ -586,9 +586,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/en/i_u_m/i_u_m_deinstall/index.html b/en/i_u_m/i_u_m_deinstall/index.html index 7c6e200dd..423579d82 100644 --- a/en/i_u_m/i_u_m_deinstall/index.html +++ b/en/i_u_m/i_u_m_deinstall/index.html @@ -596,9 +596,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/en/i_u_m/i_u_m_install/index.html b/en/i_u_m/i_u_m_install/index.html index d2d61032e..2eaa65513 100644 --- a/en/i_u_m/i_u_m_install/index.html +++ b/en/i_u_m/i_u_m_install/index.html @@ -725,9 +725,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/en/i_u_m/i_u_m_migration/index.html b/en/i_u_m/i_u_m_migration/index.html index 2965f1b6c..5e52fc05f 100644 --- a/en/i_u_m/i_u_m_migration/index.html +++ b/en/i_u_m/i_u_m_migration/index.html @@ -596,9 +596,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/en/i_u_m/i_u_m_update/index.html b/en/i_u_m/i_u_m_update/index.html index 1159939a3..847eb7abb 100644 --- a/en/i_u_m/i_u_m_update/index.html +++ b/en/i_u_m/i_u_m_update/index.html @@ -712,9 +712,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/en/index.html b/en/index.html index 2ff65a628..f6d3c7385 100644 --- a/en/index.html +++ b/en/index.html @@ -671,9 +671,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/en/manual-guides/ClamAV/u_e-clamav-additional_dbs/index.html b/en/manual-guides/ClamAV/u_e-clamav-additional_dbs/index.html index f5694a9dc..a75b9b731 100644 --- a/en/manual-guides/ClamAV/u_e-clamav-additional_dbs/index.html +++ b/en/manual-guides/ClamAV/u_e-clamav-additional_dbs/index.html @@ -591,9 +591,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/en/manual-guides/ClamAV/u_e-clamav-whitelist/index.html b/en/manual-guides/ClamAV/u_e-clamav-whitelist/index.html index f7a4a4e99..2defb4aec 100644 --- a/en/manual-guides/ClamAV/u_e-clamav-whitelist/index.html +++ b/en/manual-guides/ClamAV/u_e-clamav-whitelist/index.html @@ -591,9 +591,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/en/manual-guides/Docker/u_e-docker-cust_dockerfiles/index.html b/en/manual-guides/Docker/u_e-docker-cust_dockerfiles/index.html index f21f8cc9e..61e3d6084 100644 --- a/en/manual-guides/Docker/u_e-docker-cust_dockerfiles/index.html +++ b/en/manual-guides/Docker/u_e-docker-cust_dockerfiles/index.html @@ -586,9 +586,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/en/manual-guides/Dovecot/u_e-dovecot-any_acl/index.html b/en/manual-guides/Dovecot/u_e-dovecot-any_acl/index.html index 7fc1fa778..1a383079f 100644 --- a/en/manual-guides/Dovecot/u_e-dovecot-any_acl/index.html +++ b/en/manual-guides/Dovecot/u_e-dovecot-any_acl/index.html @@ -586,9 +586,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/en/manual-guides/Dovecot/u_e-dovecot-catchall_vacation/index.html b/en/manual-guides/Dovecot/u_e-dovecot-catchall_vacation/index.html index f18482352..0c7252e88 100644 --- a/en/manual-guides/Dovecot/u_e-dovecot-catchall_vacation/index.html +++ b/en/manual-guides/Dovecot/u_e-dovecot-catchall_vacation/index.html @@ -586,9 +586,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/en/manual-guides/Dovecot/u_e-dovecot-expunge/index.html b/en/manual-guides/Dovecot/u_e-dovecot-expunge/index.html index 841c6982f..519d0c824 100644 --- a/en/manual-guides/Dovecot/u_e-dovecot-expunge/index.html +++ b/en/manual-guides/Dovecot/u_e-dovecot-expunge/index.html @@ -591,9 +591,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/en/manual-guides/Dovecot/u_e-dovecot-extra_conf/index.html b/en/manual-guides/Dovecot/u_e-dovecot-extra_conf/index.html index 82a4d37a3..7f5461131 100644 --- a/en/manual-guides/Dovecot/u_e-dovecot-extra_conf/index.html +++ b/en/manual-guides/Dovecot/u_e-dovecot-extra_conf/index.html @@ -586,9 +586,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/en/manual-guides/Dovecot/u_e-dovecot-fts/index.html b/en/manual-guides/Dovecot/u_e-dovecot-fts/index.html index df5da660f..dc3fb77f1 100644 --- a/en/manual-guides/Dovecot/u_e-dovecot-fts/index.html +++ b/en/manual-guides/Dovecot/u_e-dovecot-fts/index.html @@ -591,9 +591,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/en/manual-guides/Dovecot/u_e-dovecot-idle_interval/index.html b/en/manual-guides/Dovecot/u_e-dovecot-idle_interval/index.html index fc162efae..c29d1be19 100644 --- a/en/manual-guides/Dovecot/u_e-dovecot-idle_interval/index.html +++ b/en/manual-guides/Dovecot/u_e-dovecot-idle_interval/index.html @@ -591,9 +591,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/en/manual-guides/Dovecot/u_e-dovecot-mail-crypt/index.html b/en/manual-guides/Dovecot/u_e-dovecot-mail-crypt/index.html index 629298a11..3e4a358b8 100644 --- a/en/manual-guides/Dovecot/u_e-dovecot-mail-crypt/index.html +++ b/en/manual-guides/Dovecot/u_e-dovecot-mail-crypt/index.html @@ -586,9 +586,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/en/manual-guides/Dovecot/u_e-dovecot-more/index.html b/en/manual-guides/Dovecot/u_e-dovecot-more/index.html index e27ac543c..9f1bd45c4 100644 --- a/en/manual-guides/Dovecot/u_e-dovecot-more/index.html +++ b/en/manual-guides/Dovecot/u_e-dovecot-more/index.html @@ -591,9 +591,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/en/manual-guides/Dovecot/u_e-dovecot-performance/index.html b/en/manual-guides/Dovecot/u_e-dovecot-performance/index.html index 7dd289136..10633f097 100644 --- a/en/manual-guides/Dovecot/u_e-dovecot-performance/index.html +++ b/en/manual-guides/Dovecot/u_e-dovecot-performance/index.html @@ -591,9 +591,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/en/manual-guides/Dovecot/u_e-dovecot-public_folder/index.html b/en/manual-guides/Dovecot/u_e-dovecot-public_folder/index.html index 7778a31e1..c253b0f33 100644 --- a/en/manual-guides/Dovecot/u_e-dovecot-public_folder/index.html +++ b/en/manual-guides/Dovecot/u_e-dovecot-public_folder/index.html @@ -591,9 +591,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/en/manual-guides/Dovecot/u_e-dovecot-static_master/index.html b/en/manual-guides/Dovecot/u_e-dovecot-static_master/index.html index c86da9205..019e6702d 100644 --- a/en/manual-guides/Dovecot/u_e-dovecot-static_master/index.html +++ b/en/manual-guides/Dovecot/u_e-dovecot-static_master/index.html @@ -586,9 +586,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/en/manual-guides/Dovecot/u_e-dovecot-vmail-volume/index.html b/en/manual-guides/Dovecot/u_e-dovecot-vmail-volume/index.html index 472573293..f81275a33 100644 --- a/en/manual-guides/Dovecot/u_e-dovecot-vmail-volume/index.html +++ b/en/manual-guides/Dovecot/u_e-dovecot-vmail-volume/index.html @@ -591,9 +591,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/en/manual-guides/Nginx/u_e-nginx_custom/index.html b/en/manual-guides/Nginx/u_e-nginx_custom/index.html index 12d6ab8d3..58f72ef08 100644 --- a/en/manual-guides/Nginx/u_e-nginx_custom/index.html +++ b/en/manual-guides/Nginx/u_e-nginx_custom/index.html @@ -591,9 +591,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/en/manual-guides/Nginx/u_e-nginx_webmail-site/index.html b/en/manual-guides/Nginx/u_e-nginx_webmail-site/index.html index 6c9971a9d..3193ea9ab 100644 --- a/en/manual-guides/Nginx/u_e-nginx_webmail-site/index.html +++ b/en/manual-guides/Nginx/u_e-nginx_webmail-site/index.html @@ -586,9 +586,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/en/manual-guides/Postfix/u_e-postfix-attachment_size/index.html b/en/manual-guides/Postfix/u_e-postfix-attachment_size/index.html index 3adb89de9..2bdec762d 100644 --- a/en/manual-guides/Postfix/u_e-postfix-attachment_size/index.html +++ b/en/manual-guides/Postfix/u_e-postfix-attachment_size/index.html @@ -586,9 +586,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/en/manual-guides/Postfix/u_e-postfix-custom_transport/index.html b/en/manual-guides/Postfix/u_e-postfix-custom_transport/index.html index 217fb69d3..5571ef277 100644 --- a/en/manual-guides/Postfix/u_e-postfix-custom_transport/index.html +++ b/en/manual-guides/Postfix/u_e-postfix-custom_transport/index.html @@ -586,9 +586,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/en/manual-guides/Postfix/u_e-postfix-disable_sender_verification/index.html b/en/manual-guides/Postfix/u_e-postfix-disable_sender_verification/index.html index 0a53e1c5a..4908a0aeb 100644 --- a/en/manual-guides/Postfix/u_e-postfix-disable_sender_verification/index.html +++ b/en/manual-guides/Postfix/u_e-postfix-disable_sender_verification/index.html @@ -591,9 +591,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/en/manual-guides/Postfix/u_e-postfix-extra_cf/index.html b/en/manual-guides/Postfix/u_e-postfix-extra_cf/index.html index 02bbd1da8..6ff38dd54 100644 --- a/en/manual-guides/Postfix/u_e-postfix-extra_cf/index.html +++ b/en/manual-guides/Postfix/u_e-postfix-extra_cf/index.html @@ -586,9 +586,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/en/manual-guides/Postfix/u_e-postfix-pflogsumm/index.html b/en/manual-guides/Postfix/u_e-postfix-pflogsumm/index.html index 01e25deb4..8a894f47b 100644 --- a/en/manual-guides/Postfix/u_e-postfix-pflogsumm/index.html +++ b/en/manual-guides/Postfix/u_e-postfix-pflogsumm/index.html @@ -586,9 +586,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/en/manual-guides/Postfix/u_e-postfix-postscreen_whitelist/index.html b/en/manual-guides/Postfix/u_e-postfix-postscreen_whitelist/index.html index 5839ff813..fdc1d734a 100644 --- a/en/manual-guides/Postfix/u_e-postfix-postscreen_whitelist/index.html +++ b/en/manual-guides/Postfix/u_e-postfix-postscreen_whitelist/index.html @@ -586,9 +586,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/en/manual-guides/Postfix/u_e-postfix-relayhost/index.html b/en/manual-guides/Postfix/u_e-postfix-relayhost/index.html index eb35e50d3..2b68f6070 100644 --- a/en/manual-guides/Postfix/u_e-postfix-relayhost/index.html +++ b/en/manual-guides/Postfix/u_e-postfix-relayhost/index.html @@ -591,9 +591,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/en/manual-guides/Postfix/u_e-postfix-trust_networks/index.html b/en/manual-guides/Postfix/u_e-postfix-trust_networks/index.html index 8f99668ec..f79723329 100644 --- a/en/manual-guides/Postfix/u_e-postfix-trust_networks/index.html +++ b/en/manual-guides/Postfix/u_e-postfix-trust_networks/index.html @@ -591,9 +591,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/en/manual-guides/Redis/u_e-redis/index.html b/en/manual-guides/Redis/u_e-redis/index.html index ecaf037d8..1ef6984f6 100644 --- a/en/manual-guides/Redis/u_e-redis/index.html +++ b/en/manual-guides/Redis/u_e-redis/index.html @@ -591,9 +591,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/en/manual-guides/Rspamd/u_e-rspamd/index.html b/en/manual-guides/Rspamd/u_e-rspamd/index.html index d373381be..329a4ee41 100644 --- a/en/manual-guides/Rspamd/u_e-rspamd/index.html +++ b/en/manual-guides/Rspamd/u_e-rspamd/index.html @@ -591,9 +591,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/en/manual-guides/SOGo/u_e-sogo/index.html b/en/manual-guides/SOGo/u_e-sogo/index.html index 1fa773bf8..c71997105 100644 --- a/en/manual-guides/SOGo/u_e-sogo/index.html +++ b/en/manual-guides/SOGo/u_e-sogo/index.html @@ -591,9 +591,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/en/manual-guides/Unbound/u_e-unbound-fwd/index.html b/en/manual-guides/Unbound/u_e-unbound-fwd/index.html index a0b38a0f4..2119ab362 100644 --- a/en/manual-guides/Unbound/u_e-unbound-fwd/index.html +++ b/en/manual-guides/Unbound/u_e-unbound-fwd/index.html @@ -591,9 +591,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/en/manual-guides/Watchdog/u_e-watchdog-thresholds/index.html b/en/manual-guides/Watchdog/u_e-watchdog-thresholds/index.html index 02b7cf6b7..d70c88465 100644 --- a/en/manual-guides/Watchdog/u_e-watchdog-thresholds/index.html +++ b/en/manual-guides/Watchdog/u_e-watchdog-thresholds/index.html @@ -591,9 +591,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/en/manual-guides/mailcow-UI/u_e-mailcow_ui-bl_wl/index.html b/en/manual-guides/mailcow-UI/u_e-mailcow_ui-bl_wl/index.html index 9f2c1f388..11deb893d 100644 --- a/en/manual-guides/mailcow-UI/u_e-mailcow_ui-bl_wl/index.html +++ b/en/manual-guides/mailcow-UI/u_e-mailcow_ui-bl_wl/index.html @@ -586,9 +586,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/en/manual-guides/mailcow-UI/u_e-mailcow_ui-config/index.html b/en/manual-guides/mailcow-UI/u_e-mailcow_ui-config/index.html index 93f90516d..9b07c4d2f 100644 --- a/en/manual-guides/mailcow-UI/u_e-mailcow_ui-config/index.html +++ b/en/manual-guides/mailcow-UI/u_e-mailcow_ui-config/index.html @@ -586,9 +586,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/en/manual-guides/mailcow-UI/u_e-mailcow_ui-css/index.html b/en/manual-guides/mailcow-UI/u_e-mailcow_ui-css/index.html index fdc558b01..2a2aa7a24 100644 --- a/en/manual-guides/mailcow-UI/u_e-mailcow_ui-css/index.html +++ b/en/manual-guides/mailcow-UI/u_e-mailcow_ui-css/index.html @@ -586,9 +586,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/en/manual-guides/mailcow-UI/u_e-mailcow_ui-fido/index.html b/en/manual-guides/mailcow-UI/u_e-mailcow_ui-fido/index.html index fe8a8cc39..2ec71c07d 100644 --- a/en/manual-guides/mailcow-UI/u_e-mailcow_ui-fido/index.html +++ b/en/manual-guides/mailcow-UI/u_e-mailcow_ui-fido/index.html @@ -591,9 +591,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/en/manual-guides/mailcow-UI/u_e-mailcow_ui-netfilter/index.html b/en/manual-guides/mailcow-UI/u_e-mailcow_ui-netfilter/index.html index d8a4dab5f..3a2595ff4 100644 --- a/en/manual-guides/mailcow-UI/u_e-mailcow_ui-netfilter/index.html +++ b/en/manual-guides/mailcow-UI/u_e-mailcow_ui-netfilter/index.html @@ -591,9 +591,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/en/manual-guides/mailcow-UI/u_e-mailcow_ui-pushover/index.html b/en/manual-guides/mailcow-UI/u_e-mailcow_ui-pushover/index.html index 022d7d0a3..7b64a25a2 100644 --- a/en/manual-guides/mailcow-UI/u_e-mailcow_ui-pushover/index.html +++ b/en/manual-guides/mailcow-UI/u_e-mailcow_ui-pushover/index.html @@ -586,9 +586,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/en/manual-guides/mailcow-UI/u_e-mailcow_ui-spamalias/index.html b/en/manual-guides/mailcow-UI/u_e-mailcow_ui-spamalias/index.html index acc226736..d47345bf6 100644 --- a/en/manual-guides/mailcow-UI/u_e-mailcow_ui-spamalias/index.html +++ b/en/manual-guides/mailcow-UI/u_e-mailcow_ui-spamalias/index.html @@ -586,9 +586,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/en/manual-guides/mailcow-UI/u_e-mailcow_ui-spamfilter/index.html b/en/manual-guides/mailcow-UI/u_e-mailcow_ui-spamfilter/index.html index cc7d2b6ce..aeb8e3535 100644 --- a/en/manual-guides/mailcow-UI/u_e-mailcow_ui-spamfilter/index.html +++ b/en/manual-guides/mailcow-UI/u_e-mailcow_ui-spamfilter/index.html @@ -586,9 +586,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/en/manual-guides/mailcow-UI/u_e-mailcow_ui-sub_addressing/index.html b/en/manual-guides/mailcow-UI/u_e-mailcow_ui-sub_addressing/index.html index b1d9726f3..40154344a 100644 --- a/en/manual-guides/mailcow-UI/u_e-mailcow_ui-sub_addressing/index.html +++ b/en/manual-guides/mailcow-UI/u_e-mailcow_ui-sub_addressing/index.html @@ -591,9 +591,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/en/manual-guides/mailcow-UI/u_e-mailcow_ui-tags/index.html b/en/manual-guides/mailcow-UI/u_e-mailcow_ui-tags/index.html index 8c1dd25fb..b05b81b6a 100644 --- a/en/manual-guides/mailcow-UI/u_e-mailcow_ui-tags/index.html +++ b/en/manual-guides/mailcow-UI/u_e-mailcow_ui-tags/index.html @@ -591,9 +591,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/en/manual-guides/mailcow-UI/u_e-mailcow_ui-tfa/index.html b/en/manual-guides/mailcow-UI/u_e-mailcow_ui-tfa/index.html index 34a3abaf9..162aa3e5f 100644 --- a/en/manual-guides/mailcow-UI/u_e-mailcow_ui-tfa/index.html +++ b/en/manual-guides/mailcow-UI/u_e-mailcow_ui-tfa/index.html @@ -591,9 +591,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/en/manual-guides/u_e-80_to_443/index.html b/en/manual-guides/u_e-80_to_443/index.html index 4f1613ccb..e2be0ad50 100644 --- a/en/manual-guides/u_e-80_to_443/index.html +++ b/en/manual-guides/u_e-80_to_443/index.html @@ -586,9 +586,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI @@ -2464,7 +2568,7 @@

    Redirect HTTP to HTTPS

    Since February the 28th 2017 mailcow does come with port 80 and 443 enabled.

    -

    Do not use the config below for reverse proxy setups, please see our reverse proxy guide for this, which includes a redirect from HTTP to HTTPS.

    +

    Do not use the config below for reverse proxy setups, please see our reverse proxy guide for this, which includes a redirect from HTTP to HTTPS.

    Open mailcow.conf and set HTTP_BIND= - if not already set.

    Create a new file data/conf/nginx/redirect.conf and add the following server config to the file:

    server {
    @@ -2514,7 +2618,7 @@
       
         
           Last update:
    -      2023-01-13 18:16:08
    +      2023-06-14 00:15:06
           
         
       
    diff --git a/en/manual-guides/u_e-autodiscover_config/index.html b/en/manual-guides/u_e-autodiscover_config/index.html
    index 5b93c0532..fc4fa3297 100644
    --- a/en/manual-guides/u_e-autodiscover_config/index.html
    +++ b/en/manual-guides/u_e-autodiscover_config/index.html
    @@ -586,9 +586,36 @@
       
       
       
    +    
    +    
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/en/manual-guides/u_e-reeanble-weak-protocols/index.html b/en/manual-guides/u_e-reeanble-weak-protocols/index.html index c1e2fd0f0..fbdc93def 100644 --- a/en/manual-guides/u_e-reeanble-weak-protocols/index.html +++ b/en/manual-guides/u_e-reeanble-weak-protocols/index.html @@ -586,9 +586,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/en/manual-guides/u_e-update-hooks/index.html b/en/manual-guides/u_e-update-hooks/index.html index 4dff4de62..5ced73ee7 100644 --- a/en/manual-guides/u_e-update-hooks/index.html +++ b/en/manual-guides/u_e-update-hooks/index.html @@ -586,9 +586,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/en/manual-guides/u_e-why_unbound/index.html b/en/manual-guides/u_e-why_unbound/index.html index 1361b7cda..89fd3a827 100644 --- a/en/manual-guides/u_e-why_unbound/index.html +++ b/en/manual-guides/u_e-why_unbound/index.html @@ -586,9 +586,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/en/models/model-acl/index.html b/en/models/model-acl/index.html index 23f7f1b4d..ae2fb7622 100644 --- a/en/models/model-acl/index.html +++ b/en/models/model-acl/index.html @@ -586,9 +586,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/en/models/model-passwd/index.html b/en/models/model-passwd/index.html index ee12faadc..fc30e1341 100644 --- a/en/models/model-passwd/index.html +++ b/en/models/model-passwd/index.html @@ -591,9 +591,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/en/models/model-sender_rcv/index.html b/en/models/model-sender_rcv/index.html index 0dc7025f5..7dbb7bbc8 100644 --- a/en/models/model-sender_rcv/index.html +++ b/en/models/model-sender_rcv/index.html @@ -591,9 +591,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/en/post_installation/firststeps-disable_ipv6/index.html b/en/post_installation/firststeps-disable_ipv6/index.html index 40adf1718..5bd90d083 100644 --- a/en/post_installation/firststeps-disable_ipv6/index.html +++ b/en/post_installation/firststeps-disable_ipv6/index.html @@ -596,9 +596,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/en/post_installation/firststeps-dmarc_reporting/index.html b/en/post_installation/firststeps-dmarc_reporting/index.html index fb8284d08..223b75fb1 100644 --- a/en/post_installation/firststeps-dmarc_reporting/index.html +++ b/en/post_installation/firststeps-dmarc_reporting/index.html @@ -658,9 +658,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/en/post_installation/firststeps-ip_bindings/index.html b/en/post_installation/firststeps-ip_bindings/index.html index cf2599c38..e5771cd40 100644 --- a/en/post_installation/firststeps-ip_bindings/index.html +++ b/en/post_installation/firststeps-ip_bindings/index.html @@ -637,9 +637,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/en/post_installation/firststeps-local_mta/index.html b/en/post_installation/firststeps-local_mta/index.html index ddf52f0fb..5b3d5fe3d 100644 --- a/en/post_installation/firststeps-local_mta/index.html +++ b/en/post_installation/firststeps-local_mta/index.html @@ -596,9 +596,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/en/post_installation/firststeps-logging/index.html b/en/post_installation/firststeps-logging/index.html index e725cbdbd..2ebfffe30 100644 --- a/en/post_installation/firststeps-logging/index.html +++ b/en/post_installation/firststeps-logging/index.html @@ -14,7 +14,7 @@ - + @@ -677,9 +677,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/en/post_installation/firststeps-rspamd_ui/index.html b/en/post_installation/firststeps-rspamd_ui/index.html index 2f5cd6f13..7d5caffba 100644 --- a/en/post_installation/firststeps-rspamd_ui/index.html +++ b/en/post_installation/firststeps-rspamd_ui/index.html @@ -11,7 +11,7 @@ - + @@ -588,9 +588,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + diff --git a/en/post_installation/firststeps-snat/index.html b/en/post_installation/firststeps-snat/index.html index a45ba7b5d..1ca67d9e7 100644 --- a/en/post_installation/firststeps-snat/index.html +++ b/en/post_installation/firststeps-snat/index.html @@ -588,9 +588,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/en/post_installation/firststeps-ssl/index.html b/en/post_installation/firststeps-ssl/index.html index bc1f03e7a..f53d393aa 100644 --- a/en/post_installation/firststeps-ssl/index.html +++ b/en/post_installation/firststeps-ssl/index.html @@ -719,9 +719,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI @@ -2886,7 +2990,7 @@ You should make sure these clients use the MAILCOW_HOSTNAME for sec docker restart $(docker ps -qaf name=nginx-mailcow) docker restart $(docker ps -qaf name=dovecot-mailcow)
  • -

    See Post-hook script for non-mailcow ACME clients for a full example script.

    +

    See Post-hook script for non-mailcow ACME clients for a full example script.

    Test against staging ACME directory

    Edit mailcow.conf and add LE_STAGING=y.

    Run the command below to activate your changes:

    @@ -2959,7 +3063,7 @@ bash helper-scripts/expiry-dates.sh Last update: - 2023-01-13 18:34:22 + 2023-06-14 00:15:06 diff --git a/en/post_installation/firststeps-sync_jobs_migration/index.html b/en/post_installation/firststeps-sync_jobs_migration/index.html index 94a5e2e31..45e21171c 100644 --- a/en/post_installation/firststeps-sync_jobs_migration/index.html +++ b/en/post_installation/firststeps-sync_jobs_migration/index.html @@ -593,9 +593,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/en/post_installation/reverse-proxy/r_p-apache24/index.html b/en/post_installation/reverse-proxy/r_p-apache24/index.html new file mode 100644 index 000000000..b3ac8a80d --- /dev/null +++ b/en/post_installation/reverse-proxy/r_p-apache24/index.html @@ -0,0 +1,2728 @@ + + + + + + + + + + + + + + + + + + + + + + + + Apache 2.4 - mailcow: dockerized documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    + +
    +
    + + + +
    + + + + + + +
    + + +
    + +
    + + + + + + +
    +
    + + + +
    +
    +
    + + + + +
    +
    +
    + + + +
    +
    +
    + + + +
    +
    +
    + + + +
    +
    + + + + + + + +

    Apache 2.4

    + +
    +

    Important

    +

    First read the overview.

    +
    +

    Required modules: +

    a2enmod rewrite proxy proxy_http headers ssl
    +

    +

    Let's Encrypt will follow our rewrite, certificate requests in mailcow will work fine.

    +

    Take care of highlighted lines.

    +
    <VirtualHost *:80>
    +  ServerName CHANGE_TO_MAILCOW_HOSTNAME
    +  ServerAlias autodiscover.*
    +  ServerAlias autoconfig.*
    +  RewriteEngine on
    +
    +  RewriteCond %{HTTPS} off
    +  RewriteRule ^/?(.*) https://%{HTTP_HOST}/$1 [R=301,L]
    +
    +  ProxyPass / http://127.0.0.1:8080/
    +  ProxyPassReverse / http://127.0.0.1:8080/
    +  ProxyPreserveHost On
    +  ProxyAddHeaders On
    +  RequestHeader set X-Forwarded-Proto "http"
    +</VirtualHost>
    +<VirtualHost *:443>
    +  ServerName CHANGE_TO_MAILCOW_HOSTNAME
    +  ServerAlias autodiscover.*
    +  ServerAlias autoconfig.*
    +
    +  # You should proxy to a plain HTTP session to offload SSL processing
    +  ProxyPass /Microsoft-Server-ActiveSync http://127.0.0.1:8080/Microsoft-Server-ActiveSync connectiontimeout=4000
    +  ProxyPassReverse /Microsoft-Server-ActiveSync http://127.0.0.1:8080/Microsoft-Server-ActiveSync
    +  ProxyPass / http://127.0.0.1:8080/
    +  ProxyPassReverse / http://127.0.0.1:8080/
    +  ProxyPreserveHost On
    +  ProxyAddHeaders On
    +  RequestHeader set X-Forwarded-Proto "https"
    +
    +  SSLCertificateFile MAILCOW_PATH/data/assets/ssl/cert.pem
    +  SSLCertificateKeyFile MAILCOW_PATH/data/assets/ssl/key.pem
    +
    +  # If you plan to proxy to a HTTPS host:
    +  #SSLProxyEngine On
    +
    +  # If you plan to proxy to an untrusted HTTPS host:
    +  #SSLProxyVerify none
    +  #SSLProxyCheckPeerCN off
    +  #SSLProxyCheckPeerName off
    +  #SSLProxyCheckPeerExpire off
    +</VirtualHost>
    +
    + +
    +
    + + + Last update: + 2023-06-14 00:42:41 + + + +
    + + + + + + +
    +
    + + + + +
    + + + +
    + + + +
    +
    +
    +
    + + + + + + + + + + + \ No newline at end of file diff --git a/en/post_installation/reverse-proxy/r_p-caddy2/index.html b/en/post_installation/reverse-proxy/r_p-caddy2/index.html new file mode 100644 index 000000000..602959753 --- /dev/null +++ b/en/post_installation/reverse-proxy/r_p-caddy2/index.html @@ -0,0 +1,2732 @@ + + + + + + + + + + + + + + + + + + + + + + + + Caddy v2 (community supported) - mailcow: dockerized documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    + +
    +
    + + + +
    + + + + + + +
    + + +
    + +
    + + + + + + +
    +
    + + + +
    +
    +
    + + + + +
    +
    +
    + + + +
    +
    +
    + + + +
    +
    +
    + + + +
    +
    + + + + + + + +

    Caddy v2 (community supported)

    + +
    +

    Important

    +

    First read the overview.

    +
    +
    +

    Warning

    +

    This is an unsupported community contribution. Feel free to provide fixes.

    +
    +

    The configuration of Caddy with mailcow is very simple.

    +

    In the caddyfile you just have to create a section for the mailserver.

    +

    For example +

    MAILCOW_HOSTNAME autodiscover.MAILCOW_HOSTNAME autoconfig.MAILCOW_HOSTNAME {
    +        log {
    +                output file /var/log/caddy/MAILCOW_HOSTNAME.log {
    +                        roll_disabled
    +                        roll_size 512M
    +                        roll_uncompressed
    +                        roll_local_time
    +                        roll_keep 3
    +                        roll_keep_for 48h
    +                }
    +        }
    +
    +        reverse_proxy 127.0.0.1:HTTP_BIND
    +}
    +

    +

    This allows Caddy to automatically create the certificates and accept traffic for these mentioned domains and forward them to mailcow.

    +

    Important: The ACME client of mailcow must be disabled, otherwise mailcow will fail.

    +

    Since Caddy takes care of the certificates itself, we can use the following script to include the Caddy generated certificates into mailcow:

    +
    #!/bin/bash
    +MD5SUM_CURRENT_CERT=($(md5sum /opt/mailcow-dockerized/data/assets/ssl/cert.pem))
    +MD5SUM_NEW_CERT=($(md5sum /var/lib/caddy/.local/share/caddy/certificates/acme-v02.api.letsencrypt.org-directory/your.domain.tld/your.domain.tld.crt))
    +
    +if [ $MD5SUM_CURRENT_CERT != $MD5SUM_NEW_CERT ]; then
    +        cp /var/lib/caddy/.local/share/caddy/certificates/acme-v02.api.letsencrypt.org-directory/your.domain.tld/your.domain.tld.crt /opt/mailcow-dockerized/data/assets/ssl/cert.pem
    +        cp /var/lib/caddy/.local/share/caddy/certificates/acme-v02.api.letsencrypt.org-directory/your.domain.tld/your.domain.tld.key /opt/mailcow-dockerized/data/assets/ssl/key.pem
    +        postfix_c=$(docker ps -qaf name=postfix-mailcow)
    +        dovecot_c=$(docker ps -qaf name=dovecot-mailcow)
    +        nginx_c=$(docker ps -qaf name=nginx-mailcow)
    +        docker restart ${postfix_c} ${dovecot_c} ${nginx_c}
    +
    +else
    +        echo "Certs not copied from Caddy (Not needed)"
    +fi
    +
    +
    +

    Attention

    +

    Caddy's certificate path varies depending on the installation type.
    +In this installation example, Caddy was installed using the Caddy repo (more informations here).
    +
    +To find out the Caddy certificate path on your system, just run a find / -name "certificates".

    +
    +

    This script could be called as a cronjob every hour:

    +
    0 * * * * /bin/bash /path/to/script/deploy-certs.sh  >/dev/null 2>&1
    +
    + +
    +
    + + + Last update: + 2023-06-14 00:42:41 + + + +
    + + + + + + +
    +
    + + + + +
    + + + +
    + + + +
    +
    +
    +
    + + + + + + + + + + + \ No newline at end of file diff --git a/en/post_installation/reverse-proxy/r_p-haproxy/index.html b/en/post_installation/reverse-proxy/r_p-haproxy/index.html new file mode 100644 index 000000000..6d5609c0b --- /dev/null +++ b/en/post_installation/reverse-proxy/r_p-haproxy/index.html @@ -0,0 +1,2696 @@ + + + + + + + + + + + + + + + + + + + + + + + + HAProxy (community supported) - mailcow: dockerized documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    + +
    +
    + + + +
    + + + + + + +
    + + +
    + +
    + + + + + + +
    +
    + + + +
    +
    +
    + + + + +
    +
    +
    + + + +
    +
    +
    + + + +
    +
    +
    + + + +
    +
    + + + + + + + +

    HAProxy (community supported)

    + +
    +

    Important

    +

    First read the overview.

    +
    +
    +

    Warning

    +

    This is an unsupported community contribution. Feel free to provide fixes.

    +
    +

    Important/Fixme: This example only forwards HTTPS traffic and does not use mailcows built-in ACME client.

    +
    frontend https-in
    +  bind :::443 v4v6 ssl crt mailcow.pem
    +  default_backend mailcow
    +
    +backend mailcow
    +  option forwardfor
    +  http-request set-header X-Forwarded-Proto https if { ssl_fc }
    +  http-request set-header X-Forwarded-Proto http if !{ ssl_fc }
    +  server mailcow 127.0.0.1:8080 check
    +
    + +
    +
    + + + Last update: + 2023-06-14 00:42:41 + + + +
    + + + + + + +
    +
    + + + + +
    + + + +
    + + + +
    +
    +
    +
    + + + + + + + + + + + \ No newline at end of file diff --git a/en/post_installation/reverse-proxy/r_p-nginx/index.html b/en/post_installation/reverse-proxy/r_p-nginx/index.html new file mode 100644 index 000000000..1d9ec12c3 --- /dev/null +++ b/en/post_installation/reverse-proxy/r_p-nginx/index.html @@ -0,0 +1,2735 @@ + + + + + + + + + + + + + + + + + + + + + + + + Nginx - mailcow: dockerized documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    + +
    +
    + + + +
    + + + + + + +
    + + +
    + +
    + + + + + + +
    +
    + + + +
    +
    +
    + + + + +
    +
    +
    + + + +
    +
    +
    + + + +
    +
    +
    + + + +
    +
    + + + + + + + +

    Nginx

    + +
    +

    Important

    +

    First read the overview.

    +
    +

    Let's Encrypt will follow our rewrite, certificate requests will work fine.

    +

    Take care of highlighted lines.

    +
    server {
    +  listen 80 default_server;
    +  listen [::]:80 default_server;
    +  server_name CHANGE_TO_MAILCOW_HOSTNAME autodiscover.* autoconfig.*;
    +  return 301 https://$host$request_uri;
    +}
    +server {
    +  listen 443 ssl http2;
    +  listen [::]:443 ssl http2;
    +  server_name CHANGE_TO_MAILCOW_HOSTNAME autodiscover.* autoconfig.*;
    +
    +  ssl_certificate MAILCOW_PATH/data/assets/ssl/cert.pem;
    +  ssl_certificate_key MAILCOW_PATH/data/assets/ssl/key.pem;
    +  ssl_session_timeout 1d;
    +  ssl_session_cache shared:SSL:50m;
    +  ssl_session_tickets off;
    +
    +  # See https://ssl-config.mozilla.org/#server=nginx for the latest ssl settings recommendations
    +  # An example config is given below
    +  ssl_protocols TLSv1.2;
    +  ssl_ciphers HIGH:!aNULL:!MD5:!SHA1:!kRSA;
    +  ssl_prefer_server_ciphers off;
    +
    +  location /Microsoft-Server-ActiveSync {
    +    proxy_pass http://127.0.0.1:8080/Microsoft-Server-ActiveSync;
    +    proxy_set_header Host $http_host;
    +    proxy_set_header X-Real-IP $remote_addr;
    +    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    +    proxy_set_header X-Forwarded-Proto $scheme;
    +    proxy_connect_timeout 75;
    +    proxy_send_timeout 3650;
    +    proxy_read_timeout 3650;
    +    proxy_buffers 64 512k; # Needed since the 2022-04 Update for SOGo
    +    client_body_buffer_size 512k;
    +    client_max_body_size 0;
    +  }
    +
    +  location / {
    +    proxy_pass http://127.0.0.1:8080/;
    +    proxy_set_header Host $http_host;
    +    proxy_set_header X-Real-IP $remote_addr;
    +    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    +    proxy_set_header X-Forwarded-Proto $scheme;
    +    client_max_body_size 0;
    +  # The following Proxy Buffers has to be set if you want to use SOGo after the 2022-04 (April 2022) Update
    +  # Otherwise a Login will fail like this: https://github.com/mailcow/mailcow-dockerized/issues/4537
    +    proxy_buffer_size 128k;
    +    proxy_buffers 64 512k;
    +    proxy_busy_buffers_size 512k;
    +  }
    +}
    +
    + +
    +
    + + + Last update: + 2023-06-14 00:42:41 + + + +
    + + + + + + +
    +
    + + + + +
    + + + +
    + + + +
    +
    +
    +
    + + + + + + + + + + + \ No newline at end of file diff --git a/post_installation/firststeps-rp/index.html b/en/post_installation/reverse-proxy/r_p-traefik2/index.html similarity index 65% rename from post_installation/firststeps-rp/index.html rename to en/post_installation/reverse-proxy/r_p-traefik2/index.html index d7dacf934..8dbcdac5b 100644 --- a/post_installation/firststeps-rp/index.html +++ b/en/post_installation/reverse-proxy/r_p-traefik2/index.html @@ -8,27 +8,27 @@ - + - + - + - + - Reverse Proxy - mailcow: dockerized documentation + Traefik v2 (community supported) - mailcow: dockerized documentation - + - + @@ -38,9 +38,9 @@ - + - + @@ -49,11 +49,11 @@ - + - + @@ -61,15 +61,15 @@ - + - + - + @@ -94,11 +94,6 @@
    @@ -129,9 +124,9 @@
  • @@ -2594,183 +2567,21 @@ -

    Reverse Proxy

    +

    Traefik v2 (community supported)

    -

    You don't need to change the Nginx site that comes with mailcow: dockerized. -mailcow: dockerized trusts the default gateway IP 172.22.1.1 as proxy.

    -

    1. Make sure you change HTTP_BIND and HTTPS_BIND in mailcow.conf to a local address and set the ports accordingly, for example: -

    HTTP_BIND=127.0.0.1
    -HTTP_PORT=8080
    -HTTPS_BIND=127.0.0.1
    -HTTPS_PORT=8443
    -

    -

    This will also change the bindings inside the Nginx container! This is important, if you decide to use a proxy within Docker.

    -

    IMPORTANT: Do not use port 8081, 9081 or 65510!

    -

    Recreate affected containers by running the command:

    -
    -
    -
    -
    docker compose up -d
    -
    -
    -
    -
    docker-compose up -d
    -
    -
    -
    -
    -

    Important information, please read them carefully!

    -
    -

    Info

    -

    If you plan to use a reverse proxy and want to use another server name that is not MAILCOW_HOSTNAME, you need to read Adding additional server names for mailcow UI at the bottom of this page.

    -
    -

    Warning

    -

    Make sure you run generate_config.sh before you enable any site configuration examples below. -The script generate_config.sh copies snake-oil certificates to the correct location, so the services will not fail to start due to missing files.

    +

    Important

    +

    First read the overview.

    Warning

    -

    If you enable TLS SNI (ENABLE_TLS_SNI in mailcow.conf), the certificate paths in your reverse proxy must match the correct paths in data/assets/ssl/{hostname}. The certificates will be split into data/assets/ssl/{hostname1,hostname2,etc} and therefore will not work when you copy the examples from below pointing to data/assets/ssl/cert.pem etc.

    -
    -
    -

    Info

    -

    Using the site configs below will forward ACME requests to mailcow and let it handle certificates itself. -The downside of using mailcow as ACME client behind a reverse proxy is, that you will need to reload your webserver after acme-mailcow changed/renewed/created the certificate. You can either reload your webserver daily or write a script to watch the file for changes. -On many servers logrotate will reload the webserver daily anyway.

    -

    If you want to use a local certbot installation, you will need to change the SSL certificate parameters accordingly. -Make sure you run a post-hook script when you decide to use external ACME clients. You will find an example at the bottom of this page.

    -
    -

    2. Configure your local webserver as reverse proxy:

    -

    Apache 2.4

    -

    Required modules: -

    a2enmod rewrite proxy proxy_http headers ssl
    -

    -

    Let's Encrypt will follow our rewrite, certificate requests in mailcow will work fine.

    -

    Take care of highlighted lines.

    -
    <VirtualHost *:80>
    -  ServerName CHANGE_TO_MAILCOW_HOSTNAME
    -  ServerAlias autodiscover.*
    -  ServerAlias autoconfig.*
    -  RewriteEngine on
    -
    -  RewriteCond %{HTTPS} off
    -  RewriteRule ^/?(.*) https://%{HTTP_HOST}/$1 [R=301,L]
    -
    -  ProxyPass / http://127.0.0.1:8080/
    -  ProxyPassReverse / http://127.0.0.1:8080/
    -  ProxyPreserveHost On
    -  ProxyAddHeaders On
    -  RequestHeader set X-Forwarded-Proto "http"
    -</VirtualHost>
    -<VirtualHost *:443>
    -  ServerName CHANGE_TO_MAILCOW_HOSTNAME
    -  ServerAlias autodiscover.*
    -  ServerAlias autoconfig.*
    -
    -  # You should proxy to a plain HTTP session to offload SSL processing
    -  ProxyPass /Microsoft-Server-ActiveSync http://127.0.0.1:8080/Microsoft-Server-ActiveSync connectiontimeout=4000
    -  ProxyPassReverse /Microsoft-Server-ActiveSync http://127.0.0.1:8080/Microsoft-Server-ActiveSync
    -  ProxyPass / http://127.0.0.1:8080/
    -  ProxyPassReverse / http://127.0.0.1:8080/
    -  ProxyPreserveHost On
    -  ProxyAddHeaders On
    -  RequestHeader set X-Forwarded-Proto "https"
    -
    -  SSLCertificateFile MAILCOW_PATH/data/assets/ssl/cert.pem
    -  SSLCertificateKeyFile MAILCOW_PATH/data/assets/ssl/key.pem
    -
    -  # If you plan to proxy to a HTTPS host:
    -  #SSLProxyEngine On
    -
    -  # If you plan to proxy to an untrusted HTTPS host:
    -  #SSLProxyVerify none
    -  #SSLProxyCheckPeerCN off
    -  #SSLProxyCheckPeerName off
    -  #SSLProxyCheckPeerExpire off
    -</VirtualHost>
    -
    -

    Nginx

    -

    Let's Encrypt will follow our rewrite, certificate requests will work fine.

    -

    Take care of highlighted lines.

    -
    server {
    -  listen 80 default_server;
    -  listen [::]:80 default_server;
    -  server_name CHANGE_TO_MAILCOW_HOSTNAME autodiscover.* autoconfig.*;
    -  return 301 https://$host$request_uri;
    -}
    -server {
    -  listen 443 ssl http2;
    -  listen [::]:443 ssl http2;
    -  server_name CHANGE_TO_MAILCOW_HOSTNAME autodiscover.* autoconfig.*;
    -
    -  ssl_certificate MAILCOW_PATH/data/assets/ssl/cert.pem;
    -  ssl_certificate_key MAILCOW_PATH/data/assets/ssl/key.pem;
    -  ssl_session_timeout 1d;
    -  ssl_session_cache shared:SSL:50m;
    -  ssl_session_tickets off;
    -
    -  # See https://ssl-config.mozilla.org/#server=nginx for the latest ssl settings recommendations
    -  # An example config is given below
    -  ssl_protocols TLSv1.2;
    -  ssl_ciphers HIGH:!aNULL:!MD5:!SHA1:!kRSA;
    -  ssl_prefer_server_ciphers off;
    -
    -  location /Microsoft-Server-ActiveSync {
    -    proxy_pass http://127.0.0.1:8080/Microsoft-Server-ActiveSync;
    -    proxy_set_header Host $http_host;
    -    proxy_set_header X-Real-IP $remote_addr;
    -    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    -    proxy_set_header X-Forwarded-Proto $scheme;
    -    proxy_connect_timeout 75;
    -    proxy_send_timeout 3650;
    -    proxy_read_timeout 3650;
    -    proxy_buffers 64 512k; # Needed since the 2022-04 Update for SOGo
    -    client_body_buffer_size 512k;
    -    client_max_body_size 0;
    -  }
    -
    -  location / {
    -    proxy_pass http://127.0.0.1:8080/;
    -    proxy_set_header Host $http_host;
    -    proxy_set_header X-Real-IP $remote_addr;
    -    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    -    proxy_set_header X-Forwarded-Proto $scheme;
    -    client_max_body_size 0;
    -  # The following Proxy Buffers has to be set if you want to use SOGo after the 2022-04 (April 2022) Update
    -  # Otherwise a Login will fail like this: https://github.com/mailcow/mailcow-dockerized/issues/4537
    -    proxy_buffer_size 128k;
    -    proxy_buffers 64 512k;
    -    proxy_busy_buffers_size 512k;
    -  }
    -}
    -
    -

    HAProxy (community supported)

    -
    -

    Warning

    -

    This is an unsupported community contribution. Feel free to provide fixes.

    -
    -

    Important/Fixme: This example only forwards HTTPS traffic and does not use mailcows built-in ACME client.

    -
    frontend https-in
    -  bind :::443 v4v6 ssl crt mailcow.pem
    -  default_backend mailcow
    -
    -backend mailcow
    -  option forwardfor
    -  http-request set-header X-Forwarded-Proto https if { ssl_fc }
    -  http-request set-header X-Forwarded-Proto http if !{ ssl_fc }
    -  server mailcow 127.0.0.1:8080 check
    -
    -

    Traefik v2 (community supported)

    -
    -

    Warning

    This is an unsupported community contribution. Feel free to provide fixes.

    Important: This config only covers the "reverseproxing" of the webpannel (nginx-mailcow) using Traefik v2, if you also want to reverseproxy the mail services such as dovecot, postfix... you'll just need to adapt the following config to each container and create an EntryPoint on your traefik.toml or traefik.yml (depending which config you use) for each port.

    For this section we'll assume you have your Traefik 2 [certificatesresolvers] properly configured on your traefik configuration file, and also using acme, also, the following example uses Lets Encrypt, but feel free to change it to your own cert resolver. You can find a basic Traefik 2 toml config file with all the above implemented which can be used for this example here traefik.toml if you need one, or a hint on how to adapt your config.

    So, first of all, we are going to disable the acme-mailcow container since we'll use the certs that traefik will provide us. For this we'll have to set SKIP_LETS_ENCRYPT=y on our mailcow.conf, and run the following command to apply the changes:

    -
    +
    docker compose up -d
    @@ -2838,7 +2649,7 @@ For this we'll have to set SKIP_LETS_ENCRYPT=y on our mailcow
         name: traefik_acme
     

    Start the new containers with:

    -
    +
    docker compose up -d
    @@ -2855,93 +2666,13 @@ For this we'll have to set SKIP_LETS_ENCRYPT=y on our mailcow
     

    You can use the command line to run it, or use the docker-compose.yml shown here.

    After we have the certs dumped, we'll have to reload the configs from our postfix and dovecot containers, and check the certs, you can see how here.

    Aaand that should be it 😊, you can check if the Traefik router works fine through Traefik's dashboard / traefik logs / accessing the setted domain through https, or / and check HTTPS, SMTP and IMAP through the commands shown on the page linked before.

    -

    Caddy v2 (supported by the community)

    -
    -

    Warning

    -

    This is an unsupported community contribution. Feel free to provide fixes.

    -
    -

    The configuration of Caddy with mailcow is very simple.

    -

    In the caddyfile you just have to create a section for the mailserver.

    -

    For example -

    MAILCOW_HOSTNAME autodiscover.MAILCOW_HOSTNAME autoconfig.MAILCOW_HOSTNAME {
    -        log {
    -                output file /var/log/caddy/MAILCOW_HOSTNAME.log {
    -                        roll_disabled
    -                        roll_size 512M
    -                        roll_uncompressed
    -                        roll_local_time
    -                        roll_keep 3
    -                        roll_keep_for 48h
    -                }
    -        }
    -
    -        reverse_proxy 127.0.0.1:HTTP_BIND
    -}
    -

    -

    This allows Caddy to automatically create the certificates and accept traffic for these mentioned domains and forward them to mailcow.

    -

    Important: The ACME client of mailcow must be disabled, otherwise mailcow will fail.

    -

    Since Caddy takes care of the certificates itself, we can use the following script to include the Caddy generated certificates into mailcow:

    -
    #!/bin/bash
    -MD5SUM_CURRENT_CERT=($(md5sum /opt/mailcow-dockerized/data/assets/ssl/cert.pem))
    -MD5SUM_NEW_CERT=($(md5sum /var/lib/caddy/.local/share/caddy/certificates/acme-v02.api.letsencrypt.org-directory/your.domain.tld/your.domain.tld.crt))
    -
    -if [ $MD5SUM_CURRENT_CERT != $MD5SUM_NEW_CERT ]; then
    -        cp /var/lib/caddy/.local/share/caddy/certificates/acme-v02.api.letsencrypt.org-directory/your.domain.tld/your.domain.tld.crt /opt/mailcow-dockerized/data/assets/ssl/cert.pem
    -        cp /var/lib/caddy/.local/share/caddy/certificates/acme-v02.api.letsencrypt.org-directory/your.domain.tld/your.domain.tld.key /opt/mailcow-dockerized/data/assets/ssl/key.pem
    -        postfix_c=$(docker ps -qaf name=postfix-mailcow)
    -        dovecot_c=$(docker ps -qaf name=dovecot-mailcow)
    -        nginx_c=$(docker ps -qaf name=nginx-mailcow)
    -        docker restart ${postfix_c} ${dovecot_c} ${nginx_c}
    -
    -else
    -        echo "Certs not copied from Caddy (Not needed)"
    -fi
    -
    -
    -

    Attention

    -

    Caddy's certificate path varies depending on the installation type.
    -In this installation example, Caddy was installed using the Caddy repo (more informations here).
    -
    -To find out the Caddy certificate path on your system, just run a find / -name "certificates".

    -
    -

    This script could be called as a cronjob every hour:

    -
    0 * * * * /bin/bash /path/to/script/deploy-certs.sh  >/dev/null 2>&1
    -
    -

    Optional: Post-hook script for non-mailcow ACME clients

    -

    Using a local certbot (or any other ACME client) requires to restart some containers, you can do this with a post-hook script. -Make sure you change the paths accordingly: -

    #!/bin/bash
    -cp /etc/letsencrypt/live/my.domain.tld/fullchain.pem /opt/mailcow-dockerized/data/assets/ssl/cert.pem
    -cp /etc/letsencrypt/live/my.domain.tld/privkey.pem /opt/mailcow-dockerized/data/assets/ssl/key.pem
    -postfix_c=$(docker ps -qaf name=postfix-mailcow)
    -dovecot_c=$(docker ps -qaf name=dovecot-mailcow)
    -nginx_c=$(docker ps -qaf name=nginx-mailcow)
    -docker restart ${postfix_c} ${dovecot_c} ${nginx_c}
    -

    -

    Adding additional server names for mailcow UI

    -

    If you plan to use a server name that is not MAILCOW_HOSTNAME in your reverse proxy, make sure to populate that name in mailcow.conf via ADDITIONAL_SERVER_NAMES first. Names must be separated by commas and must not contain spaces. If you skip this step, mailcow may respond to your reverse proxy with an incorrect site.

    -
    ADDITIONAL_SERVER_NAMES=webmail.domain.tld,other.example.tld
    -
    -

    Run the following command to apply:

    -
    -
    -
    -
    docker compose up -d
    -
    -
    -
    -
    docker-compose up -d
    -
    -
    -
    -

    Last update: - 2023-03-11 18:09:21 + 2023-06-14 00:42:41 @@ -3031,12 +2762,12 @@ docker restart ${postfix_c} ${dovecot_c} ${nginx_c}
    - + - + - + diff --git a/en/post_installation/reverse-proxy/r_p/index.html b/en/post_installation/reverse-proxy/r_p/index.html new file mode 100644 index 000000000..81763766c --- /dev/null +++ b/en/post_installation/reverse-proxy/r_p/index.html @@ -0,0 +1,2835 @@ + + + + + + + + + + + + + + + + + + + + + + + + Overview - mailcow: dockerized documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + + + + + + +
    + + +
    + +
    + + + + + + +
    +
    + + + +
    +
    +
    + + + + +
    +
    +
    + + + + + + + +
    +
    + + + + + + + +

    Overview

    + +

    You don't need to change the Nginx site that comes with mailcow: dockerized. +mailcow: dockerized trusts the default gateway IP 172.22.1.1 as proxy.

    +

    Make sure you change HTTP_BIND and HTTPS_BIND in mailcow.conf to a local address and set the ports accordingly, for example: +

    HTTP_BIND=127.0.0.1
    +HTTP_PORT=8080
    +HTTPS_BIND=127.0.0.1
    +HTTPS_PORT=8443
    +

    +

    This will also change the bindings inside the Nginx container! This is important, if you decide to use a proxy within Docker.

    +

    IMPORTANT: Do not use port 8081, 9081 or 65510!

    +

    Recreate affected containers by running the command:

    +
    +
    +
    +
    docker compose up -d
    +
    +
    +
    +
    docker-compose up -d
    +
    +
    +
    +
    +

    Important information, please read them carefully!

    +
    +

    Info

    +

    If you plan to use a reverse proxy and want to use another server name that is not MAILCOW_HOSTNAME, you need to read Adding additional server names for mailcow UI below.

    +
    +
    +

    Warning

    +

    Make sure you run generate_config.sh before you enable any site configuration examples. +The script generate_config.sh copies snake-oil certificates to the correct location, so the services will not fail to start due to missing files.

    +
    +
    +

    Warning

    +

    If you enable TLS SNI (ENABLE_TLS_SNI in mailcow.conf), the certificate paths in your reverse proxy must match the correct paths in data/assets/ssl/{hostname}. The certificates will be split into data/assets/ssl/{hostname1,hostname2,etc} and therefore will not work when you copy the examples from below pointing to data/assets/ssl/cert.pem etc.

    +
    +
    +

    Info

    +

    Using the site configuration examples will forward ACME requests to mailcow and let it handle certificates itself. +The downside of using mailcow as ACME client behind a reverse proxy is, that you will need to reload your webserver after acme-mailcow changed/renewed/created the certificate. You can either reload your webserver daily or write a script to watch the file for changes. +On many servers logrotate will reload the webserver daily anyway.

    +

    If you want to use a local certbot installation, you will need to change the SSL certificate parameters accordingly. +Make sure you run a post-hook script when you decide to use external ACME clients. You will find an example below.

    +
    +

    Configure your local webserver as reverse proxy using following configuration examples:

    + +

    Optional: Post-hook script for non-mailcow ACME clients

    +

    Using a local certbot (or any other ACME client) requires to restart some containers, you can do this with a post-hook script. +Make sure you change the paths accordingly: +

    #!/bin/bash
    +cp /etc/letsencrypt/live/my.domain.tld/fullchain.pem /opt/mailcow-dockerized/data/assets/ssl/cert.pem
    +cp /etc/letsencrypt/live/my.domain.tld/privkey.pem /opt/mailcow-dockerized/data/assets/ssl/key.pem
    +postfix_c=$(docker ps -qaf name=postfix-mailcow)
    +dovecot_c=$(docker ps -qaf name=dovecot-mailcow)
    +nginx_c=$(docker ps -qaf name=nginx-mailcow)
    +docker restart ${postfix_c} ${dovecot_c} ${nginx_c}
    +

    +

    Adding additional server names for mailcow UI

    +

    If you plan to use a server name that is not MAILCOW_HOSTNAME in your reverse proxy, make sure to populate that name in mailcow.conf via ADDITIONAL_SERVER_NAMES first. Names must be separated by commas and must not contain spaces. If you skip this step, mailcow may respond to your reverse proxy with an incorrect site.

    +
    ADDITIONAL_SERVER_NAMES=webmail.domain.tld,other.example.tld
    +
    +

    Run the following command to apply:

    +
    +
    +
    +
    docker compose up -d
    +
    +
    +
    +
    docker-compose up -d
    +
    +
    +
    +
    + +
    +
    + + + Last update: + 2023-06-14 00:36:05 + + + +
    + + + + + + +
    +
    + + + + +
    + + + +
    + + + +
    +
    +
    +
    + + + + + + + + + + + \ No newline at end of file diff --git a/en/prerequisite/prerequisite-dns/index.html b/en/prerequisite/prerequisite-dns/index.html index 52a0e290e..00c35a588 100644 --- a/en/prerequisite/prerequisite-dns/index.html +++ b/en/prerequisite/prerequisite-dns/index.html @@ -699,9 +699,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/en/prerequisite/prerequisite-system/index.html b/en/prerequisite/prerequisite-system/index.html index 237ba42be..dc3b4ab99 100644 --- a/en/prerequisite/prerequisite-system/index.html +++ b/en/prerequisite/prerequisite-system/index.html @@ -698,9 +698,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/en/third_party/borgmatic/third_party-borgmatic/index.html b/en/third_party/borgmatic/third_party-borgmatic/index.html index deb5504b9..436666368 100644 --- a/en/third_party/borgmatic/third_party-borgmatic/index.html +++ b/en/third_party/borgmatic/third_party-borgmatic/index.html @@ -591,9 +591,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/en/third_party/checkmk/u_e-checkmk/index.html b/en/third_party/checkmk/u_e-checkmk/index.html index a595a4327..ac75c8624 100644 --- a/en/third_party/checkmk/u_e-checkmk/index.html +++ b/en/third_party/checkmk/u_e-checkmk/index.html @@ -591,9 +591,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/en/third_party/exchange_onprem/third_party-exchange_onprem/index.html b/en/third_party/exchange_onprem/third_party-exchange_onprem/index.html index 5de7acbb5..3a6bac3be 100644 --- a/en/third_party/exchange_onprem/third_party-exchange_onprem/index.html +++ b/en/third_party/exchange_onprem/third_party-exchange_onprem/index.html @@ -591,9 +591,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/en/third_party/gitea/third_party-gitea/index.html b/en/third_party/gitea/third_party-gitea/index.html index 8eeaaf513..29193e4a6 100644 --- a/en/third_party/gitea/third_party-gitea/index.html +++ b/en/third_party/gitea/third_party-gitea/index.html @@ -586,9 +586,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/en/third_party/gogs/third_party-gogs/index.html b/en/third_party/gogs/third_party-gogs/index.html index d52785313..bbdcccf6e 100644 --- a/en/third_party/gogs/third_party-gogs/index.html +++ b/en/third_party/gogs/third_party-gogs/index.html @@ -586,9 +586,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/en/third_party/mailman3/third_party-mailman3/index.html b/en/third_party/mailman3/third_party-mailman3/index.html index a43f8f665..6ce8e8ba8 100644 --- a/en/third_party/mailman3/third_party-mailman3/index.html +++ b/en/third_party/mailman3/third_party-mailman3/index.html @@ -591,9 +591,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/en/third_party/mailpiler/third_party-mailpiler_integration/index.html b/en/third_party/mailpiler/third_party-mailpiler_integration/index.html index 36b1f4e42..bc7ce68bf 100644 --- a/en/third_party/mailpiler/third_party-mailpiler_integration/index.html +++ b/en/third_party/mailpiler/third_party-mailpiler_integration/index.html @@ -591,9 +591,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/en/third_party/nextcloud/third_party-nextcloud/index.html b/en/third_party/nextcloud/third_party-nextcloud/index.html index 3f8d9f2e5..aab1136c6 100644 --- a/en/third_party/nextcloud/third_party-nextcloud/index.html +++ b/en/third_party/nextcloud/third_party-nextcloud/index.html @@ -591,9 +591,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/en/third_party/portainer/third_party-portainer/index.html b/en/third_party/portainer/third_party-portainer/index.html index 9b6deff0f..832e5ad45 100644 --- a/en/third_party/portainer/third_party-portainer/index.html +++ b/en/third_party/portainer/third_party-portainer/index.html @@ -591,9 +591,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/en/third_party/roundcube/third_party-roundcube/index.html b/en/third_party/roundcube/third_party-roundcube/index.html index 7a594c233..4f97921f7 100644 --- a/en/third_party/roundcube/third_party-roundcube/index.html +++ b/en/third_party/roundcube/third_party-roundcube/index.html @@ -589,9 +589,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/en/troubleshooting/debug-admin_login_sogo/index.html b/en/troubleshooting/debug-admin_login_sogo/index.html index 24edbb2f2..fbe640246 100644 --- a/en/troubleshooting/debug-admin_login_sogo/index.html +++ b/en/troubleshooting/debug-admin_login_sogo/index.html @@ -591,9 +591,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/en/troubleshooting/debug-attach_service/index.html b/en/troubleshooting/debug-attach_service/index.html index a8b2c210a..b109d2afe 100644 --- a/en/troubleshooting/debug-attach_service/index.html +++ b/en/troubleshooting/debug-attach_service/index.html @@ -591,9 +591,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/en/troubleshooting/debug-common_problems/index.html b/en/troubleshooting/debug-common_problems/index.html index f544e8f95..62fd4ca93 100644 --- a/en/troubleshooting/debug-common_problems/index.html +++ b/en/troubleshooting/debug-common_problems/index.html @@ -591,9 +591,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/en/troubleshooting/debug-logs/index.html b/en/troubleshooting/debug-logs/index.html index 1431eef0e..5656fbde9 100644 --- a/en/troubleshooting/debug-logs/index.html +++ b/en/troubleshooting/debug-logs/index.html @@ -586,9 +586,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/en/troubleshooting/debug-mysql_aria/index.html b/en/troubleshooting/debug-mysql_aria/index.html index f3d3a5e57..cda71dfbb 100644 --- a/en/troubleshooting/debug-mysql_aria/index.html +++ b/en/troubleshooting/debug-mysql_aria/index.html @@ -591,9 +591,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/en/troubleshooting/debug-mysql_upgrade/index.html b/en/troubleshooting/debug-mysql_upgrade/index.html index 77e8e207e..9ee73fc21 100644 --- a/en/troubleshooting/debug-mysql_upgrade/index.html +++ b/en/troubleshooting/debug-mysql_upgrade/index.html @@ -591,9 +591,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/en/troubleshooting/debug-reset_pw/index.html b/en/troubleshooting/debug-reset_pw/index.html index 120d7f7e3..84c13fb8f 100644 --- a/en/troubleshooting/debug-reset_pw/index.html +++ b/en/troubleshooting/debug-reset_pw/index.html @@ -591,9 +591,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/en/troubleshooting/debug-reset_tls/index.html b/en/troubleshooting/debug-reset_tls/index.html index 2295728a4..c76c5eddb 100644 --- a/en/troubleshooting/debug-reset_tls/index.html +++ b/en/troubleshooting/debug-reset_tls/index.html @@ -586,9 +586,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/en/troubleshooting/debug-rm_volumes/index.html b/en/troubleshooting/debug-rm_volumes/index.html index 3978b473b..7deee329e 100644 --- a/en/troubleshooting/debug-rm_volumes/index.html +++ b/en/troubleshooting/debug-rm_volumes/index.html @@ -586,9 +586,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/en/troubleshooting/debug-rspamd_memory_leaks/index.html b/en/troubleshooting/debug-rspamd_memory_leaks/index.html index 11a2ef0eb..a1ae74692 100644 --- a/en/troubleshooting/debug-rspamd_memory_leaks/index.html +++ b/en/troubleshooting/debug-rspamd_memory_leaks/index.html @@ -586,9 +586,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/en/troubleshooting/debug/index.html b/en/troubleshooting/debug/index.html index 00e864733..2fea66d67 100644 --- a/en/troubleshooting/debug/index.html +++ b/en/troubleshooting/debug/index.html @@ -586,9 +586,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/firststeps-rp/index.html b/firststeps-rp/index.html index ad6de7f64..fe3bef3f6 100644 --- a/firststeps-rp/index.html +++ b/firststeps-rp/index.html @@ -4,10 +4,10 @@ Redirecting... - + - - + + Redirecting... diff --git a/i_u_m/i_u_m_deinstall/index.html b/i_u_m/i_u_m_deinstall/index.html index 899ff5e2e..a90610053 100644 --- a/i_u_m/i_u_m_deinstall/index.html +++ b/i_u_m/i_u_m_deinstall/index.html @@ -596,9 +596,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/i_u_m/i_u_m_install/index.html b/i_u_m/i_u_m_install/index.html index 641691388..c02d48896 100644 --- a/i_u_m/i_u_m_install/index.html +++ b/i_u_m/i_u_m_install/index.html @@ -725,9 +725,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/i_u_m/i_u_m_migration/index.html b/i_u_m/i_u_m_migration/index.html index 08c7939a1..81e69c644 100644 --- a/i_u_m/i_u_m_migration/index.html +++ b/i_u_m/i_u_m_migration/index.html @@ -596,9 +596,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/i_u_m/i_u_m_update/index.html b/i_u_m/i_u_m_update/index.html index 027fbebb0..f7d7a4dc8 100644 --- a/i_u_m/i_u_m_update/index.html +++ b/i_u_m/i_u_m_update/index.html @@ -712,9 +712,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/index.html b/index.html index fe148fd72..160a4691f 100644 --- a/index.html +++ b/index.html @@ -671,9 +671,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/manual-guides/ClamAV/u_e-clamav-additional_dbs/index.html b/manual-guides/ClamAV/u_e-clamav-additional_dbs/index.html index e2b9bb66f..e239048dc 100644 --- a/manual-guides/ClamAV/u_e-clamav-additional_dbs/index.html +++ b/manual-guides/ClamAV/u_e-clamav-additional_dbs/index.html @@ -591,9 +591,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/manual-guides/ClamAV/u_e-clamav-whitelist/index.html b/manual-guides/ClamAV/u_e-clamav-whitelist/index.html index 065f356e5..64b889a9f 100644 --- a/manual-guides/ClamAV/u_e-clamav-whitelist/index.html +++ b/manual-guides/ClamAV/u_e-clamav-whitelist/index.html @@ -591,9 +591,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/manual-guides/Docker/u_e-docker-cust_dockerfiles/index.html b/manual-guides/Docker/u_e-docker-cust_dockerfiles/index.html index 5c7a1fccc..e62d0f7f0 100644 --- a/manual-guides/Docker/u_e-docker-cust_dockerfiles/index.html +++ b/manual-guides/Docker/u_e-docker-cust_dockerfiles/index.html @@ -586,9 +586,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/manual-guides/Dovecot/u_e-dovecot-any_acl/index.html b/manual-guides/Dovecot/u_e-dovecot-any_acl/index.html index 42e1a6804..f116f80bd 100644 --- a/manual-guides/Dovecot/u_e-dovecot-any_acl/index.html +++ b/manual-guides/Dovecot/u_e-dovecot-any_acl/index.html @@ -586,9 +586,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/manual-guides/Dovecot/u_e-dovecot-catchall_vacation/index.html b/manual-guides/Dovecot/u_e-dovecot-catchall_vacation/index.html index af076b337..9e6133056 100644 --- a/manual-guides/Dovecot/u_e-dovecot-catchall_vacation/index.html +++ b/manual-guides/Dovecot/u_e-dovecot-catchall_vacation/index.html @@ -586,9 +586,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/manual-guides/Dovecot/u_e-dovecot-expunge/index.html b/manual-guides/Dovecot/u_e-dovecot-expunge/index.html index 6ff5bd9f1..5ca672a20 100644 --- a/manual-guides/Dovecot/u_e-dovecot-expunge/index.html +++ b/manual-guides/Dovecot/u_e-dovecot-expunge/index.html @@ -591,9 +591,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/manual-guides/Dovecot/u_e-dovecot-extra_conf/index.html b/manual-guides/Dovecot/u_e-dovecot-extra_conf/index.html index 5a2171bd2..f01d6141c 100644 --- a/manual-guides/Dovecot/u_e-dovecot-extra_conf/index.html +++ b/manual-guides/Dovecot/u_e-dovecot-extra_conf/index.html @@ -586,9 +586,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/manual-guides/Dovecot/u_e-dovecot-fts/index.html b/manual-guides/Dovecot/u_e-dovecot-fts/index.html index 5a7de71e2..8351847ed 100644 --- a/manual-guides/Dovecot/u_e-dovecot-fts/index.html +++ b/manual-guides/Dovecot/u_e-dovecot-fts/index.html @@ -591,9 +591,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/manual-guides/Dovecot/u_e-dovecot-idle_interval/index.html b/manual-guides/Dovecot/u_e-dovecot-idle_interval/index.html index c1e3f28cd..774e2d441 100644 --- a/manual-guides/Dovecot/u_e-dovecot-idle_interval/index.html +++ b/manual-guides/Dovecot/u_e-dovecot-idle_interval/index.html @@ -591,9 +591,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/manual-guides/Dovecot/u_e-dovecot-mail-crypt/index.html b/manual-guides/Dovecot/u_e-dovecot-mail-crypt/index.html index 6fb495c4e..4711b9bd9 100644 --- a/manual-guides/Dovecot/u_e-dovecot-mail-crypt/index.html +++ b/manual-guides/Dovecot/u_e-dovecot-mail-crypt/index.html @@ -586,9 +586,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/manual-guides/Dovecot/u_e-dovecot-more/index.html b/manual-guides/Dovecot/u_e-dovecot-more/index.html index efef6d5c0..4f31a02bb 100644 --- a/manual-guides/Dovecot/u_e-dovecot-more/index.html +++ b/manual-guides/Dovecot/u_e-dovecot-more/index.html @@ -591,9 +591,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/manual-guides/Dovecot/u_e-dovecot-performance/index.html b/manual-guides/Dovecot/u_e-dovecot-performance/index.html index b9a8eb47a..c25dd5ef5 100644 --- a/manual-guides/Dovecot/u_e-dovecot-performance/index.html +++ b/manual-guides/Dovecot/u_e-dovecot-performance/index.html @@ -591,9 +591,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/manual-guides/Dovecot/u_e-dovecot-public_folder/index.html b/manual-guides/Dovecot/u_e-dovecot-public_folder/index.html index c3e74950d..eaedff0a7 100644 --- a/manual-guides/Dovecot/u_e-dovecot-public_folder/index.html +++ b/manual-guides/Dovecot/u_e-dovecot-public_folder/index.html @@ -591,9 +591,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/manual-guides/Dovecot/u_e-dovecot-static_master/index.html b/manual-guides/Dovecot/u_e-dovecot-static_master/index.html index d2be9bd13..86456a900 100644 --- a/manual-guides/Dovecot/u_e-dovecot-static_master/index.html +++ b/manual-guides/Dovecot/u_e-dovecot-static_master/index.html @@ -586,9 +586,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/manual-guides/Dovecot/u_e-dovecot-vmail-volume/index.html b/manual-guides/Dovecot/u_e-dovecot-vmail-volume/index.html index cee08a820..bd14e37f2 100644 --- a/manual-guides/Dovecot/u_e-dovecot-vmail-volume/index.html +++ b/manual-guides/Dovecot/u_e-dovecot-vmail-volume/index.html @@ -591,9 +591,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/manual-guides/Nginx/u_e-nginx_custom/index.html b/manual-guides/Nginx/u_e-nginx_custom/index.html index 8f7aa0cd2..f46ce7321 100644 --- a/manual-guides/Nginx/u_e-nginx_custom/index.html +++ b/manual-guides/Nginx/u_e-nginx_custom/index.html @@ -591,9 +591,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/manual-guides/Nginx/u_e-nginx_webmail-site/index.html b/manual-guides/Nginx/u_e-nginx_webmail-site/index.html index b91d1d344..4b11b3b63 100644 --- a/manual-guides/Nginx/u_e-nginx_webmail-site/index.html +++ b/manual-guides/Nginx/u_e-nginx_webmail-site/index.html @@ -586,9 +586,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/manual-guides/Postfix/u_e-postfix-attachment_size/index.html b/manual-guides/Postfix/u_e-postfix-attachment_size/index.html index e654bf134..13542ec09 100644 --- a/manual-guides/Postfix/u_e-postfix-attachment_size/index.html +++ b/manual-guides/Postfix/u_e-postfix-attachment_size/index.html @@ -586,9 +586,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/manual-guides/Postfix/u_e-postfix-custom_transport/index.html b/manual-guides/Postfix/u_e-postfix-custom_transport/index.html index f2f9b3d26..7b931699e 100644 --- a/manual-guides/Postfix/u_e-postfix-custom_transport/index.html +++ b/manual-guides/Postfix/u_e-postfix-custom_transport/index.html @@ -586,9 +586,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/manual-guides/Postfix/u_e-postfix-disable_sender_verification/index.html b/manual-guides/Postfix/u_e-postfix-disable_sender_verification/index.html index b3e5c6992..71d8d678f 100644 --- a/manual-guides/Postfix/u_e-postfix-disable_sender_verification/index.html +++ b/manual-guides/Postfix/u_e-postfix-disable_sender_verification/index.html @@ -591,9 +591,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/manual-guides/Postfix/u_e-postfix-extra_cf/index.html b/manual-guides/Postfix/u_e-postfix-extra_cf/index.html index f8d25b256..4b23ad5cd 100644 --- a/manual-guides/Postfix/u_e-postfix-extra_cf/index.html +++ b/manual-guides/Postfix/u_e-postfix-extra_cf/index.html @@ -586,9 +586,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/manual-guides/Postfix/u_e-postfix-pflogsumm/index.html b/manual-guides/Postfix/u_e-postfix-pflogsumm/index.html index 5f582dd61..a7a61268e 100644 --- a/manual-guides/Postfix/u_e-postfix-pflogsumm/index.html +++ b/manual-guides/Postfix/u_e-postfix-pflogsumm/index.html @@ -586,9 +586,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/manual-guides/Postfix/u_e-postfix-postscreen_whitelist/index.html b/manual-guides/Postfix/u_e-postfix-postscreen_whitelist/index.html index e831dfca5..e654b11d9 100644 --- a/manual-guides/Postfix/u_e-postfix-postscreen_whitelist/index.html +++ b/manual-guides/Postfix/u_e-postfix-postscreen_whitelist/index.html @@ -586,9 +586,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/manual-guides/Postfix/u_e-postfix-relayhost/index.html b/manual-guides/Postfix/u_e-postfix-relayhost/index.html index 5b1f15032..d7783d72d 100644 --- a/manual-guides/Postfix/u_e-postfix-relayhost/index.html +++ b/manual-guides/Postfix/u_e-postfix-relayhost/index.html @@ -591,9 +591,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/manual-guides/Postfix/u_e-postfix-trust_networks/index.html b/manual-guides/Postfix/u_e-postfix-trust_networks/index.html index 5686feca8..ee98d2114 100644 --- a/manual-guides/Postfix/u_e-postfix-trust_networks/index.html +++ b/manual-guides/Postfix/u_e-postfix-trust_networks/index.html @@ -591,9 +591,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/manual-guides/Redis/u_e-redis/index.html b/manual-guides/Redis/u_e-redis/index.html index 9a409d860..8b62cd9bc 100644 --- a/manual-guides/Redis/u_e-redis/index.html +++ b/manual-guides/Redis/u_e-redis/index.html @@ -591,9 +591,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/manual-guides/Rspamd/u_e-rspamd/index.html b/manual-guides/Rspamd/u_e-rspamd/index.html index 17e5f16cc..08ff392e1 100644 --- a/manual-guides/Rspamd/u_e-rspamd/index.html +++ b/manual-guides/Rspamd/u_e-rspamd/index.html @@ -591,9 +591,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/manual-guides/SOGo/u_e-sogo/index.html b/manual-guides/SOGo/u_e-sogo/index.html index f1a1584b9..cedd050ba 100644 --- a/manual-guides/SOGo/u_e-sogo/index.html +++ b/manual-guides/SOGo/u_e-sogo/index.html @@ -591,9 +591,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/manual-guides/Unbound/u_e-unbound-fwd/index.html b/manual-guides/Unbound/u_e-unbound-fwd/index.html index 603479d16..94a36ff13 100644 --- a/manual-guides/Unbound/u_e-unbound-fwd/index.html +++ b/manual-guides/Unbound/u_e-unbound-fwd/index.html @@ -591,9 +591,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/manual-guides/Watchdog/u_e-watchdog-thresholds/index.html b/manual-guides/Watchdog/u_e-watchdog-thresholds/index.html index 9270b59bb..5fdc7f5b7 100644 --- a/manual-guides/Watchdog/u_e-watchdog-thresholds/index.html +++ b/manual-guides/Watchdog/u_e-watchdog-thresholds/index.html @@ -591,9 +591,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/manual-guides/mailcow-UI/u_e-mailcow_ui-bl_wl/index.html b/manual-guides/mailcow-UI/u_e-mailcow_ui-bl_wl/index.html index de603c37d..2b8fedd60 100644 --- a/manual-guides/mailcow-UI/u_e-mailcow_ui-bl_wl/index.html +++ b/manual-guides/mailcow-UI/u_e-mailcow_ui-bl_wl/index.html @@ -586,9 +586,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/manual-guides/mailcow-UI/u_e-mailcow_ui-config/index.html b/manual-guides/mailcow-UI/u_e-mailcow_ui-config/index.html index d99b30b95..4eed11b2d 100644 --- a/manual-guides/mailcow-UI/u_e-mailcow_ui-config/index.html +++ b/manual-guides/mailcow-UI/u_e-mailcow_ui-config/index.html @@ -586,9 +586,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/manual-guides/mailcow-UI/u_e-mailcow_ui-css/index.html b/manual-guides/mailcow-UI/u_e-mailcow_ui-css/index.html index e03b553b4..0c21d7c6b 100644 --- a/manual-guides/mailcow-UI/u_e-mailcow_ui-css/index.html +++ b/manual-guides/mailcow-UI/u_e-mailcow_ui-css/index.html @@ -586,9 +586,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/manual-guides/mailcow-UI/u_e-mailcow_ui-fido/index.html b/manual-guides/mailcow-UI/u_e-mailcow_ui-fido/index.html index 3836febd4..0a21f5f36 100644 --- a/manual-guides/mailcow-UI/u_e-mailcow_ui-fido/index.html +++ b/manual-guides/mailcow-UI/u_e-mailcow_ui-fido/index.html @@ -591,9 +591,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/manual-guides/mailcow-UI/u_e-mailcow_ui-netfilter/index.html b/manual-guides/mailcow-UI/u_e-mailcow_ui-netfilter/index.html index 308fbd472..f357feecf 100644 --- a/manual-guides/mailcow-UI/u_e-mailcow_ui-netfilter/index.html +++ b/manual-guides/mailcow-UI/u_e-mailcow_ui-netfilter/index.html @@ -591,9 +591,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/manual-guides/mailcow-UI/u_e-mailcow_ui-pushover/index.html b/manual-guides/mailcow-UI/u_e-mailcow_ui-pushover/index.html index 5b0b52b11..3c7c445a9 100644 --- a/manual-guides/mailcow-UI/u_e-mailcow_ui-pushover/index.html +++ b/manual-guides/mailcow-UI/u_e-mailcow_ui-pushover/index.html @@ -586,9 +586,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/manual-guides/mailcow-UI/u_e-mailcow_ui-spamalias/index.html b/manual-guides/mailcow-UI/u_e-mailcow_ui-spamalias/index.html index e0eedbfb8..e9e2e2ffa 100644 --- a/manual-guides/mailcow-UI/u_e-mailcow_ui-spamalias/index.html +++ b/manual-guides/mailcow-UI/u_e-mailcow_ui-spamalias/index.html @@ -586,9 +586,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/manual-guides/mailcow-UI/u_e-mailcow_ui-spamfilter/index.html b/manual-guides/mailcow-UI/u_e-mailcow_ui-spamfilter/index.html index 82b1c0f65..bf932c4c7 100644 --- a/manual-guides/mailcow-UI/u_e-mailcow_ui-spamfilter/index.html +++ b/manual-guides/mailcow-UI/u_e-mailcow_ui-spamfilter/index.html @@ -586,9 +586,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/manual-guides/mailcow-UI/u_e-mailcow_ui-sub_addressing/index.html b/manual-guides/mailcow-UI/u_e-mailcow_ui-sub_addressing/index.html index c0be02bba..02516db12 100644 --- a/manual-guides/mailcow-UI/u_e-mailcow_ui-sub_addressing/index.html +++ b/manual-guides/mailcow-UI/u_e-mailcow_ui-sub_addressing/index.html @@ -591,9 +591,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/manual-guides/mailcow-UI/u_e-mailcow_ui-tags/index.html b/manual-guides/mailcow-UI/u_e-mailcow_ui-tags/index.html index cc1f286ad..5a732d92f 100644 --- a/manual-guides/mailcow-UI/u_e-mailcow_ui-tags/index.html +++ b/manual-guides/mailcow-UI/u_e-mailcow_ui-tags/index.html @@ -591,9 +591,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/manual-guides/mailcow-UI/u_e-mailcow_ui-tfa/index.html b/manual-guides/mailcow-UI/u_e-mailcow_ui-tfa/index.html index dca80bcb6..545ca9e6f 100644 --- a/manual-guides/mailcow-UI/u_e-mailcow_ui-tfa/index.html +++ b/manual-guides/mailcow-UI/u_e-mailcow_ui-tfa/index.html @@ -591,9 +591,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/manual-guides/u_e-80_to_443/index.html b/manual-guides/u_e-80_to_443/index.html index 2bd537d15..4e389559e 100644 --- a/manual-guides/u_e-80_to_443/index.html +++ b/manual-guides/u_e-80_to_443/index.html @@ -586,9 +586,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI @@ -2464,7 +2568,7 @@

    Redirect HTTP to HTTPS

    Since February the 28th 2017 mailcow does come with port 80 and 443 enabled.

    -

    Do not use the config below for reverse proxy setups, please see our reverse proxy guide for this, which includes a redirect from HTTP to HTTPS.

    +

    Do not use the config below for reverse proxy setups, please see our reverse proxy guide for this, which includes a redirect from HTTP to HTTPS.

    Open mailcow.conf and set HTTP_BIND= - if not already set.

    Create a new file data/conf/nginx/redirect.conf and add the following server config to the file:

    server {
    @@ -2514,7 +2618,7 @@
       
         
           Last update:
    -      2023-01-13 18:16:08
    +      2023-06-14 00:15:06
           
         
       
    diff --git a/manual-guides/u_e-autodiscover_config/index.html b/manual-guides/u_e-autodiscover_config/index.html
    index f856afec8..f6a561cbd 100644
    --- a/manual-guides/u_e-autodiscover_config/index.html
    +++ b/manual-guides/u_e-autodiscover_config/index.html
    @@ -586,9 +586,36 @@
       
       
       
    +    
    +    
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/manual-guides/u_e-reeanble-weak-protocols/index.html b/manual-guides/u_e-reeanble-weak-protocols/index.html index 9a8074db3..afe8583b6 100644 --- a/manual-guides/u_e-reeanble-weak-protocols/index.html +++ b/manual-guides/u_e-reeanble-weak-protocols/index.html @@ -586,9 +586,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/manual-guides/u_e-update-hooks/index.html b/manual-guides/u_e-update-hooks/index.html index 3d2c21fd2..971bd62c2 100644 --- a/manual-guides/u_e-update-hooks/index.html +++ b/manual-guides/u_e-update-hooks/index.html @@ -586,9 +586,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/manual-guides/u_e-why_unbound/index.html b/manual-guides/u_e-why_unbound/index.html index 1f28b63f0..cd8b56f59 100644 --- a/manual-guides/u_e-why_unbound/index.html +++ b/manual-guides/u_e-why_unbound/index.html @@ -586,9 +586,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/models/model-acl/index.html b/models/model-acl/index.html index c09ec1650..703e1825b 100644 --- a/models/model-acl/index.html +++ b/models/model-acl/index.html @@ -586,9 +586,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/models/model-passwd/index.html b/models/model-passwd/index.html index 47fe598c5..aa781314a 100644 --- a/models/model-passwd/index.html +++ b/models/model-passwd/index.html @@ -591,9 +591,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/models/model-sender_rcv/index.html b/models/model-sender_rcv/index.html index 9d450f00e..4fda26ea9 100644 --- a/models/model-sender_rcv/index.html +++ b/models/model-sender_rcv/index.html @@ -591,9 +591,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/post_installation/firststeps-disable_ipv6/index.html b/post_installation/firststeps-disable_ipv6/index.html index 91e41c066..862836ca3 100644 --- a/post_installation/firststeps-disable_ipv6/index.html +++ b/post_installation/firststeps-disable_ipv6/index.html @@ -596,9 +596,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/post_installation/firststeps-dmarc_reporting/index.html b/post_installation/firststeps-dmarc_reporting/index.html index 4573485f7..fd340687c 100644 --- a/post_installation/firststeps-dmarc_reporting/index.html +++ b/post_installation/firststeps-dmarc_reporting/index.html @@ -658,9 +658,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/post_installation/firststeps-ip_bindings/index.html b/post_installation/firststeps-ip_bindings/index.html index 31983d204..b1bfc6134 100644 --- a/post_installation/firststeps-ip_bindings/index.html +++ b/post_installation/firststeps-ip_bindings/index.html @@ -637,9 +637,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/post_installation/firststeps-local_mta/index.html b/post_installation/firststeps-local_mta/index.html index 71909c47b..93d6f1942 100644 --- a/post_installation/firststeps-local_mta/index.html +++ b/post_installation/firststeps-local_mta/index.html @@ -596,9 +596,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/post_installation/firststeps-logging/index.html b/post_installation/firststeps-logging/index.html index 9aacb49e3..09cb2611d 100644 --- a/post_installation/firststeps-logging/index.html +++ b/post_installation/firststeps-logging/index.html @@ -14,7 +14,7 @@ - + @@ -677,9 +677,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/post_installation/firststeps-rspamd_ui/index.html b/post_installation/firststeps-rspamd_ui/index.html index b57abd425..d26769b93 100644 --- a/post_installation/firststeps-rspamd_ui/index.html +++ b/post_installation/firststeps-rspamd_ui/index.html @@ -11,7 +11,7 @@ - + @@ -588,9 +588,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + diff --git a/post_installation/firststeps-snat/index.html b/post_installation/firststeps-snat/index.html index b1cccbe5e..42e556f1a 100644 --- a/post_installation/firststeps-snat/index.html +++ b/post_installation/firststeps-snat/index.html @@ -588,9 +588,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/post_installation/firststeps-ssl/index.html b/post_installation/firststeps-ssl/index.html index 684512b62..679eee1dc 100644 --- a/post_installation/firststeps-ssl/index.html +++ b/post_installation/firststeps-ssl/index.html @@ -719,9 +719,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI @@ -2886,7 +2990,7 @@ You should make sure these clients use the MAILCOW_HOSTNAME for sec docker restart $(docker ps -qaf name=nginx-mailcow) docker restart $(docker ps -qaf name=dovecot-mailcow)
  • -

    See Post-hook script for non-mailcow ACME clients for a full example script.

    +

    See Post-hook script for non-mailcow ACME clients for a full example script.

    Test against staging ACME directory

    Edit mailcow.conf and add LE_STAGING=y.

    Run the command below to activate your changes:

    @@ -2959,7 +3063,7 @@ bash helper-scripts/expiry-dates.sh Last update: - 2023-01-13 18:34:22 + 2023-06-14 00:15:06 diff --git a/post_installation/firststeps-sync_jobs_migration/index.html b/post_installation/firststeps-sync_jobs_migration/index.html index 3d775e40e..48e01af34 100644 --- a/post_installation/firststeps-sync_jobs_migration/index.html +++ b/post_installation/firststeps-sync_jobs_migration/index.html @@ -593,9 +593,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/post_installation/reverse-proxy/r_p-apache24/index.html b/post_installation/reverse-proxy/r_p-apache24/index.html new file mode 100644 index 000000000..9125db817 --- /dev/null +++ b/post_installation/reverse-proxy/r_p-apache24/index.html @@ -0,0 +1,2728 @@ + + + + + + + + + + + + + + + + + + + + + + + + Apache 2.4 - mailcow: dockerized documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    + +
    +
    + + + +
    + + + + + + +
    + + +
    + +
    + + + + + + +
    +
    + + + +
    +
    +
    + + + + +
    +
    +
    + + + +
    +
    +
    + + + +
    +
    +
    + + + +
    +
    + + + + + + + +

    Apache 2.4

    + +
    +

    Important

    +

    First read the overview.

    +
    +

    Required modules: +

    a2enmod rewrite proxy proxy_http headers ssl
    +

    +

    Let's Encrypt will follow our rewrite, certificate requests in mailcow will work fine.

    +

    Take care of highlighted lines.

    +
    <VirtualHost *:80>
    +  ServerName CHANGE_TO_MAILCOW_HOSTNAME
    +  ServerAlias autodiscover.*
    +  ServerAlias autoconfig.*
    +  RewriteEngine on
    +
    +  RewriteCond %{HTTPS} off
    +  RewriteRule ^/?(.*) https://%{HTTP_HOST}/$1 [R=301,L]
    +
    +  ProxyPass / http://127.0.0.1:8080/
    +  ProxyPassReverse / http://127.0.0.1:8080/
    +  ProxyPreserveHost On
    +  ProxyAddHeaders On
    +  RequestHeader set X-Forwarded-Proto "http"
    +</VirtualHost>
    +<VirtualHost *:443>
    +  ServerName CHANGE_TO_MAILCOW_HOSTNAME
    +  ServerAlias autodiscover.*
    +  ServerAlias autoconfig.*
    +
    +  # You should proxy to a plain HTTP session to offload SSL processing
    +  ProxyPass /Microsoft-Server-ActiveSync http://127.0.0.1:8080/Microsoft-Server-ActiveSync connectiontimeout=4000
    +  ProxyPassReverse /Microsoft-Server-ActiveSync http://127.0.0.1:8080/Microsoft-Server-ActiveSync
    +  ProxyPass / http://127.0.0.1:8080/
    +  ProxyPassReverse / http://127.0.0.1:8080/
    +  ProxyPreserveHost On
    +  ProxyAddHeaders On
    +  RequestHeader set X-Forwarded-Proto "https"
    +
    +  SSLCertificateFile MAILCOW_PATH/data/assets/ssl/cert.pem
    +  SSLCertificateKeyFile MAILCOW_PATH/data/assets/ssl/key.pem
    +
    +  # If you plan to proxy to a HTTPS host:
    +  #SSLProxyEngine On
    +
    +  # If you plan to proxy to an untrusted HTTPS host:
    +  #SSLProxyVerify none
    +  #SSLProxyCheckPeerCN off
    +  #SSLProxyCheckPeerName off
    +  #SSLProxyCheckPeerExpire off
    +</VirtualHost>
    +
    + +
    +
    + + + Last update: + 2023-06-14 00:42:41 + + + +
    + + + + + + +
    +
    + + + + +
    + + + +
    + + + +
    +
    +
    +
    + + + + + + + + + + + \ No newline at end of file diff --git a/post_installation/reverse-proxy/r_p-caddy2/index.html b/post_installation/reverse-proxy/r_p-caddy2/index.html new file mode 100644 index 000000000..9f05ee9aa --- /dev/null +++ b/post_installation/reverse-proxy/r_p-caddy2/index.html @@ -0,0 +1,2732 @@ + + + + + + + + + + + + + + + + + + + + + + + + Caddy v2 (community supported) - mailcow: dockerized documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    + +
    +
    + + + +
    + + + + + + +
    + + +
    + +
    + + + + + + +
    +
    + + + +
    +
    +
    + + + + +
    +
    +
    + + + +
    +
    +
    + + + +
    +
    +
    + + + +
    +
    + + + + + + + +

    Caddy v2 (community supported)

    + +
    +

    Important

    +

    First read the overview.

    +
    +
    +

    Warning

    +

    This is an unsupported community contribution. Feel free to provide fixes.

    +
    +

    The configuration of Caddy with mailcow is very simple.

    +

    In the caddyfile you just have to create a section for the mailserver.

    +

    For example +

    MAILCOW_HOSTNAME autodiscover.MAILCOW_HOSTNAME autoconfig.MAILCOW_HOSTNAME {
    +        log {
    +                output file /var/log/caddy/MAILCOW_HOSTNAME.log {
    +                        roll_disabled
    +                        roll_size 512M
    +                        roll_uncompressed
    +                        roll_local_time
    +                        roll_keep 3
    +                        roll_keep_for 48h
    +                }
    +        }
    +
    +        reverse_proxy 127.0.0.1:HTTP_BIND
    +}
    +

    +

    This allows Caddy to automatically create the certificates and accept traffic for these mentioned domains and forward them to mailcow.

    +

    Important: The ACME client of mailcow must be disabled, otherwise mailcow will fail.

    +

    Since Caddy takes care of the certificates itself, we can use the following script to include the Caddy generated certificates into mailcow:

    +
    #!/bin/bash
    +MD5SUM_CURRENT_CERT=($(md5sum /opt/mailcow-dockerized/data/assets/ssl/cert.pem))
    +MD5SUM_NEW_CERT=($(md5sum /var/lib/caddy/.local/share/caddy/certificates/acme-v02.api.letsencrypt.org-directory/your.domain.tld/your.domain.tld.crt))
    +
    +if [ $MD5SUM_CURRENT_CERT != $MD5SUM_NEW_CERT ]; then
    +        cp /var/lib/caddy/.local/share/caddy/certificates/acme-v02.api.letsencrypt.org-directory/your.domain.tld/your.domain.tld.crt /opt/mailcow-dockerized/data/assets/ssl/cert.pem
    +        cp /var/lib/caddy/.local/share/caddy/certificates/acme-v02.api.letsencrypt.org-directory/your.domain.tld/your.domain.tld.key /opt/mailcow-dockerized/data/assets/ssl/key.pem
    +        postfix_c=$(docker ps -qaf name=postfix-mailcow)
    +        dovecot_c=$(docker ps -qaf name=dovecot-mailcow)
    +        nginx_c=$(docker ps -qaf name=nginx-mailcow)
    +        docker restart ${postfix_c} ${dovecot_c} ${nginx_c}
    +
    +else
    +        echo "Certs not copied from Caddy (Not needed)"
    +fi
    +
    +
    +

    Attention

    +

    Caddy's certificate path varies depending on the installation type.
    +In this installation example, Caddy was installed using the Caddy repo (more informations here).
    +
    +To find out the Caddy certificate path on your system, just run a find / -name "certificates".

    +
    +

    This script could be called as a cronjob every hour:

    +
    0 * * * * /bin/bash /path/to/script/deploy-certs.sh  >/dev/null 2>&1
    +
    + +
    +
    + + + Last update: + 2023-06-14 00:42:41 + + + +
    + + + + + + +
    +
    + + + + +
    + + + +
    + + + +
    +
    +
    +
    + + + + + + + + + + + \ No newline at end of file diff --git a/post_installation/reverse-proxy/r_p-haproxy/index.html b/post_installation/reverse-proxy/r_p-haproxy/index.html new file mode 100644 index 000000000..7433aeae3 --- /dev/null +++ b/post_installation/reverse-proxy/r_p-haproxy/index.html @@ -0,0 +1,2696 @@ + + + + + + + + + + + + + + + + + + + + + + + + HAProxy (community supported) - mailcow: dockerized documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    + +
    +
    + + + +
    + + + + + + +
    + + +
    + +
    + + + + + + +
    +
    + + + +
    +
    +
    + + + + +
    +
    +
    + + + +
    +
    +
    + + + +
    +
    +
    + + + +
    +
    + + + + + + + +

    HAProxy (community supported)

    + +
    +

    Important

    +

    First read the overview.

    +
    +
    +

    Warning

    +

    This is an unsupported community contribution. Feel free to provide fixes.

    +
    +

    Important/Fixme: This example only forwards HTTPS traffic and does not use mailcows built-in ACME client.

    +
    frontend https-in
    +  bind :::443 v4v6 ssl crt mailcow.pem
    +  default_backend mailcow
    +
    +backend mailcow
    +  option forwardfor
    +  http-request set-header X-Forwarded-Proto https if { ssl_fc }
    +  http-request set-header X-Forwarded-Proto http if !{ ssl_fc }
    +  server mailcow 127.0.0.1:8080 check
    +
    + +
    +
    + + + Last update: + 2023-06-14 00:42:41 + + + +
    + + + + + + +
    +
    + + + + +
    + + + +
    + + + +
    +
    +
    +
    + + + + + + + + + + + \ No newline at end of file diff --git a/post_installation/reverse-proxy/r_p-nginx/index.html b/post_installation/reverse-proxy/r_p-nginx/index.html new file mode 100644 index 000000000..114f1ddcf --- /dev/null +++ b/post_installation/reverse-proxy/r_p-nginx/index.html @@ -0,0 +1,2735 @@ + + + + + + + + + + + + + + + + + + + + + + + + Nginx - mailcow: dockerized documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    + +
    +
    + + + +
    + + + + + + +
    + + +
    + +
    + + + + + + +
    +
    + + + +
    +
    +
    + + + + +
    +
    +
    + + + +
    +
    +
    + + + +
    +
    +
    + + + +
    +
    + + + + + + + +

    Nginx

    + +
    +

    Important

    +

    First read the overview.

    +
    +

    Let's Encrypt will follow our rewrite, certificate requests will work fine.

    +

    Take care of highlighted lines.

    +
    server {
    +  listen 80 default_server;
    +  listen [::]:80 default_server;
    +  server_name CHANGE_TO_MAILCOW_HOSTNAME autodiscover.* autoconfig.*;
    +  return 301 https://$host$request_uri;
    +}
    +server {
    +  listen 443 ssl http2;
    +  listen [::]:443 ssl http2;
    +  server_name CHANGE_TO_MAILCOW_HOSTNAME autodiscover.* autoconfig.*;
    +
    +  ssl_certificate MAILCOW_PATH/data/assets/ssl/cert.pem;
    +  ssl_certificate_key MAILCOW_PATH/data/assets/ssl/key.pem;
    +  ssl_session_timeout 1d;
    +  ssl_session_cache shared:SSL:50m;
    +  ssl_session_tickets off;
    +
    +  # See https://ssl-config.mozilla.org/#server=nginx for the latest ssl settings recommendations
    +  # An example config is given below
    +  ssl_protocols TLSv1.2;
    +  ssl_ciphers HIGH:!aNULL:!MD5:!SHA1:!kRSA;
    +  ssl_prefer_server_ciphers off;
    +
    +  location /Microsoft-Server-ActiveSync {
    +    proxy_pass http://127.0.0.1:8080/Microsoft-Server-ActiveSync;
    +    proxy_set_header Host $http_host;
    +    proxy_set_header X-Real-IP $remote_addr;
    +    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    +    proxy_set_header X-Forwarded-Proto $scheme;
    +    proxy_connect_timeout 75;
    +    proxy_send_timeout 3650;
    +    proxy_read_timeout 3650;
    +    proxy_buffers 64 512k; # Needed since the 2022-04 Update for SOGo
    +    client_body_buffer_size 512k;
    +    client_max_body_size 0;
    +  }
    +
    +  location / {
    +    proxy_pass http://127.0.0.1:8080/;
    +    proxy_set_header Host $http_host;
    +    proxy_set_header X-Real-IP $remote_addr;
    +    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    +    proxy_set_header X-Forwarded-Proto $scheme;
    +    client_max_body_size 0;
    +  # The following Proxy Buffers has to be set if you want to use SOGo after the 2022-04 (April 2022) Update
    +  # Otherwise a Login will fail like this: https://github.com/mailcow/mailcow-dockerized/issues/4537
    +    proxy_buffer_size 128k;
    +    proxy_buffers 64 512k;
    +    proxy_busy_buffers_size 512k;
    +  }
    +}
    +
    + +
    +
    + + + Last update: + 2023-06-14 00:42:41 + + + +
    + + + + + + +
    +
    + + + + +
    + + + +
    + + + +
    +
    +
    +
    + + + + + + + + + + + \ No newline at end of file diff --git a/en/post_installation/firststeps-rp/index.html b/post_installation/reverse-proxy/r_p-traefik2/index.html similarity index 66% rename from en/post_installation/firststeps-rp/index.html rename to post_installation/reverse-proxy/r_p-traefik2/index.html index c3bf9f351..cc6e6e9b6 100644 --- a/en/post_installation/firststeps-rp/index.html +++ b/post_installation/reverse-proxy/r_p-traefik2/index.html @@ -8,20 +8,20 @@ - + - + - + - Reverse Proxy - mailcow: dockerized documentation + Traefik v2 (community supported) - mailcow: dockerized documentation @@ -49,11 +49,11 @@ - + - + @@ -61,15 +61,15 @@ - + - + - + @@ -94,11 +94,6 @@
    @@ -129,7 +124,7 @@
  • @@ -2594,183 +2567,21 @@ -

    Reverse Proxy

    +

    Traefik v2 (community supported)

    -

    You don't need to change the Nginx site that comes with mailcow: dockerized. -mailcow: dockerized trusts the default gateway IP 172.22.1.1 as proxy.

    -

    1. Make sure you change HTTP_BIND and HTTPS_BIND in mailcow.conf to a local address and set the ports accordingly, for example: -

    HTTP_BIND=127.0.0.1
    -HTTP_PORT=8080
    -HTTPS_BIND=127.0.0.1
    -HTTPS_PORT=8443
    -

    -

    This will also change the bindings inside the Nginx container! This is important, if you decide to use a proxy within Docker.

    -

    IMPORTANT: Do not use port 8081, 9081 or 65510!

    -

    Recreate affected containers by running the command:

    -
    -
    -
    -
    docker compose up -d
    -
    -
    -
    -
    docker-compose up -d
    -
    -
    -
    -
    -

    Important information, please read them carefully!

    -
    -

    Info

    -

    If you plan to use a reverse proxy and want to use another server name that is not MAILCOW_HOSTNAME, you need to read Adding additional server names for mailcow UI at the bottom of this page.

    -
    -

    Warning

    -

    Make sure you run generate_config.sh before you enable any site configuration examples below. -The script generate_config.sh copies snake-oil certificates to the correct location, so the services will not fail to start due to missing files.

    +

    Important

    +

    First read the overview.

    Warning

    -

    If you enable TLS SNI (ENABLE_TLS_SNI in mailcow.conf), the certificate paths in your reverse proxy must match the correct paths in data/assets/ssl/{hostname}. The certificates will be split into data/assets/ssl/{hostname1,hostname2,etc} and therefore will not work when you copy the examples from below pointing to data/assets/ssl/cert.pem etc.

    -
    -
    -

    Info

    -

    Using the site configs below will forward ACME requests to mailcow and let it handle certificates itself. -The downside of using mailcow as ACME client behind a reverse proxy is, that you will need to reload your webserver after acme-mailcow changed/renewed/created the certificate. You can either reload your webserver daily or write a script to watch the file for changes. -On many servers logrotate will reload the webserver daily anyway.

    -

    If you want to use a local certbot installation, you will need to change the SSL certificate parameters accordingly. -Make sure you run a post-hook script when you decide to use external ACME clients. You will find an example at the bottom of this page.

    -
    -

    2. Configure your local webserver as reverse proxy:

    -

    Apache 2.4

    -

    Required modules: -

    a2enmod rewrite proxy proxy_http headers ssl
    -

    -

    Let's Encrypt will follow our rewrite, certificate requests in mailcow will work fine.

    -

    Take care of highlighted lines.

    -
    <VirtualHost *:80>
    -  ServerName CHANGE_TO_MAILCOW_HOSTNAME
    -  ServerAlias autodiscover.*
    -  ServerAlias autoconfig.*
    -  RewriteEngine on
    -
    -  RewriteCond %{HTTPS} off
    -  RewriteRule ^/?(.*) https://%{HTTP_HOST}/$1 [R=301,L]
    -
    -  ProxyPass / http://127.0.0.1:8080/
    -  ProxyPassReverse / http://127.0.0.1:8080/
    -  ProxyPreserveHost On
    -  ProxyAddHeaders On
    -  RequestHeader set X-Forwarded-Proto "http"
    -</VirtualHost>
    -<VirtualHost *:443>
    -  ServerName CHANGE_TO_MAILCOW_HOSTNAME
    -  ServerAlias autodiscover.*
    -  ServerAlias autoconfig.*
    -
    -  # You should proxy to a plain HTTP session to offload SSL processing
    -  ProxyPass /Microsoft-Server-ActiveSync http://127.0.0.1:8080/Microsoft-Server-ActiveSync connectiontimeout=4000
    -  ProxyPassReverse /Microsoft-Server-ActiveSync http://127.0.0.1:8080/Microsoft-Server-ActiveSync
    -  ProxyPass / http://127.0.0.1:8080/
    -  ProxyPassReverse / http://127.0.0.1:8080/
    -  ProxyPreserveHost On
    -  ProxyAddHeaders On
    -  RequestHeader set X-Forwarded-Proto "https"
    -
    -  SSLCertificateFile MAILCOW_PATH/data/assets/ssl/cert.pem
    -  SSLCertificateKeyFile MAILCOW_PATH/data/assets/ssl/key.pem
    -
    -  # If you plan to proxy to a HTTPS host:
    -  #SSLProxyEngine On
    -
    -  # If you plan to proxy to an untrusted HTTPS host:
    -  #SSLProxyVerify none
    -  #SSLProxyCheckPeerCN off
    -  #SSLProxyCheckPeerName off
    -  #SSLProxyCheckPeerExpire off
    -</VirtualHost>
    -
    -

    Nginx

    -

    Let's Encrypt will follow our rewrite, certificate requests will work fine.

    -

    Take care of highlighted lines.

    -
    server {
    -  listen 80 default_server;
    -  listen [::]:80 default_server;
    -  server_name CHANGE_TO_MAILCOW_HOSTNAME autodiscover.* autoconfig.*;
    -  return 301 https://$host$request_uri;
    -}
    -server {
    -  listen 443 ssl http2;
    -  listen [::]:443 ssl http2;
    -  server_name CHANGE_TO_MAILCOW_HOSTNAME autodiscover.* autoconfig.*;
    -
    -  ssl_certificate MAILCOW_PATH/data/assets/ssl/cert.pem;
    -  ssl_certificate_key MAILCOW_PATH/data/assets/ssl/key.pem;
    -  ssl_session_timeout 1d;
    -  ssl_session_cache shared:SSL:50m;
    -  ssl_session_tickets off;
    -
    -  # See https://ssl-config.mozilla.org/#server=nginx for the latest ssl settings recommendations
    -  # An example config is given below
    -  ssl_protocols TLSv1.2;
    -  ssl_ciphers HIGH:!aNULL:!MD5:!SHA1:!kRSA;
    -  ssl_prefer_server_ciphers off;
    -
    -  location /Microsoft-Server-ActiveSync {
    -    proxy_pass http://127.0.0.1:8080/Microsoft-Server-ActiveSync;
    -    proxy_set_header Host $http_host;
    -    proxy_set_header X-Real-IP $remote_addr;
    -    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    -    proxy_set_header X-Forwarded-Proto $scheme;
    -    proxy_connect_timeout 75;
    -    proxy_send_timeout 3650;
    -    proxy_read_timeout 3650;
    -    proxy_buffers 64 512k; # Needed since the 2022-04 Update for SOGo
    -    client_body_buffer_size 512k;
    -    client_max_body_size 0;
    -  }
    -
    -  location / {
    -    proxy_pass http://127.0.0.1:8080/;
    -    proxy_set_header Host $http_host;
    -    proxy_set_header X-Real-IP $remote_addr;
    -    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    -    proxy_set_header X-Forwarded-Proto $scheme;
    -    client_max_body_size 0;
    -  # The following Proxy Buffers has to be set if you want to use SOGo after the 2022-04 (April 2022) Update
    -  # Otherwise a Login will fail like this: https://github.com/mailcow/mailcow-dockerized/issues/4537
    -    proxy_buffer_size 128k;
    -    proxy_buffers 64 512k;
    -    proxy_busy_buffers_size 512k;
    -  }
    -}
    -
    -

    HAProxy (community supported)

    -
    -

    Warning

    -

    This is an unsupported community contribution. Feel free to provide fixes.

    -
    -

    Important/Fixme: This example only forwards HTTPS traffic and does not use mailcows built-in ACME client.

    -
    frontend https-in
    -  bind :::443 v4v6 ssl crt mailcow.pem
    -  default_backend mailcow
    -
    -backend mailcow
    -  option forwardfor
    -  http-request set-header X-Forwarded-Proto https if { ssl_fc }
    -  http-request set-header X-Forwarded-Proto http if !{ ssl_fc }
    -  server mailcow 127.0.0.1:8080 check
    -
    -

    Traefik v2 (community supported)

    -
    -

    Warning

    This is an unsupported community contribution. Feel free to provide fixes.

    Important: This config only covers the "reverseproxing" of the webpannel (nginx-mailcow) using Traefik v2, if you also want to reverseproxy the mail services such as dovecot, postfix... you'll just need to adapt the following config to each container and create an EntryPoint on your traefik.toml or traefik.yml (depending which config you use) for each port.

    For this section we'll assume you have your Traefik 2 [certificatesresolvers] properly configured on your traefik configuration file, and also using acme, also, the following example uses Lets Encrypt, but feel free to change it to your own cert resolver. You can find a basic Traefik 2 toml config file with all the above implemented which can be used for this example here traefik.toml if you need one, or a hint on how to adapt your config.

    So, first of all, we are going to disable the acme-mailcow container since we'll use the certs that traefik will provide us. For this we'll have to set SKIP_LETS_ENCRYPT=y on our mailcow.conf, and run the following command to apply the changes:

    -
    +
    docker compose up -d
    @@ -2838,7 +2649,7 @@ For this we'll have to set SKIP_LETS_ENCRYPT=y on our mailcow
         name: traefik_acme
     

    Start the new containers with:

    -
    +
    docker compose up -d
    @@ -2855,93 +2666,13 @@ For this we'll have to set SKIP_LETS_ENCRYPT=y on our mailcow
     

    You can use the command line to run it, or use the docker-compose.yml shown here.

    After we have the certs dumped, we'll have to reload the configs from our postfix and dovecot containers, and check the certs, you can see how here.

    Aaand that should be it 😊, you can check if the Traefik router works fine through Traefik's dashboard / traefik logs / accessing the setted domain through https, or / and check HTTPS, SMTP and IMAP through the commands shown on the page linked before.

    -

    Caddy v2 (supported by the community)

    -
    -

    Warning

    -

    This is an unsupported community contribution. Feel free to provide fixes.

    -
    -

    The configuration of Caddy with mailcow is very simple.

    -

    In the caddyfile you just have to create a section for the mailserver.

    -

    For example -

    MAILCOW_HOSTNAME autodiscover.MAILCOW_HOSTNAME autoconfig.MAILCOW_HOSTNAME {
    -        log {
    -                output file /var/log/caddy/MAILCOW_HOSTNAME.log {
    -                        roll_disabled
    -                        roll_size 512M
    -                        roll_uncompressed
    -                        roll_local_time
    -                        roll_keep 3
    -                        roll_keep_for 48h
    -                }
    -        }
    -
    -        reverse_proxy 127.0.0.1:HTTP_BIND
    -}
    -

    -

    This allows Caddy to automatically create the certificates and accept traffic for these mentioned domains and forward them to mailcow.

    -

    Important: The ACME client of mailcow must be disabled, otherwise mailcow will fail.

    -

    Since Caddy takes care of the certificates itself, we can use the following script to include the Caddy generated certificates into mailcow:

    -
    #!/bin/bash
    -MD5SUM_CURRENT_CERT=($(md5sum /opt/mailcow-dockerized/data/assets/ssl/cert.pem))
    -MD5SUM_NEW_CERT=($(md5sum /var/lib/caddy/.local/share/caddy/certificates/acme-v02.api.letsencrypt.org-directory/your.domain.tld/your.domain.tld.crt))
    -
    -if [ $MD5SUM_CURRENT_CERT != $MD5SUM_NEW_CERT ]; then
    -        cp /var/lib/caddy/.local/share/caddy/certificates/acme-v02.api.letsencrypt.org-directory/your.domain.tld/your.domain.tld.crt /opt/mailcow-dockerized/data/assets/ssl/cert.pem
    -        cp /var/lib/caddy/.local/share/caddy/certificates/acme-v02.api.letsencrypt.org-directory/your.domain.tld/your.domain.tld.key /opt/mailcow-dockerized/data/assets/ssl/key.pem
    -        postfix_c=$(docker ps -qaf name=postfix-mailcow)
    -        dovecot_c=$(docker ps -qaf name=dovecot-mailcow)
    -        nginx_c=$(docker ps -qaf name=nginx-mailcow)
    -        docker restart ${postfix_c} ${dovecot_c} ${nginx_c}
    -
    -else
    -        echo "Certs not copied from Caddy (Not needed)"
    -fi
    -
    -
    -

    Attention

    -

    Caddy's certificate path varies depending on the installation type.
    -In this installation example, Caddy was installed using the Caddy repo (more informations here).
    -
    -To find out the Caddy certificate path on your system, just run a find / -name "certificates".

    -
    -

    This script could be called as a cronjob every hour:

    -
    0 * * * * /bin/bash /path/to/script/deploy-certs.sh  >/dev/null 2>&1
    -
    -

    Optional: Post-hook script for non-mailcow ACME clients

    -

    Using a local certbot (or any other ACME client) requires to restart some containers, you can do this with a post-hook script. -Make sure you change the paths accordingly: -

    #!/bin/bash
    -cp /etc/letsencrypt/live/my.domain.tld/fullchain.pem /opt/mailcow-dockerized/data/assets/ssl/cert.pem
    -cp /etc/letsencrypt/live/my.domain.tld/privkey.pem /opt/mailcow-dockerized/data/assets/ssl/key.pem
    -postfix_c=$(docker ps -qaf name=postfix-mailcow)
    -dovecot_c=$(docker ps -qaf name=dovecot-mailcow)
    -nginx_c=$(docker ps -qaf name=nginx-mailcow)
    -docker restart ${postfix_c} ${dovecot_c} ${nginx_c}
    -

    -

    Adding additional server names for mailcow UI

    -

    If you plan to use a server name that is not MAILCOW_HOSTNAME in your reverse proxy, make sure to populate that name in mailcow.conf via ADDITIONAL_SERVER_NAMES first. Names must be separated by commas and must not contain spaces. If you skip this step, mailcow may respond to your reverse proxy with an incorrect site.

    -
    ADDITIONAL_SERVER_NAMES=webmail.domain.tld,other.example.tld
    -
    -

    Run the following command to apply:

    -
    -
    -
    -
    docker compose up -d
    -
    -
    -
    -
    docker-compose up -d
    -
    -
    -
    -

    Last update: - 2023-03-11 18:09:21 + 2023-06-14 00:42:41 diff --git a/post_installation/reverse-proxy/r_p/index.html b/post_installation/reverse-proxy/r_p/index.html new file mode 100644 index 000000000..c85f1cc8a --- /dev/null +++ b/post_installation/reverse-proxy/r_p/index.html @@ -0,0 +1,2835 @@ + + + + + + + + + + + + + + + + + + + + + + + + Overview - mailcow: dockerized documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + + + + + + +
    + + +
    + +
    + + + + + + +
    +
    + + + +
    +
    +
    + + + + +
    +
    +
    + + + + + + + +
    +
    + + + + + + + +

    Overview

    + +

    You don't need to change the Nginx site that comes with mailcow: dockerized. +mailcow: dockerized trusts the default gateway IP 172.22.1.1 as proxy.

    +

    Make sure you change HTTP_BIND and HTTPS_BIND in mailcow.conf to a local address and set the ports accordingly, for example: +

    HTTP_BIND=127.0.0.1
    +HTTP_PORT=8080
    +HTTPS_BIND=127.0.0.1
    +HTTPS_PORT=8443
    +

    +

    This will also change the bindings inside the Nginx container! This is important, if you decide to use a proxy within Docker.

    +

    IMPORTANT: Do not use port 8081, 9081 or 65510!

    +

    Recreate affected containers by running the command:

    +
    +
    +
    +
    docker compose up -d
    +
    +
    +
    +
    docker-compose up -d
    +
    +
    +
    +
    +

    Important information, please read them carefully!

    +
    +

    Info

    +

    If you plan to use a reverse proxy and want to use another server name that is not MAILCOW_HOSTNAME, you need to read Adding additional server names for mailcow UI below.

    +
    +
    +

    Warning

    +

    Make sure you run generate_config.sh before you enable any site configuration examples. +The script generate_config.sh copies snake-oil certificates to the correct location, so the services will not fail to start due to missing files.

    +
    +
    +

    Warning

    +

    If you enable TLS SNI (ENABLE_TLS_SNI in mailcow.conf), the certificate paths in your reverse proxy must match the correct paths in data/assets/ssl/{hostname}. The certificates will be split into data/assets/ssl/{hostname1,hostname2,etc} and therefore will not work when you copy the examples from below pointing to data/assets/ssl/cert.pem etc.

    +
    +
    +

    Info

    +

    Using the site configuration examples will forward ACME requests to mailcow and let it handle certificates itself. +The downside of using mailcow as ACME client behind a reverse proxy is, that you will need to reload your webserver after acme-mailcow changed/renewed/created the certificate. You can either reload your webserver daily or write a script to watch the file for changes. +On many servers logrotate will reload the webserver daily anyway.

    +

    If you want to use a local certbot installation, you will need to change the SSL certificate parameters accordingly. +Make sure you run a post-hook script when you decide to use external ACME clients. You will find an example below.

    +
    +

    Configure your local webserver as reverse proxy using following configuration examples:

    + +

    Optional: Post-hook script for non-mailcow ACME clients

    +

    Using a local certbot (or any other ACME client) requires to restart some containers, you can do this with a post-hook script. +Make sure you change the paths accordingly: +

    #!/bin/bash
    +cp /etc/letsencrypt/live/my.domain.tld/fullchain.pem /opt/mailcow-dockerized/data/assets/ssl/cert.pem
    +cp /etc/letsencrypt/live/my.domain.tld/privkey.pem /opt/mailcow-dockerized/data/assets/ssl/key.pem
    +postfix_c=$(docker ps -qaf name=postfix-mailcow)
    +dovecot_c=$(docker ps -qaf name=dovecot-mailcow)
    +nginx_c=$(docker ps -qaf name=nginx-mailcow)
    +docker restart ${postfix_c} ${dovecot_c} ${nginx_c}
    +

    +

    Adding additional server names for mailcow UI

    +

    If you plan to use a server name that is not MAILCOW_HOSTNAME in your reverse proxy, make sure to populate that name in mailcow.conf via ADDITIONAL_SERVER_NAMES first. Names must be separated by commas and must not contain spaces. If you skip this step, mailcow may respond to your reverse proxy with an incorrect site.

    +
    ADDITIONAL_SERVER_NAMES=webmail.domain.tld,other.example.tld
    +
    +

    Run the following command to apply:

    +
    +
    +
    +
    docker compose up -d
    +
    +
    +
    +
    docker-compose up -d
    +
    +
    +
    +
    + +
    +
    + + + Last update: + 2023-06-14 00:36:05 + + + +
    + + + + + + +
    +
    + + + + +
    + + + +
    + + + +
    +
    +
    +
    + + + + + + + + + + + \ No newline at end of file diff --git a/prerequisite/prerequisite-dns/index.html b/prerequisite/prerequisite-dns/index.html index 691626d05..f3aadca5a 100644 --- a/prerequisite/prerequisite-dns/index.html +++ b/prerequisite/prerequisite-dns/index.html @@ -699,9 +699,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/prerequisite/prerequisite-system/index.html b/prerequisite/prerequisite-system/index.html index a520d0d7f..4a4fafd72 100644 --- a/prerequisite/prerequisite-system/index.html +++ b/prerequisite/prerequisite-system/index.html @@ -698,9 +698,36 @@ + +
  • + + + + + + + + + + + +
  • + + + + + + + + +
  • Rspamd UI diff --git a/search/search_index.json b/search/search_index.json index 251ae75b7..0900abcba 100644 --- a/search/search_index.json +++ b/search/search_index.json @@ -1 +1 @@ -{"config":{"lang":["en","de"],"separator":"[\\s\\-]+","pipeline":["stopWordFilter"]},"docs":[{"location":"","title":"Information & Support","text":""},{"location":"#mailcow-dockerized-","title":"mailcow: dockerized - + =","text":"

    The mailserver suite with the 'moo'

    "},{"location":"#what-is-mailcow-dockerized","title":"What is mailcow: dockerized?","text":"

    Question

    Mailcow, MailCow or mailcow? What is the exact name of the project?

    Correct: mailcow, because mailcow is a registered word mark with a small m

    mailcow: dockerized is an open source groupware/email suite based on docker.

    mailcow relies on many well known and long used components, which in combination result in an all around carefree email server.

    Each container represents a single application, connected in a bridged network.

    • ACME (Automatic generation of Let's Encrypt certificates)
    • ClamAV (anti-virus scanner) (optional)
    • Dovecot (IMAP/POP server for retrieving mail)
    • MariaDB (database to store user information, etc.)
    • Memcached (cache for the SOGo webmailer)
    • Netfilter (Fail2ban-like integration of @mkuron)
    • Nginx (Web server for the mailcow UI)
    • Oletools via Olefy (analyzing office documents for viruses, macros, etc.)
    • PHP (programming language for most web-based mailcow actions)
    • Postfix (Receiver/sender for mail traffic on the Internet)
    • Redis (storage for spam information, DKIM keys, etc.)
    • Rspamd (spam filter with automatic learning of spam mails)
    • SOGo (integrated webmailer and cal/carddav interface)
    • Solr (full-text search for IMAP connections for quick email search) (optional)
    • Unbound (integrated DNS server to check DNSSEC etc.)
    • A watchdog for basic monitoring of container health inside mailcow

    But the heart of mailcow is the graphical web interface, the mailcow UI.

    It offers a place for almost all settings and allows the comfortable creation of new domains and email addresses with just a few clicks.

    But also other or more tricky tasks can be done in it with ease:

    • DKIM and ARC support/generation.
    • Black and white lists per domain and per user.
    • Spam score management per user (reject spam, flag spam, greylist).
    • Allow mailbox users to create temporary spam aliases
    • Prepend email tags to subject or move emails to subfolders (per user)
    • Allow mailbox users to toggle TLS enforcement for inbound and outbound messages
    • Users can reset caches on SOGo ActiveSync devices
    • imapsync to periodically migrate or retrieve remote mailboxes
    • TFA: Yubikey OTP and WebAuthn USB (Google Chrome and derivatives only), TOTP
    • Add whitelist hosts to forward mail to mailcow
    • Fail2ban-like integration
    • Quarantine system
    • Anti-virus scanning including macro scanning in Office documents
    • Integrated basic monitoring
    • And much more...

    The mailcow data (such as emails, user data, etc.) is stored in Docker volumes - take good care of these volumes:

    • clamd-db-vol-1
    • crypt-vol-1
    • mysql-socket-vol-1
    • mysql-vol-1
    • postfix-vol-1
    • redis-vol-1
    • rspamd-vol-1
    • sogo-userdata-backup-vol-1
    • sogo-web-vol-1
    • solr-vol-1
    • vmail-index-vol-1
    • vmail-vol-1

    Warning

    The mails are compressed and encrypted. The key pair can be found in crypt-vol-1. Please don't forget to backup this and other volumes. #nobackupnopity

    "},{"location":"#support-the-mailcow-project","title":"Support the mailcow project","text":"

    Please consider a support contract for a small monthly fee at Servercow1 to support further development. We support you while you support us. :)

    If you are super awesome and would like to support without a contract, you can get a SAL (Stay-Awesome License) that confirms your awesomeness (a flexible one-time payment) at Servercow.

    "},{"location":"#need-help","title":"Need help?","text":"

    There are two ways to achieve support for your mailcow installation.

    "},{"location":"#commercial-support","title":"Commercial support","text":"

    For professional and prioritized commercial support you can sign a basic support subscription at Servercow. For custom inquiries or questions please contact us at info@servercow.de instead.

    Furthermore we do also provide a fully featured and managed mailcow here. This way we take care about the technical magic underneath and you can enjoy your whole mail experience in a hassle-free way.

    "},{"location":"#community-support-and-chat","title":"Community support and chat","text":"

    The other alternative is our free community-support on our various channels below. Please notice, that this support is driven by our awesome community around mailcow. This kind of support is best-effort, voluntary and there is no guarantee for anything.

    • Our mailcow community @ community.mailcow.email

    • Telegram (Support) @ t.me/mailcow.

    • Telegram (Off-Topic) @ t.me/mailcowOfftopic.

    • Twitter @mailcow_email

    Telegram desktop clients are available for multiple platforms. You can search the groups history for keywords.

    For bug tracking, feature requests and code contributions only:

    • GitHub @ mailcow/mailcow-dockerized
    "},{"location":"#interested-try-it-out-right-away","title":"Interested? Try it out right away!","text":"

    Have we got your interest? Get a first overview of the functionalities of mailcow and your mailcow UI in our official mailcow demos!

    Since September 2022 we\u00b4re providing two seperate Demo instances:

    • demo.mailcow.email is the classic Demo based on the stable releases.
    • nightly-demo.mailcow.email is the new nightly demo based on unreleased testing features. (So especially interesting for those who have no possibility to create a test instance themselves.)

    Use these credentials for the demos

    • Administrator: admin / moohoo
    • Domain-Administrator: department / moohoo
    • Mailbox: demo@440044.xyz / moohoo

    The login credentials work for both variants.

    Always up to date

    The demo instances get the latest updates directly after releases from GitHub. Fully automatic, without any downtime!

    1. Servercow is a hosting/support division of The Infrastructure Company GmbH (mailcow maintainer).\u00a0\u21a9

    "},{"location":"backup_restore/b_n_r-accidental_deletion/","title":"Recover accidentally deleted data","text":"

    So you deleted a mailbox and have no backups, he?

    If you noticed your mistake within a few hours, you can probably recover the users data.

    "},{"location":"backup_restore/b_n_r-accidental_deletion/#sogo","title":"SOGo","text":"

    We automatically create daily backups (24h interval starting from running up -d) in /var/lib/docker/volumes/mailcowdockerized_sogo-userdata-backup-vol-1/_data/.

    Make sure the user you want to restore exists in your mailcow. Re-create them if they are missing.

    Copy the file named after the user you want to restore to __MAILCOW_DIRECTORY__/data/conf/sogo.

    1. Copy the backup: cp /var/lib/docker/volumes/mailcowdockerized_sogo-userdata-backup-vol-1/_data/restoreme@example.org __MAILCOW_DIRECTORY__/data/conf/sogo

    2. Run the following command:

      docker compose (Plugin)docker-compose (Standalone)
      docker compose exec -u sogo sogo-mailcow sogo-tool restore -F ALL /etc/sogo restoreme@example.org\n
      docker-compose exec -u sogo sogo-mailcow sogo-tool restore -F ALL /etc/sogo restoreme@example.org\n

      Run sogo-tool without parameters to check for possible restore options.

    3. Delete the copied backup by running rm __MAILCOW_DIRECTORY__/data/conf/sogo

    4. Restart SOGo and Memcached:

    docker compose (Plugin)docker-compose (Standalone)
    docker compose restart sogo-mailcow memcached-mailcow\n
    docker-compose restart sogo-mailcow memcached-mailcow\n
    "},{"location":"backup_restore/b_n_r-accidental_deletion/#mail","title":"Mail","text":"

    In case of an accidental deletion of a mailbox, you will be able to recover for (by default) 5 days. This depends on the MAILDIR_GC_TIME parameter in mailcow.conf.

    A deleted mailbox is copied in its encrypted form to /var/lib/docker/volumes/mailcowdockerized_vmail-vol-1/_data/_garbage.

    The folder inside _garbage follows the structure [timestamp]_[domain_sanitized][user_sanitized], for example 1629109708_exampleorgtest in case of test@example.org deleted on 1629109708.

    To restore make sure you are actually restoring to the same mailcow it was deleted from or you use the same encryption keys in crypt-vol-1.

    Make sure the user you want to restore exists in your mailcow. Re-create them if they are missing.

    Copy the folders from /var/lib/docker/volumes/mailcowdockerized_vmail-vol-1/_data/_garbage/[timestamp]_[domain_sanitized][user_sanitized] back to /var/lib/docker/volumes/mailcowdockerized_vmail-vol-1/_data/[domain]/[user] and resync the folder and recalc the quota:

    docker compose (Plugin)docker-compose (Standalone)
    docker compose exec dovecot-mailcow doveadm force-resync -u restoreme@example.net '*'\ndocker compose exec dovecot-mailcow doveadm quota recalc -u restoreme@example.net\n
    docker-compose exec dovecot-mailcow doveadm force-resync -u restoreme@example.net '*'\ndocker-compose exec dovecot-mailcow doveadm quota recalc -u restoreme@example.net\n
    "},{"location":"backup_restore/b_n_r-backup/","title":"Backup","text":""},{"location":"backup_restore/b_n_r-backup/#backup","title":"Backup","text":""},{"location":"backup_restore/b_n_r-backup/#manual","title":"Manual","text":"

    You can use the provided script helper-scripts/backup_and_restore.sh to backup mailcow automatically.

    Please do not copy this script to another location.

    To run a backup, write \"backup\" as first parameter and either one or more components to backup as following parameters. You can also use \"all\" as second parameter to backup all components. Append --delete-days n to delete backups older than n days.

    # Syntax:\n# ./helper-scripts/backup_and_restore.sh backup (vmail|crypt|redis|rspamd|postfix|mysql|all|--delete-days)\n\n# Backup all, delete backups older than 3 days\n./helper-scripts/backup_and_restore.sh backup all --delete-days 3\n\n# Backup vmail, crypt and mysql data, delete backups older than 30 days\n./helper-scripts/backup_and_restore.sh backup vmail crypt mysql --delete-days 30\n\n# Backup vmail\n./helper-scripts/backup_and_restore.sh backup vmail\n
    "},{"location":"backup_restore/b_n_r-backup/#variables-for-backuprestore-script","title":"Variables for backup/restore script","text":""},{"location":"backup_restore/b_n_r-backup/#multithreading","title":"Multithreading","text":"

    With the 2022-10 update it is possible to run the script with multithreading support. This can be used for backups as well as for restores.

    To start the backup/restore with multithreading you have to add THREADS as an environment variable in front of the command to execute the script.

    THREADS=14 /opt/mailcow-dockerized/helper-scripts/backup_and_restore.sh backup all\n
    The number after the = character indicates the number of threads. Please keep your core count -2 to leave enough CPU power for mailcow itself.

    "},{"location":"backup_restore/b_n_r-backup/#backup-path","title":"Backup path","text":"

    The script will ask you for a backup location. Inside of this location it will create folders in the format \"mailcow_DATE\". You should not rename those folders to not break the restore process.

    To run a backup unattended, define MAILCOW_BACKUP_LOCATION as environment variable before starting the script:

    MAILCOW_BACKUP_LOCATION=/opt/backup /opt/mailcow-dockerized/helper-scripts/backup_and_restore.sh backup all\n

    Tip

    Both variables mentioned above can also be combined! Ex:

    MAILCOW_BACKUP_LOCATION=/opt/backup THREADS=14 /opt/mailcow-dockerized/helper-scripts/backup_and_restore.sh backup all\n

    "},{"location":"backup_restore/b_n_r-backup/#cronjob","title":"Cronjob","text":"

    You can run the backup script regularly via cronjob. Make sure BACKUP_LOCATION exists:

    PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin\n5 4 * * * cd /opt/mailcow-dockerized/; MAILCOW_BACKUP_LOCATION=/mnt/mailcow_backups /opt/mailcow-dockerized/helper-scripts/backup_and_restore.sh backup mysql crypt redis --delete-days 3\n

    Per default cron sends the full result of each backup operation by email. If you want cron to only mail on error (non-zero exit code) you may want to use the following snippet. Pathes need to be modified according to your setup (this script is a user contribution).

    This following script may be placed in /etc/cron.daily/mailcow-backup - do not forget to mark it as executable via chmod +x:

    #!/bin/sh\n\n# Backup mailcow data\n# https://mailcow.github.io/mailcow-dockerized-docs/backup_restore/b_n_r-backup/\n\nset -e\n\nOUT=\"$(mktemp)\"\nexport MAILCOW_BACKUP_LOCATION=\"/opt/backup\"\nSCRIPT=\"/opt/mailcow-dockerized/helper-scripts/backup_and_restore.sh\"\nPARAMETERS=\"backup all\"\nOPTIONS=\"--delete-days 30\"\n\n# run command\nset +e\n\"${SCRIPT}\" ${PARAMETERS} ${OPTIONS} 2>&1 > \"$OUT\"\nRESULT=$?\n\nif [ $RESULT -ne 0 ]\n    then\n            echo \"${SCRIPT} ${PARAMETERS} ${OPTIONS} encounters an error:\"\n            echo \"RESULT=$RESULT\"\n            echo \"STDOUT / STDERR:\"\n            cat \"$OUT\"\nfi\n
    "},{"location":"backup_restore/b_n_r-backup/#backup-strategy-with-rsync-and-mailcow-backup-script","title":"Backup strategy with rsync and mailcow backup script","text":"

    Create the destination directory for mailcows helper script:

    mkdir -p /external_share/backups/backup_script\n

    Create cronjobs:

    PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin\n25 1 * * * rsync -aH --delete /opt/mailcow-dockerized /external_share/backups/mailcow-dockerized\n40 2 * * * rsync -aH --delete /var/lib/docker/volumes /external_share/backups/var_lib_docker_volumes\n5 4 * * * cd /opt/mailcow-dockerized/; BACKUP_LOCATION=/external_share/backups/backup_script /opt/mailcow-dockerized/helper-scripts/backup_and_restore.sh backup mysql crypt redis --delete-days 3\n# If you want to, use the acl util to backup permissions of some/all folders/files: getfacl -Rn /path\n

    On the destination (in this case /external_share/backups) you may want to have snapshot capabilities (ZFS, Btrfs etc.). Snapshot daily and keep for n days for a consistent backup. Do not rsync to a Samba share, you need to keep the correct permissions!

    To restore you'd simply need to run rsync the other way round and restart Docker to re-read the volumes. Run:

    docker compose (Plugin)docker-compose (Standalone)
    docker compose pull\ndocker compose up -d\n
    docker-compose pull\ndocker-compose up -d\n

    If you are lucky Redis and MariaDB can automatically fix the inconsistent databases (if they are inconsistent). In case of a corrupted database you'd need to use the helper script to restore the inconsistent elements. If a restore fails, try to extract the backups and copy the files back manually. Keep the file permissions!

    "},{"location":"backup_restore/b_n_r-backup_restore-maildir/","title":"Maildir","text":""},{"location":"backup_restore/b_n_r-backup_restore-maildir/#backup","title":"Backup","text":"

    This line backups the vmail directory to a file backup_vmail.tar.gz in the mailcow root directory:

    docker compose (Plugin)docker-compose (Standalone)
    cd /path/to/mailcow-dockerized\ndocker run --rm -i -v $(docker inspect --format '{{ range .Mounts }}{{ if eq .Destination \"/var/vmail\" }}{{ .Name }}{{ end }}{{ end }}' $(docker compose ps -q dovecot-mailcow)):/vmail -v ${PWD}:/backup debian:bullseye-slim tar cvfz /backup/backup_vmail.tar.gz /vmail\n
    cd /path/to/mailcow-dockerized\ndocker run --rm -i -v $(docker inspect --format '{{ range .Mounts }}{{ if eq .Destination \"/var/vmail\" }}{{ .Name }}{{ end }}{{ end }}' $(docker-compose ps -q dovecot-mailcow)):/vmail -v ${PWD}:/backup debian:bullseye-slim tar cvfz /backup/backup_vmail.tar.gz /vmail\n

    You can change the path by adjusting ${PWD} (which equals to the current directory) to any path you have write-access to. Set the filename backup_vmail.tar.gz to any custom name, but leave the path as it is. Example: [...] tar cvfz /backup/my_own_filename_.tar.gz

    "},{"location":"backup_restore/b_n_r-backup_restore-maildir/#restore","title":"Restore","text":"docker compose (Plugin)docker-compose (Standalone)
    cd /path/to/mailcow-dockerized\ndocker run --rm -it -v $(docker inspect --format '{{ range .Mounts }}{{ if eq .Destination \"/var/vmail\" }}{{ .Name }}{{ end }}{{ end }}' $(docker compose ps -q dovecot-mailcow)):/vmail -v ${PWD}:/backup debian:bullseye-slim tar xvfz /backup/backup_vmail.tar.gz\n
    cd /path/to/mailcow-dockerized\ndocker run --rm -it -v $(docker inspect --format '{{ range .Mounts }}{{ if eq .Destination \"/var/vmail\" }}{{ .Name }}{{ end }}{{ end }}' $(docker-compose ps -q dovecot-mailcow)):/vmail -v ${PWD}:/backup debian:bullseye-slim tar xvfz /backup/backup_vmail.tar.gz\n
    "},{"location":"backup_restore/b_n_r-backup_restore-mysql/","title":"MySQL (mysqldump)","text":""},{"location":"backup_restore/b_n_r-backup_restore-mysql/#backup","title":"Backup","text":"docker compose (Plugin)docker-compose (Standalone)
    cd /path/to/mailcow-dockerized\nsource mailcow.conf\nDATE=$(date +\"%Y%m%d_%H%M%S\")\ndocker compose exec -T mysql-mailcow mysqldump --default-character-set=utf8mb4 -u${DBUSER} -p${DBPASS} ${DBNAME} > backup_${DBNAME}_${DATE}.sql\n
    cd /path/to/mailcow-dockerized\nsource mailcow.conf\nDATE=$(date +\"%Y%m%d_%H%M%S\")\ndocker-compose exec -T mysql-mailcow mysqldump --default-character-set=utf8mb4 -u${DBUSER} -p${DBPASS} ${DBNAME} > backup_${DBNAME}_${DATE}.sql\n
    "},{"location":"backup_restore/b_n_r-backup_restore-mysql/#restore","title":"Restore","text":"

    Warning

    docker compose (Plugin)docker-compose (Standalone)

    You should redirect the SQL dump without docker compose to prevent parsing errors.

    You should redirect the SQL dump without docker-compose to prevent parsing errors.

    cd /path/to/mailcow-dockerized\nsource mailcow.conf\ndocker exec -i $(docker compose ps -q mysql-mailcow) mysql -u${DBUSER} -p${DBPASS} ${DBNAME} < backup_file.sql\n
    "},{"location":"backup_restore/b_n_r-coldstandby/","title":"Cold-standby backup","text":"

    mailcow offers an easy way to create a consistent copy of itself to be rsync'ed to a remote location without downtime.

    This may also be used to transfer your mailcow to a new server.

    "},{"location":"backup_restore/b_n_r-coldstandby/#you-should-know","title":"You should know","text":"

    The provided script will work on default installations.

    It may break when you use unsupported volume overrides. We don't support that and we will not include hacks to support that. Please run and maintain a fork if you plan to keep your changes.

    The script will use the same paths as your default mailcow installation. That is the mailcow base directory - for most users /opt/mailcow-dockerized - as well as the mountpoints.

    To find the paths of your source volumes we use docker inspect and read the destination directory of every volume related to your mailcow compose project. This means we will also transfer volumes you may have added in an override file. Local bind mounts may or may not work.

    The script uses rsync with the --delete flag. The destination will be an exact copy of the source.

    mariabackup is used to create a consistent copy of the SQL data directory.

    After rsync'ing the data we will run the command below (depending on your set docker compose type in mailcow.conf) and remove old image tags from the destination:

    docker compose (Plugin)docker-compose (Standalone)
    docker compose pull\n
    docker-compose pull\n

    Your source will not be changed at any time.

    You may want to make sure to use the same /etc/docker/daemon.json on the remote target.

    You should not run disk snapshots (e.g. via ZFS, LVM etc.) on the target at the very same time as this script is run.

    Versioning is not part of this script, we rely on the destination (snapshots or backups). You may also want to use any other tool for that.

    "},{"location":"backup_restore/b_n_r-coldstandby/#prepare","title":"Prepare","text":"

    You will need an SSH-enabled destination and a keyfile to connect to said destination. The key should not be protected by a password for the script to work unattended.

    In your mailcow base directory, e.g. /opt/mailcow-dockerized you will find a file create_cold_standby.sh.

    Edit this file and change the exported variables:

    export REMOTE_SSH_KEY=/path/to/keyfile\nexport REMOTE_SSH_PORT=22\nexport REMOTE_SSH_HOST=mailcow-backup.host.name\n

    The key must be owned and readable by root only.

    Both the source and destination require rsync >= v3.1.0. The destination must have Docker and docker compose v2 available.

    The script will detect errors automatically and exit.

    You may want to test the connection by running ssh mailcow-backup.host.name -p22 -i /path/to/keyfile.

    "},{"location":"backup_restore/b_n_r-coldstandby/#backup-and-refresh-the-cold-standby","title":"Backup and refresh the cold-standby","text":"

    Run the first backup, this may take a while depending on the connection:

    bash /opt/mailcow-dockerized/create_cold_standby.sh\n

    That was easy, wasn't it?

    Updating your cold-standby is just as easy:

    bash /opt/mailcow-dockerized/create_cold_standby.sh\n

    It's the same command.

    "},{"location":"backup_restore/b_n_r-coldstandby/#automated-backups-with-cron","title":"Automated backups with cron","text":"

    First make sure that the cron service is enabled and running:

    systemctl enable cron.service && systemctl start cron.service\n

    To automate the backups to the cold-standby server you can use a cron job. To edit the cron jobs for the root user run:

    crontab -e\n

    Add the following lines to synchronize the cold standby server daily at 03:00. In this example errors of the last execution are logged into a file.

    PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin\n\n0 3 * * * bash /opt/mailcow-dockerized/create_cold_standby.sh 2> /var/log/mailcow-coldstandby-sync.log\n

    If saved correctly, the cron job should be shown by typing:

    crontab -l\n
    "},{"location":"backup_restore/b_n_r-restore/","title":"Restore","text":""},{"location":"backup_restore/b_n_r-restore/#restore","title":"Restore","text":"

    Please do not copy this script to another location.

    To run a restore, start mailcow, use the script with \"restore\" as first parameter.

    # Syntax:\n# ./helper-scripts/backup_and_restore.sh restore\n

    The script will ask you for a backup location containing the mailcow_DATE folders.

    "},{"location":"client/client-android/","title":"Android","text":"
    1. Open the Email app.
    2. If this is your first email account, tap Add Account; if not, tap More and Settings and then Add account.
    3. Select Microsoft Exchange ActiveSync.
    4. Enter your email address () and password.
    5. Tap Sign in.
    "},{"location":"client/client-apple/","title":"Apple macOS / iOS","text":""},{"location":"client/client-apple/#method-1-via-mobileconfig","title":"Method 1 via Mobileconfig","text":"

    Email, contacts and calendars can be configured automatically on Apple devices by installing a profile. To download a profile you must login to the mailcow UI first.

    "},{"location":"client/client-apple/#method-11-imap-smtp-and-calcarddav","title":"Method 1.1: IMAP, SMTP and Cal/CardDAV","text":"

    This method configures IMAP, CardDAV and CalDAV.

    1. Download and open the file from https://${MAILCOW_HOSTNAME}/mobileconfig.phpmailcow.mobileconfig.
    2. Enter the unlock code (iPhone) or computer password (Mac).
    3. Enter your email password three times when prompted.
    "},{"location":"client/client-apple/#method-12-imap-smtp-no-dav","title":"Method 1.2: IMAP, SMTP (no DAV)","text":"

    This method configures IMAP and SMTP only.

    1. Download and open the file from https://${MAILCOW_HOSTNAME}/mobileconfig.php?only_emailmailcow.mobileconfig.
    2. Enter the unlock code (iPhone) or computer password (Mac).
    3. Enter your email password when prompted.
    "},{"location":"client/client-apple/#method-2-exchange-activesync-emulation","title":"Method 2 (Exchange ActiveSync emulation)","text":"

    On iOS, Exchange ActiveSync is also supported as an alternative to the procedure above. It has the advantage of supporting push email (i.e. you are immediately notified of incoming messages), but has some limitations, e.g. it does not support more than three email addresses per contact in your address book. Follow the steps below if you decide to use Exchange instead.

    1. Open the Settings app, tap Mail, tap Accounts, tap Add Acccount, select Exchange.
    2. Enter your email address () and tap Next.
    3. Enter your password, tap Next again.
    4. Finally, tap Save.
    "},{"location":"client/client-emclient/","title":"eM Client","text":"
    1. Launch eM Client.
    2. If this is the first time you launched eM Client, it asks you to set up your account. Proceed to step 4.
    3. Go to Menu at the top, select Tools and Accounts.
    4. Enter your email address () and click Start Now.
    5. Enter your password and click Continue.
    6. Enter your name () and click Next.
    7. Click Finish.
    "},{"location":"client/client-kontact/","title":"KDE Kontact","text":"
    1. Launch Kontact.
    2. If this is the first time you launched Kontact or KMail, it asks you to set up your account. Proceed to step 4.
    3. Go to Mail in the sidebar. Go to the Tools menu and select Account Wizard.
    4. Enter your name (), email address () and your password. Click Next.
    5. Click Create Account. If prompted, re-enter your password and click OK.
    6. Close the window by clicking Finish.
    7. Go to Calendar in the sidebar.
    8. Go to the Settings menu and select Configure KOrganizer.
    9. Go to the Calendars tab and click the Add button.
    10. Choose DAV groupware resource and click OK.
    11. Enter your email address () and your password. Click Next.
    12. Select ScalableOGo from the dropdown menu and click Next.
    13. Enter your mailcow hostname into the Host field and click Next.
    14. Click Test Connection and then Finish. Finally, click OK twice.

    Once you have set up Kontact, you can also use KMail, KOrganizer and KAddressBook individually.

    "},{"location":"client/client-manual/","title":"Manual configuration","text":"

    These instructions are valid for unchanged port bindings only!

    "},{"location":"client/client-manual/#email","title":"Email","text":"Service Encryption Host Port IMAP STARTTLS mailcow hostname 143 IMAPS SSL mailcow hostname 993 POP3 STARTTLS mailcow hostname 110 POP3S SSL mailcow hostname 995 SMTP STARTTLS mailcow hostname 587 SMTPS SSL mailcow hostname 465

    Please use the \"plain\" password setting as the authentication mechanism. Contrary to what the name implies, the password will not be transferred to the server in plain text as no authentication is allowed to take place without TLS.

    "},{"location":"client/client-manual/#contacts-and-calendars","title":"Contacts and calendars","text":"

    SOGos default calendar (CalDAV) and contacts (CardDAV) URLs:

    1. CalDAV https://mail.example.com/SOGo/dav/user@example.com/Calendar/personal/https:///SOGo/dav//Calendar/personal/

    2. CardDAV https://mail.example.com/SOGo/dav/user@example.com/Contacts/personal/https:///SOGo/dav//Contacts/personal/

    Some applications may require you to use https://mail.example.com/SOGo/dav/https:///SOGo/dav/ or the full path to your calendar, which can be found and copied from within SOGo.

    "},{"location":"client/client-outlook/","title":"Microsoft Outlook","text":"
    1. Download and install Outlook CalDav Synchronizer.
    2. Launch Outlook.
    3. If this is the first time you launched Outlook, it asks you to set up your account. Proceed to step 5.
    4. Go to the File menu and click Add Account.
    5. Enter your name (), email address () and your password. Click Next.
    6. Click Finish.
    7. Go to the CalDav Synchronizer ribbon and click Synchronization Profiles.
    8. Click the second button at top (Add multiple profiles), select Sogo, click Ok.
    9. Click the Get IMAP/POP3 account settings button.
    10. Click Discover resources and assign to Outlook folders.
    11. In the Select Resource window that pops up, select your main calendar (usually Personal Calendar), click the ... button, assign it to Calendar, and click OK. Go to the Address Books and Tasks tabs and repeat repeat the process accordingly. Do not assign multiple calendars, address books or task lists!
    12. Close all windows with the OK buttons.
    "},{"location":"client/client-outlook/#outlook-2016-or-higher-from-office-365-on-windows","title":"Outlook 2016 or higher from Office 365 on Windows","text":"

    This is only applicable if your server administrator has not disabled EAS for Outlook. If it is disabled, please follow the guide for Outlook 2007 instead.

    Outlook 2016 has an issue with autodiscover. Only Outlook from Office 365 is affected. If you installed Outlook from another source, please follow the guide for Outlook 2013 or higher.

    For EAS you must use the old assistant by launching C:\\Program Files (x86)\\Microsoft Office\\root\\Office16\\OLCFG.EXE. If this application opens, you can go to step 4 of the guide for Outlook 2013 below.

    If it does not open, you can completely disable the new account creation wizard and follow the guide for Outlook 2013 below.

    "},{"location":"client/client-outlook/#outlook-2007-or-2010-on-windows","title":"Outlook 2007 or 2010 on Windows","text":""},{"location":"client/client-outlook/#outlook-2007-or-higher-on-windows-calendercontacts-via-caldav-synchronizer","title":"Outlook 2007 or higher on Windows (Calender/Contacts via CalDav Synchronizer)","text":""},{"location":"client/client-outlook/#outlook-2013-or-higher-on-windows-active-sync-not-recommended","title":"Outlook 2013 or higher on Windows (Active Sync - not recommended)","text":"

    This is only applicable if your server administrator has not disabled EAS for Outlook. If it is disabled, please follow the guide for Outlook 2007 instead.

    1. Launch Outlook.
    2. If this is the first time you launched Outlook, it asks you to set up your account. Proceed to step 4.
    3. Go to the File menu and click Add Account.
    4. Enter your name (), email address () and your password. Click Next.
    5. When prompted, enter your password again, check Remember my credentials and click OK.
    6. Click the Allow button.
    7. Click Finish.
    "},{"location":"client/client-outlook/#outlook-2011-or-higher-on-macos","title":"Outlook 2011 or higher on macOS","text":"

    The Mac version of Outlook does not synchronize calendars and contacts and therefore is not supported.

    "},{"location":"client/client-thunderbird/","title":"Mozilla Thunderbird","text":"
    1. Launch Thunderbird.
    2. If this is the first time you launched Thunderbird, it asks you whether you would like a new email address. Click Skip this and use my existing email and proceed to step 4.
    3. Go to the File menu and select New, Existing Mail Account....
    4. Enter your name (), email address () and your password. Make sure the Remember password checkbox is selected and click Continue.
    5. Once the configuration has been automatically detected, make sure IMAP is selected and click Done.
    6. To use your contacts from the server, click on the arrow next to \"Address Books\" and click the Connect button on each address book you would like to use.
    7. To use your calendars from the server, click on the arrow next to \"Calendars\" and click the Connect button on each calendar you would like to use.
    8. (Optional) If you want Thunderbird to sync all subfolders, go to the Account Settings menu and select Server Settings. In the Server Settings tab, click on the Advanced button. In the Advanced Account Settings window, uncheck the \"Show only subscribed folders\" checkbox. Click OK to save the changes.
    9. Click Finish to close the Account Setup window.
    "},{"location":"client/client-windows/","title":"Windows Mail","text":"

    Windows 8 and higher support email, contacts and calendar via Exchange ActiveSync.

    1. Open the Mail app.
    2. If you have not previously used Mail, you can click Add Account in the main window. Proceed to step 4.
    3. Click Accounts in the sidebar on the left, then click Add Account on the far right.
    4. Select Exchange.
    5. Enter your email address () and click Next.
    6. Enter your password and click Log in.

    Once you have set up the Mail app, you can also use the People and Calendar apps.

    "},{"location":"client/client/","title":"Overview","text":"

    mailcow supports a variety of email clients, both on desktop computers and on smartphones. Below, you can find a number of configuration guides that explain how to configure your mailcow account.

    Tip

    If you access this page by logging into your mailcow server and clicking the \"Show configuration guides for email clients and smartphones\" link, all of the guides will be personalized with your email address and server name.

    Success

    Since you accessed this page after logging into your mailcow server, all of the guides have been personalized with your email address and server name.
    • Android
    • Apple iOS / macOS
    • eM Client
    • KDE Kontact / KMail
    • Microsoft Outlook
    • Mozilla Thunderbird
    • Windows Mail
    • Manual configuration
    "},{"location":"i_u_m/i_u_m_deinstall/","title":"Deinstallation","text":"

    To remove mailcow: dockerized with all it's volumes, images and containers do:

    docker compose (Plugin)docker-compose (Standalone)
    docker compose down -v --rmi all --remove-orphans\n
    docker-compose down -v --rmi all --remove-orphans\n

    Info