Dieser Commit ist enthalten in:
milkmaker 2022-05-08 20:13:29 +00:00
Ursprung 2b682d40d9
Commit 9b3e57a9af
316 geänderte Dateien mit 10135 neuen und 7016 gelöschten Zeilen

Datei anzeigen

@ -9,7 +9,7 @@
<link rel="icon" href="/mailcow-dockerized-docs/assets/images/favicon.png">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.11">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.14">
@ -17,10 +17,10 @@
<link rel="stylesheet" href="/mailcow-dockerized-docs/assets/stylesheets/main.8c5ef100.min.css">
<link rel="stylesheet" href="/mailcow-dockerized-docs/assets/stylesheets/main.3de6f41f.min.css">
<link rel="stylesheet" href="/mailcow-dockerized-docs/assets/stylesheets/palette.9647289d.min.css">
<link rel="stylesheet" href="/mailcow-dockerized-docs/assets/stylesheets/palette.cc9b2e1e.min.css">
@ -2425,7 +2425,7 @@
<script id="__config" type="application/json">{"base": "/mailcow-dockerized-docs/", "features": ["navigation.top", "navigation.tracking"], "search": "/mailcow-dockerized-docs/assets/javascripts/workers/search.2a1c317c.min.js", "translations": {"clipboard.copied": "Copied to clipboard", "clipboard.copy": "Copy to clipboard", "search.config.lang": "en", "search.config.pipeline": "trimmer, stopWordFilter", "search.config.separator": "[\\s\\-]+", "search.placeholder": "Search", "search.result.more.one": "1 more on this page", "search.result.more.other": "# more on this page", "search.result.none": "No matching documents", "search.result.one": "1 matching document", "search.result.other": "# matching documents", "search.result.placeholder": "Type to start searching", "search.result.term.missing": "Missing", "select.version.title": "Select version"}}</script>
<script src="/mailcow-dockerized-docs/assets/javascripts/bundle.748e2769.min.js"></script>
<script src="/mailcow-dockerized-docs/assets/javascripts/bundle.c2e1ee47.min.js"></script>
<script src="/mailcow-dockerized-docs/assets/javascripts/client.js"></script>

Dateidiff unterdrĂĽckt, weil mindestens eine Zeile zu lang ist

29
assets/javascripts/bundle.c2e1ee47.min.js gevendort Normale Datei

Dateidiff unterdrĂĽckt, weil mindestens eine Zeile zu lang ist

1
assets/stylesheets/main.3de6f41f.min.css gevendort Normale Datei

Dateidiff unterdrĂĽckt, weil mindestens eine Zeile zu lang ist

Dateidiff unterdrĂĽckt, weil mindestens eine Zeile zu lang ist

Dateidiff unterdrĂĽckt, weil mindestens eine Zeile zu lang ist

Dateidiff unterdrĂĽckt, weil mindestens eine Zeile zu lang ist

Dateidiff unterdrĂĽckt, weil mindestens eine Zeile zu lang ist

Datei anzeigen

@ -1 +1 @@
{"version":3,"sources":["src/assets/stylesheets/palette/_accent.scss","../../../src/assets/stylesheets/palette.scss","src/assets/stylesheets/palette/_primary.scss","src/assets/stylesheets/utilities/_break.scss","src/assets/stylesheets/palette/_scheme.scss"],"names":[],"mappings":"AA8CE,2BACE,4BAAA,CACA,oDAAA,CAOE,yBAAA,CACA,8CCnDN,CDyCE,4BACE,4BAAA,CACA,mDAAA,CAOE,yBAAA,CACA,8CC5CN,CDkCE,8BACE,4BAAA,CACA,qDAAA,CAOE,yBAAA,CACA,8CCrCN,CD2BE,mCACE,4BAAA,CACA,qDAAA,CAOE,yBAAA,CACA,8CC9BN,CDoBE,8BACE,4BAAA,CACA,qDAAA,CAOE,yBAAA,CACA,8CCvBN,CDaE,4BACE,4BAAA,CACA,qDAAA,CAOE,yBAAA,CACA,8CChBN,CDME,kCACE,4BAAA,CACA,oDAAA,CAOE,yBAAA,CACA,8CCTN,CDDE,4BACE,4BAAA,CACA,oDAAA,CAOE,yBAAA,CACA,8CCFN,CDRE,4BACE,4BAAA,CACA,oDAAA,CAOE,yBAAA,CACA,8CCKN,CDfE,6BACE,4BAAA,CACA,mDAAA,CAOE,yBAAA,CACA,8CCYN,CDtBE,mCACE,4BAAA,CACA,oDAAA,CAOE,yBAAA,CACA,8CCmBN,CD7BE,4BACE,4BAAA,CACA,oDAAA,CAIE,oCAAA,CACA,2CC6BN,CDpCE,8BACE,4BAAA,CACA,oDAAA,CAIE,oCAAA,CACA,2CCoCN,CD3CE,6BACE,yBAAA,CACA,oDAAA,CAIE,oCAAA,CACA,2CC2CN,CDlDE,8BACE,4BAAA,CACA,oDAAA,CAIE,oCAAA,CACA,2CCkDN,CDzDE,mCACE,4BAAA,CACA,qDAAA,CAOE,yBAAA,CACA,8CCsDN,CC3DE,4BACE,6BAAA,CACA,oCAAA,CACA,mCAAA,CAOE,0BAAA,CACA,+CDwDN,CCnEE,6BACE,6BAAA,CACA,oCAAA,CACA,mCAAA,CAOE,0BAAA,CACA,+CDgEN,CC3EE,+BACE,6BAAA,CACA,oCAAA,CACA,mCAAA,CAOE,0BAAA,CACA,+CDwEN,CCnFE,oCACE,6BAAA,CACA,oCAAA,CACA,mCAAA,CAOE,0BAAA,CACA,+CDgFN,CC3FE,+BACE,6BAAA,CACA,oCAAA,CACA,mCAAA,CAOE,0BAAA,CACA,+CDwFN,CCnGE,6BACE,6BAAA,CACA,oCAAA,CACA,mCAAA,CAOE,0BAAA,CACA,+CDgGN,CC3GE,mCACE,6BAAA,CACA,oCAAA,CACA,mCAAA,CAOE,0BAAA,CACA,+CDwGN,CCnHE,6BACE,6BAAA,CACA,oCAAA,CACA,mCAAA,CAOE,0BAAA,CACA,+CDgHN,CC3HE,6BACE,6BAAA,CACA,oCAAA,CACA,mCAAA,CAOE,0BAAA,CACA,+CDwHN,CCnIE,8BACE,6BAAA,CACA,oCAAA,CACA,mCAAA,CAOE,0BAAA,CACA,+CDgIN,CC3IE,oCACE,6BAAA,CACA,oCAAA,CACA,mCAAA,CAOE,0BAAA,CACA,+CDwIN,CCnJE,6BACE,6BAAA,CACA,oCAAA,CACA,mCAAA,CAIE,qCAAA,CACA,4CDmJN,CC3JE,+BACE,6BAAA,CACA,oCAAA,CACA,mCAAA,CAIE,qCAAA,CACA,4CD2JN,CCnKE,8BACE,6BAAA,CACA,oCAAA,CACA,mCAAA,CAIE,qCAAA,CACA,4CDmKN,CC3KE,+BACE,6BAAA,CACA,oCAAA,CACA,mCAAA,CAIE,qCAAA,CACA,4CD2KN,CCnLE,oCACE,6BAAA,CACA,oCAAA,CACA,mCAAA,CAOE,0BAAA,CACA,+CDgLN,CC3LE,8BACE,6BAAA,CACA,oCAAA,CACA,mCAAA,CAOE,0BAAA,CACA,+CDwLN,CCnME,6BACE,6BAAA,CACA,oCAAA,CACA,mCAAA,CAOE,0BAAA,CACA,+CDgMN,CC3ME,kCACE,6BAAA,CACA,oCAAA,CACA,mCAAA,CAOE,0BAAA,CACA,+CDwMN,CC9LA,8BACE,0BAAA,CACA,+CAAA,CACA,2CAAA,CACA,qCAAA,CACA,4CAAA,CAGA,4BD+LF,CE9EI,mCD3GA,+CACE,gCD4LJ,CCzLI,qDACE,gCD2LN,CCtLE,iEACE,qBDwLJ,CACF,CEzFI,sCDxFA,uCACE,0CDoLJ,CACF,CC3KA,8BACE,0BAAA,CACA,4CAAA,CACA,gCAAA,CACA,0BAAA,CACA,+CAAA,CAGA,4BD4KF,CCzKE,yCACE,qBD2KJ,CEvFI,wCD7EA,8CACE,gCDuKJ,CACF,CE/GI,mCDjDA,+CACE,oCDmKJ,CChKI,qDACE,mCDkKN,CACF,CEpGI,wCDtDA,iFACE,qBD6JJ,CACF,CE5HI,sCD1BA,uCACE,qBDyJJ,CACF,CGvSA,cAGE,6BAKE,YAAA,CAGA,mDAAA,CACA,6DAAA,CACA,+DAAA,CACA,gEAAA,CACA,mDAAA,CACA,6DAAA,CACA,+DAAA,CACA,gEAAA,CAGA,gDAAA,CACA,gDAAA,CAGA,uCAAA,CACA,iCAAA,CACA,kCAAA,CACA,mCAAA,CACA,mCAAA,CACA,kCAAA,CACA,iCAAA,CACA,+CAAA,CACA,6DAAA,CACA,gEAAA,CACA,4DAAA,CACA,4DAAA,CACA,6DAAA,CAGA,6CAAA,CAGA,+CAAA,CAGA,2CAAA,CAGA,uDAAA,CACA,6DAAA,CACA,2DAAA,CAGA,yDAAA,CAGA,0DAAA,CAGA,qDAAA,CACA,wDHgRF,CG7QE,oHAIE,4BH4QJ,CGxQE,qDACE,YH0QJ,CGtQE,oDACE,eHwQJ,CGnQA,+FAGE,iCHsQF,CACF","file":"palette.css"}
{"version":3,"sources":["src/assets/stylesheets/palette/_accent.scss","../../../src/assets/stylesheets/palette.scss","src/assets/stylesheets/palette/_primary.scss","src/assets/stylesheets/utilities/_break.scss","src/assets/stylesheets/palette/_scheme.scss"],"names":[],"mappings":"AA8CE,2BACE,4BAAA,CACA,oDAAA,CAOE,yBAAA,CACA,8CCnDN,CDyCE,4BACE,4BAAA,CACA,mDAAA,CAOE,yBAAA,CACA,8CC5CN,CDkCE,8BACE,4BAAA,CACA,qDAAA,CAOE,yBAAA,CACA,8CCrCN,CD2BE,mCACE,4BAAA,CACA,qDAAA,CAOE,yBAAA,CACA,8CC9BN,CDoBE,8BACE,4BAAA,CACA,qDAAA,CAOE,yBAAA,CACA,8CCvBN,CDaE,4BACE,4BAAA,CACA,qDAAA,CAOE,yBAAA,CACA,8CChBN,CDME,kCACE,4BAAA,CACA,oDAAA,CAOE,yBAAA,CACA,8CCTN,CDDE,4BACE,4BAAA,CACA,oDAAA,CAOE,yBAAA,CACA,8CCFN,CDRE,4BACE,4BAAA,CACA,oDAAA,CAOE,yBAAA,CACA,8CCKN,CDfE,6BACE,4BAAA,CACA,mDAAA,CAOE,yBAAA,CACA,8CCYN,CDtBE,mCACE,4BAAA,CACA,oDAAA,CAOE,yBAAA,CACA,8CCmBN,CD7BE,4BACE,4BAAA,CACA,oDAAA,CAIE,oCAAA,CACA,2CC6BN,CDpCE,8BACE,4BAAA,CACA,oDAAA,CAIE,oCAAA,CACA,2CCoCN,CD3CE,6BACE,yBAAA,CACA,oDAAA,CAIE,oCAAA,CACA,2CC2CN,CDlDE,8BACE,4BAAA,CACA,oDAAA,CAIE,oCAAA,CACA,2CCkDN,CDzDE,mCACE,4BAAA,CACA,qDAAA,CAOE,yBAAA,CACA,8CCsDN,CC3DE,4BACE,6BAAA,CACA,oCAAA,CACA,mCAAA,CAOE,0BAAA,CACA,+CDwDN,CCnEE,6BACE,6BAAA,CACA,oCAAA,CACA,mCAAA,CAOE,0BAAA,CACA,+CDgEN,CC3EE,+BACE,6BAAA,CACA,oCAAA,CACA,mCAAA,CAOE,0BAAA,CACA,+CDwEN,CCnFE,oCACE,6BAAA,CACA,oCAAA,CACA,mCAAA,CAOE,0BAAA,CACA,+CDgFN,CC3FE,+BACE,6BAAA,CACA,oCAAA,CACA,mCAAA,CAOE,0BAAA,CACA,+CDwFN,CCnGE,6BACE,6BAAA,CACA,oCAAA,CACA,mCAAA,CAOE,0BAAA,CACA,+CDgGN,CC3GE,mCACE,6BAAA,CACA,oCAAA,CACA,mCAAA,CAOE,0BAAA,CACA,+CDwGN,CCnHE,6BACE,6BAAA,CACA,oCAAA,CACA,mCAAA,CAOE,0BAAA,CACA,+CDgHN,CC3HE,6BACE,6BAAA,CACA,oCAAA,CACA,mCAAA,CAOE,0BAAA,CACA,+CDwHN,CCnIE,8BACE,6BAAA,CACA,oCAAA,CACA,mCAAA,CAOE,0BAAA,CACA,+CDgIN,CC3IE,oCACE,6BAAA,CACA,oCAAA,CACA,mCAAA,CAOE,0BAAA,CACA,+CDwIN,CCnJE,6BACE,6BAAA,CACA,oCAAA,CACA,mCAAA,CAIE,qCAAA,CACA,4CDmJN,CC3JE,+BACE,6BAAA,CACA,oCAAA,CACA,mCAAA,CAIE,qCAAA,CACA,4CD2JN,CCnKE,8BACE,6BAAA,CACA,oCAAA,CACA,mCAAA,CAIE,qCAAA,CACA,4CDmKN,CC3KE,+BACE,6BAAA,CACA,oCAAA,CACA,mCAAA,CAIE,qCAAA,CACA,4CD2KN,CCnLE,oCACE,6BAAA,CACA,oCAAA,CACA,mCAAA,CAOE,0BAAA,CACA,+CDgLN,CC3LE,8BACE,6BAAA,CACA,oCAAA,CACA,mCAAA,CAOE,0BAAA,CACA,+CDwLN,CCnME,6BACE,6BAAA,CACA,oCAAA,CACA,mCAAA,CAOE,0BAAA,CACA,+CDgMN,CC3ME,kCACE,6BAAA,CACA,oCAAA,CACA,mCAAA,CAOE,0BAAA,CACA,+CDwMN,CC9LA,8BACE,0BAAA,CACA,+CAAA,CACA,2CAAA,CACA,qCAAA,CACA,4CAAA,CAGA,4BD+LF,CE9EI,mCD3GA,+CACE,gCD4LJ,CCzLI,qDACE,gCD2LN,CCtLE,iEACE,qBDwLJ,CACF,CEzFI,sCDxFA,uCACE,0CDoLJ,CACF,CC3KA,8BACE,0BAAA,CACA,4CAAA,CACA,gCAAA,CACA,0BAAA,CACA,+CAAA,CAGA,4BD4KF,CCzKE,yCACE,qBD2KJ,CEvFI,wCD7EA,8CACE,gCDuKJ,CACF,CE/GI,mCDjDA,+CACE,oCDmKJ,CChKI,qDACE,mCDkKN,CACF,CEpGI,wCDtDA,iFACE,qBD6JJ,CACF,CE5HI,sCD1BA,uCACE,qBDyJJ,CACF,CGvSA,cAGE,6BAKE,YAAA,CAGA,mDAAA,CACA,6DAAA,CACA,+DAAA,CACA,gEAAA,CACA,mDAAA,CACA,6DAAA,CACA,+DAAA,CACA,gEAAA,CAGA,gDAAA,CACA,gDAAA,CAGA,uCAAA,CACA,iCAAA,CACA,kCAAA,CACA,mCAAA,CACA,mCAAA,CACA,kCAAA,CACA,iCAAA,CACA,+CAAA,CACA,6DAAA,CACA,gEAAA,CACA,4DAAA,CACA,4DAAA,CACA,6DAAA,CAGA,6CAAA,CAGA,+CAAA,CAGA,2CAAA,CAGA,uDAAA,CACA,6DAAA,CACA,2DAAA,CAGA,yDAAA,CAGA,0DAAA,CAGA,qDAAA,CACA,wDHgRF,CG7QE,oHAIE,4BH4QJ,CGxQE,kHAEE,YH0QJ,CGtQE,gHAEE,eHwQJ,CGnQA,+FAGE,iCHsQF,CACF","file":"palette.css"}

Datei anzeigen

@ -11,7 +11,7 @@
<link rel="canonical" href="https://mailcow.github.io/mailcow-dockerized-docs/backup_restore/b_n_r-accidental_deletion/">
<link rel="icon" href="../../assets/images/favicon.png">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.11">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.14">
@ -19,10 +19,10 @@
<link rel="stylesheet" href="../../assets/stylesheets/main.8c5ef100.min.css">
<link rel="stylesheet" href="../../assets/stylesheets/main.3de6f41f.min.css">
<link rel="stylesheet" href="../../assets/stylesheets/palette.9647289d.min.css">
<link rel="stylesheet" href="../../assets/stylesheets/palette.cc9b2e1e.min.css">
@ -2456,9 +2456,8 @@
<p>To restore make sure you are actually restoring to the same mailcow it was deleted from or you use the same encryption keys in <code>crypt-vol-1</code>.</p>
<p><strong>Make sure the user you want to restore exists in your mailcow</strong>. Re-create them if they are missing.</p>
<p>Copy the folders from <code>/var/lib/docker/volumes/mailcowdockerized_vmail-vol-1/_data/_garbage/[timestamp]_[domain_sanitized][user_sanitized]</code> back to <code>/var/lib/docker/volumes/mailcowdockerized_vmail-vol-1/_data/[domain]/[user]</code> and resync the folder and recalc the quota:</p>
<div class="highlight"><pre><span></span><code>docker-compose exec dovecot-mailcow doveadm force-resync -u restoreme@example.net &#39;*&#39;
docker-compose exec dovecot-mailcow doveadm quota recalc -u restoreme@example.net
</code></pre></div>
<p><code>docker-compose exec dovecot-mailcow doveadm force-resync -u restoreme@example.net '*'
docker-compose exec dovecot-mailcow doveadm quota recalc -u restoreme@example.net</code></p>
<hr>
<div class="md-source-file">
@ -2578,7 +2577,7 @@ docker-compose exec dovecot-mailcow doveadm quota recalc -u restoreme@example.ne
<script id="__config" type="application/json">{"base": "../..", "features": ["navigation.top", "navigation.tracking"], "search": "../../assets/javascripts/workers/search.2a1c317c.min.js", "translations": {"clipboard.copied": "Copied to clipboard", "clipboard.copy": "Copy to clipboard", "search.config.lang": "en", "search.config.pipeline": "trimmer, stopWordFilter", "search.config.separator": "[\\s\\-]+", "search.placeholder": "Search", "search.result.more.one": "1 more on this page", "search.result.more.other": "# more on this page", "search.result.none": "No matching documents", "search.result.one": "1 matching document", "search.result.other": "# matching documents", "search.result.placeholder": "Type to start searching", "search.result.term.missing": "Missing", "select.version.title": "Select version"}}</script>
<script src="../../assets/javascripts/bundle.748e2769.min.js"></script>
<script src="../../assets/javascripts/bundle.c2e1ee47.min.js"></script>
<script src="../../assets/javascripts/client.js"></script>

Datei anzeigen

@ -11,7 +11,7 @@
<link rel="canonical" href="https://mailcow.github.io/mailcow-dockerized-docs/backup_restore/b_n_r-backup/">
<link rel="icon" href="../../assets/images/favicon.png">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.11">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.14">
@ -19,10 +19,10 @@
<link rel="stylesheet" href="../../assets/stylesheets/main.8c5ef100.min.css">
<link rel="stylesheet" href="../../assets/stylesheets/main.3de6f41f.min.css">
<link rel="stylesheet" href="../../assets/stylesheets/palette.9647289d.min.css">
<link rel="stylesheet" href="../../assets/stylesheets/palette.cc9b2e1e.min.css">
@ -961,6 +961,47 @@
</li>
</ul>
</nav>
</li>
<li class="md-nav__item">
<a href="#syntax" class="md-nav__link">
Syntax:
</a>
</li>
<li class="md-nav__item">
<a href="#helper-scriptsbackup_and_restoresh-backup-vmailcryptredisrspamdpostfixmysqlall-delete-days" class="md-nav__link">
./helper-scripts/backup_and_restore.sh backup (vmail|crypt|redis|rspamd|postfix|mysql|all|--delete-days)
</a>
</li>
<li class="md-nav__item">
<a href="#backup-all-delete-backups-older-than-3-days" class="md-nav__link">
Backup all, delete backups older than 3 days
</a>
</li>
<li class="md-nav__item">
<a href="#backup-vmail-crypt-and-mysql-data-delete-backups-older-than-30-days" class="md-nav__link">
Backup vmail, crypt and mysql data, delete backups older than 30 days
</a>
</li>
<li class="md-nav__item">
<a href="#backup-vmail" class="md-nav__link">
Backup vmail
</a>
<nav class="md-nav" aria-label="Backup vmail">
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="#cronjob" class="md-nav__link">
Cronjob
@ -971,6 +1012,34 @@
</ul>
</nav>
</li>
<li class="md-nav__item">
<a href="#binsh" class="md-nav__link">
!/bin/sh
</a>
</li>
<li class="md-nav__item">
<a href="#backup-mailcow-data" class="md-nav__link">
Backup mailcow data
</a>
</li>
<li class="md-nav__item">
<a href="#httpsmailcowgithubiomailcow-dockerized-docsbackup_restoreb_n_r-backup" class="md-nav__link">
https://mailcow.github.io/mailcow-dockerized-docs/backup_restore/b_n_r-backup/
</a>
</li>
<li class="md-nav__item">
<a href="#run-command" class="md-nav__link">
run command
</a>
</li>
<li class="md-nav__item">
@ -978,6 +1047,13 @@
Backup strategy with rsync and mailcow backup script
</a>
</li>
<li class="md-nav__item">
<a href="#if-you-want-to-use-the-acl-util-to-backup-permissions-of-someall-foldersfiles-getfacl-rn-path" class="md-nav__link">
If you want to, use the acl util to backup permissions of some/all folders/files: getfacl -Rn /path
</a>
</li>
</ul>
@ -2439,6 +2515,47 @@
</li>
</ul>
</nav>
</li>
<li class="md-nav__item">
<a href="#syntax" class="md-nav__link">
Syntax:
</a>
</li>
<li class="md-nav__item">
<a href="#helper-scriptsbackup_and_restoresh-backup-vmailcryptredisrspamdpostfixmysqlall-delete-days" class="md-nav__link">
./helper-scripts/backup_and_restore.sh backup (vmail|crypt|redis|rspamd|postfix|mysql|all|--delete-days)
</a>
</li>
<li class="md-nav__item">
<a href="#backup-all-delete-backups-older-than-3-days" class="md-nav__link">
Backup all, delete backups older than 3 days
</a>
</li>
<li class="md-nav__item">
<a href="#backup-vmail-crypt-and-mysql-data-delete-backups-older-than-30-days" class="md-nav__link">
Backup vmail, crypt and mysql data, delete backups older than 30 days
</a>
</li>
<li class="md-nav__item">
<a href="#backup-vmail" class="md-nav__link">
Backup vmail
</a>
<nav class="md-nav" aria-label="Backup vmail">
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="#cronjob" class="md-nav__link">
Cronjob
@ -2449,6 +2566,34 @@
</ul>
</nav>
</li>
<li class="md-nav__item">
<a href="#binsh" class="md-nav__link">
!/bin/sh
</a>
</li>
<li class="md-nav__item">
<a href="#backup-mailcow-data" class="md-nav__link">
Backup mailcow data
</a>
</li>
<li class="md-nav__item">
<a href="#httpsmailcowgithubiomailcow-dockerized-docsbackup_restoreb_n_r-backup" class="md-nav__link">
https://mailcow.github.io/mailcow-dockerized-docs/backup_restore/b_n_r-backup/
</a>
</li>
<li class="md-nav__item">
<a href="#run-command" class="md-nav__link">
run command
</a>
</li>
<li class="md-nav__item">
@ -2456,6 +2601,13 @@
Backup strategy with rsync and mailcow backup script
</a>
</li>
<li class="md-nav__item">
<a href="#if-you-want-to-use-the-acl-util-to-backup-permissions-of-someall-foldersfiles-getfacl-rn-path" class="md-nav__link">
If you want to, use the acl util to backup permissions of some/all folders/files: getfacl -Rn /path
</a>
</li>
</ul>
@ -2482,65 +2634,57 @@
<p>Please do not copy this script to another location.</p>
<p>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 <code>--delete-days n</code> to delete backups older than n days.</p>
<div class="highlight"><pre><span></span><code># Syntax:
# ./helper-scripts/backup_and_restore.sh backup (vmail|crypt|redis|rspamd|postfix|mysql|all|--delete-days)
# Backup all, delete backups older than 3 days
./helper-scripts/backup_and_restore.sh backup all --delete-days 3
# Backup vmail, crypt and mysql data, delete backups older than 30 days
./helper-scripts/backup_and_restore.sh backup vmail crypt mysql --delete-days 30
# Backup vmail
./helper-scripts/backup_and_restore.sh backup vmail
</code></pre></div>
<p>```</p>
<h1 id="syntax">Syntax:<a class="headerlink" href="#syntax" title="Permanent link">&para;</a></h1>
<h1 id="helper-scriptsbackup_and_restoresh-backup-vmailcryptredisrspamdpostfixmysqlall-delete-days">./helper-scripts/backup_and_restore.sh backup (vmail|crypt|redis|rspamd|postfix|mysql|all|--delete-days)<a class="headerlink" href="#helper-scriptsbackup_and_restoresh-backup-vmailcryptredisrspamdpostfixmysqlall-delete-days" title="Permanent link">&para;</a></h1>
<h1 id="backup-all-delete-backups-older-than-3-days">Backup all, delete backups older than 3 days<a class="headerlink" href="#backup-all-delete-backups-older-than-3-days" title="Permanent link">&para;</a></h1>
<p>./helper-scripts/backup_and_restore.sh backup all --delete-days 3</p>
<h1 id="backup-vmail-crypt-and-mysql-data-delete-backups-older-than-30-days">Backup vmail, crypt and mysql data, delete backups older than 30 days<a class="headerlink" href="#backup-vmail-crypt-and-mysql-data-delete-backups-older-than-30-days" title="Permanent link">&para;</a></h1>
<p>./helper-scripts/backup_and_restore.sh backup vmail crypt mysql --delete-days 30</p>
<h1 id="backup-vmail">Backup vmail<a class="headerlink" href="#backup-vmail" title="Permanent link">&para;</a></h1>
<p>./helper-scripts/backup_and_restore.sh backup vmail</p>
<p>```</p>
<p>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.</p>
<p>To run a backup unattended, define MAILCOW_BACKUP_LOCATION as environment variable before starting the script:</p>
<div class="highlight"><pre><span></span><code>MAILCOW_BACKUP_LOCATION=/opt/backup /opt/mailcow-dockerized/helper-scripts/backup_and_restore.sh backup all
</code></pre></div>
<p><code>MAILCOW_BACKUP_LOCATION=/opt/backup /opt/mailcow-dockerized/helper-scripts/backup_and_restore.sh backup all</code></p>
<h4 id="cronjob">Cronjob<a class="headerlink" href="#cronjob" title="Permanent link">&para;</a></h4>
<p>You can run the backup script regularly via cronjob. Make sure <code>BACKUP_LOCATION</code> exists:</p>
<div class="highlight"><pre><span></span><code>5 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
</code></pre></div>
<p><code>5 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</code></p>
<p>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).</p>
<p>This following script may be placed in <code>/etc/cron.daily/mailcow-backup</code> - do not forget to mark it as executable via <code>chmod +x</code>:</p>
<div class="highlight"><pre><span></span><code>#!/bin/sh
# Backup mailcow data
# https://mailcow.github.io/mailcow-dockerized-docs/backup_restore/b_n_r-backup/
set -e
OUT=&quot;$(mktemp)&quot;
export MAILCOW_BACKUP_LOCATION=&quot;/opt/backup&quot;
SCRIPT=&quot;/opt/mailcow-dockerized/helper-scripts/backup_and_restore.sh&quot;
PARAMETERS=&quot;backup all&quot;
OPTIONS=&quot;--delete-days 30&quot;
# run command
set +e
&quot;${SCRIPT}&quot; ${PARAMETERS} ${OPTIONS} 2&gt;&amp;1 &gt; &quot;$OUT&quot;
RESULT=$?
if [ $RESULT -ne 0 ]
<p>```</p>
<h1 id="binsh">!/bin/sh<a class="headerlink" href="#binsh" title="Permanent link">&para;</a></h1>
<h1 id="backup-mailcow-data">Backup mailcow data<a class="headerlink" href="#backup-mailcow-data" title="Permanent link">&para;</a></h1>
<h1 id="httpsmailcowgithubiomailcow-dockerized-docsbackup_restoreb_n_r-backup"><a href="https://mailcow.github.io/mailcow-dockerized-docs/backup_restore/b_n_r-backup/">https://mailcow.github.io/mailcow-dockerized-docs/backup_restore/b_n_r-backup/</a><a class="headerlink" href="#httpsmailcowgithubiomailcow-dockerized-docsbackup_restoreb_n_r-backup" title="Permanent link">&para;</a></h1>
<p>set -e</p>
<p>OUT="$(mktemp)"
export MAILCOW_BACKUP_LOCATION="/opt/backup"
SCRIPT="/opt/mailcow-dockerized/helper-scripts/backup_and_restore.sh"
PARAMETERS="backup all"
OPTIONS="--delete-days 30"</p>
<h1 id="run-command">run command<a class="headerlink" href="#run-command" title="Permanent link">&para;</a></h1>
<p>set +e
"${SCRIPT}" ${PARAMETERS} ${OPTIONS} 2&gt;&amp;1 &gt; "$OUT"
RESULT=$?</p>
<p>if [ $RESULT -ne 0 ]
then
echo &quot;${SCRIPT} ${PARAMETERS} ${OPTIONS} encounters an error:&quot;
echo &quot;RESULT=$RESULT&quot;
echo &quot;STDOUT / STDERR:&quot;
cat &quot;$OUT&quot;
echo "${SCRIPT} ${PARAMETERS} ${OPTIONS} encounters an error:"
echo "RESULT=$RESULT"
echo "STDOUT / STDERR:"
cat "$OUT"
fi
</code></pre></div>
```</p>
<h1 id="backup-strategy-with-rsync-and-mailcow-backup-script">Backup strategy with rsync and mailcow backup script<a class="headerlink" href="#backup-strategy-with-rsync-and-mailcow-backup-script" title="Permanent link">&para;</a></h1>
<p>Create the destination directory for mailcows helper script:
<div class="highlight"><pre><span></span><code>mkdir -p /external_share/backups/backup_script
</code></pre></div></p>
<code>mkdir -p /external_share/backups/backup_script</code></p>
<p>Create cronjobs:
<div class="highlight"><pre><span></span><code>25 1 * * * rsync -aH --delete /opt/mailcow-dockerized /external_share/backups/mailcow-dockerized
```
25 1 * * * rsync -aH --delete /opt/mailcow-dockerized /external_share/backups/mailcow-dockerized
40 2 * * * rsync -aH --delete /var/lib/docker/volumes /external_share/backups/var_lib_docker_volumes
5 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
# If you want to, use the acl util to backup permissions of some/all folders/files: getfacl -Rn /path
</code></pre></div></p>
5 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</p>
<h1 id="if-you-want-to-use-the-acl-util-to-backup-permissions-of-someall-foldersfiles-getfacl-rn-path">If you want to, use the acl util to backup permissions of some/all folders/files: getfacl -Rn /path<a class="headerlink" href="#if-you-want-to-use-the-acl-util-to-backup-permissions-of-someall-foldersfiles-getfacl-rn-path" title="Permanent link">&para;</a></h1>
<p>```</p>
<p>On the destination (in this case <code>/external_share/backups</code>) you may want to have snapshot capabilities (ZFS, Btrfs etc.). Snapshot daily and keep for n days for a consistent backup.
Do <strong>not</strong> rsync to a Samba share, you need to keep the correct permissions!</p>
<p>To restore you'd simply need to run rsync the other way round and restart Docker to re-read the volumes. Run <code>docker-compose pull</code> and <code>docker-compose up -d</code>.</p>
@ -2665,7 +2809,7 @@ In case of a corrupted database you'd need to use the helper script to restore t
<script id="__config" type="application/json">{"base": "../..", "features": ["navigation.top", "navigation.tracking"], "search": "../../assets/javascripts/workers/search.2a1c317c.min.js", "translations": {"clipboard.copied": "Copied to clipboard", "clipboard.copy": "Copy to clipboard", "search.config.lang": "en", "search.config.pipeline": "trimmer, stopWordFilter", "search.config.separator": "[\\s\\-]+", "search.placeholder": "Search", "search.result.more.one": "1 more on this page", "search.result.more.other": "# more on this page", "search.result.none": "No matching documents", "search.result.one": "1 matching document", "search.result.other": "# matching documents", "search.result.placeholder": "Type to start searching", "search.result.term.missing": "Missing", "select.version.title": "Select version"}}</script>
<script src="../../assets/javascripts/bundle.748e2769.min.js"></script>
<script src="../../assets/javascripts/bundle.c2e1ee47.min.js"></script>
<script src="../../assets/javascripts/client.js"></script>

Datei anzeigen

@ -11,7 +11,7 @@
<link rel="canonical" href="https://mailcow.github.io/mailcow-dockerized-docs/backup_restore/b_n_r-backup_restore-maildir/">
<link rel="icon" href="../../assets/images/favicon.png">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.11">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.14">
@ -19,10 +19,10 @@
<link rel="stylesheet" href="../../assets/stylesheets/main.8c5ef100.min.css">
<link rel="stylesheet" href="../../assets/stylesheets/main.3de6f41f.min.css">
<link rel="stylesheet" href="../../assets/stylesheets/palette.9647289d.min.css">
<link rel="stylesheet" href="../../assets/stylesheets/palette.cc9b2e1e.min.css">
@ -2440,15 +2440,13 @@
<h3 id="backup">Backup<a class="headerlink" href="#backup" title="Permanent link">&para;</a></h3>
<p>This line backups the vmail directory to a file backup_vmail.tar.gz in the mailcow root directory:
<div class="highlight"><pre><span></span><code>cd /path/to/mailcow-dockerized
docker run --rm -i -v $(docker inspect --format &#39;{{ range .Mounts }}{{ if eq .Destination &quot;/var/vmail&quot; }}{{ .Name }}{{ end }}{{ end }}&#39; $(docker-compose ps -q dovecot-mailcow)):/vmail -v ${PWD}:/backup debian:stretch-slim tar cvfz /backup/backup_vmail.tar.gz /vmail
</code></pre></div></p>
<code>cd /path/to/mailcow-dockerized
docker 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:stretch-slim tar cvfz /backup/backup_vmail.tar.gz /vmail</code></p>
<p>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 <code>backup_vmail.tar.gz</code> to any custom name, but leave the path as it is. Example: <code>[...] tar cvfz /backup/my_own_filename_.tar.gz</code></p>
<h3 id="restore">Restore<a class="headerlink" href="#restore" title="Permanent link">&para;</a></h3>
<div class="highlight"><pre><span></span><code>cd /path/to/mailcow-dockerized
docker run --rm -it -v $(docker inspect --format &#39;{{ range .Mounts }}{{ if eq .Destination &quot;/var/vmail&quot; }}{{ .Name }}{{ end }}{{ end }}&#39; $(docker-compose ps -q dovecot-mailcow)):/vmail -v ${PWD}:/backup debian:stretch-slim tar xvfz /backup/backup_vmail.tar.gz
</code></pre></div>
<p><code>cd /path/to/mailcow-dockerized
docker 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:stretch-slim tar xvfz /backup/backup_vmail.tar.gz</code></p>
<hr>
<div class="md-source-file">
@ -2568,7 +2566,7 @@ docker run --rm -it -v $(docker inspect --format &#39;{{ range .Mounts }}{{ if e
<script id="__config" type="application/json">{"base": "../..", "features": ["navigation.top", "navigation.tracking"], "search": "../../assets/javascripts/workers/search.2a1c317c.min.js", "translations": {"clipboard.copied": "Copied to clipboard", "clipboard.copy": "Copy to clipboard", "search.config.lang": "en", "search.config.pipeline": "trimmer, stopWordFilter", "search.config.separator": "[\\s\\-]+", "search.placeholder": "Search", "search.result.more.one": "1 more on this page", "search.result.more.other": "# more on this page", "search.result.none": "No matching documents", "search.result.one": "1 matching document", "search.result.other": "# matching documents", "search.result.placeholder": "Type to start searching", "search.result.term.missing": "Missing", "select.version.title": "Select version"}}</script>
<script src="../../assets/javascripts/bundle.748e2769.min.js"></script>
<script src="../../assets/javascripts/bundle.c2e1ee47.min.js"></script>
<script src="../../assets/javascripts/client.js"></script>

Datei anzeigen

@ -11,7 +11,7 @@
<link rel="canonical" href="https://mailcow.github.io/mailcow-dockerized-docs/backup_restore/b_n_r-backup_restore-mysql/">
<link rel="icon" href="../../assets/images/favicon.png">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.11">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.14">
@ -19,10 +19,10 @@
<link rel="stylesheet" href="../../assets/stylesheets/main.8c5ef100.min.css">
<link rel="stylesheet" href="../../assets/stylesheets/main.3de6f41f.min.css">
<link rel="stylesheet" href="../../assets/stylesheets/palette.9647289d.min.css">
<link rel="stylesheet" href="../../assets/stylesheets/palette.cc9b2e1e.min.css">
@ -2439,20 +2439,18 @@
<h1>MySQL (mysqldump)</h1>
<h2 id="backup">Backup<a class="headerlink" href="#backup" title="Permanent link">&para;</a></h2>
<div class="highlight"><pre><span></span><code>cd /path/to/mailcow-dockerized
<p><code>cd /path/to/mailcow-dockerized
source mailcow.conf
DATE=$(date +&quot;%Y%m%d_%H%M%S&quot;)
docker-compose exec -T mysql-mailcow mysqldump --default-character-set=utf8mb4 -u${DBUSER} -p${DBPASS} ${DBNAME} &gt; backup_${DBNAME}_${DATE}.sql
</code></pre></div>
DATE=$(date +"%Y%m%d_%H%M%S")
docker-compose exec -T mysql-mailcow mysqldump --default-character-set=utf8mb4 -u${DBUSER} -p${DBPASS} ${DBNAME} &gt; backup_${DBNAME}_${DATE}.sql</code></p>
<h2 id="restore">Restore<a class="headerlink" href="#restore" title="Permanent link">&para;</a></h2>
<div class="admonition warning">
<p class="admonition-title">Warning</p>
<p>You should redirect the SQL dump without <code>docker-compose</code> to prevent parsing errors.</p>
</div>
<div class="highlight"><pre><span></span><code>cd /path/to/mailcow-dockerized
<p><code>cd /path/to/mailcow-dockerized
source mailcow.conf
docker exec -i $(docker-compose ps -q mysql-mailcow) mysql -u${DBUSER} -p${DBPASS} ${DBNAME} &lt; backup_file.sql
</code></pre></div>
docker exec -i $(docker-compose ps -q mysql-mailcow) mysql -u${DBUSER} -p${DBPASS} ${DBNAME} &lt; backup_file.sql</code></p>
<hr>
<div class="md-source-file">
@ -2572,7 +2570,7 @@ docker exec -i $(docker-compose ps -q mysql-mailcow) mysql -u${DBUSER} -p${DBPAS
<script id="__config" type="application/json">{"base": "../..", "features": ["navigation.top", "navigation.tracking"], "search": "../../assets/javascripts/workers/search.2a1c317c.min.js", "translations": {"clipboard.copied": "Copied to clipboard", "clipboard.copy": "Copy to clipboard", "search.config.lang": "en", "search.config.pipeline": "trimmer, stopWordFilter", "search.config.separator": "[\\s\\-]+", "search.placeholder": "Search", "search.result.more.one": "1 more on this page", "search.result.more.other": "# more on this page", "search.result.none": "No matching documents", "search.result.one": "1 matching document", "search.result.other": "# matching documents", "search.result.placeholder": "Type to start searching", "search.result.term.missing": "Missing", "select.version.title": "Select version"}}</script>
<script src="../../assets/javascripts/bundle.748e2769.min.js"></script>
<script src="../../assets/javascripts/bundle.c2e1ee47.min.js"></script>
<script src="../../assets/javascripts/client.js"></script>

Datei anzeigen

@ -11,7 +11,7 @@
<link rel="canonical" href="https://mailcow.github.io/mailcow-dockerized-docs/backup_restore/b_n_r-coldstandby/">
<link rel="icon" href="../../assets/images/favicon.png">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.11">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.14">
@ -19,10 +19,10 @@
<link rel="stylesheet" href="../../assets/stylesheets/main.8c5ef100.min.css">
<link rel="stylesheet" href="../../assets/stylesheets/main.3de6f41f.min.css">
<link rel="stylesheet" href="../../assets/stylesheets/palette.9647289d.min.css">
<link rel="stylesheet" href="../../assets/stylesheets/palette.cc9b2e1e.min.css">
@ -2487,10 +2487,9 @@
<p>You will need a 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.</p>
<p>In your mailcow base directory, e.g. <code>/opt/mailcow-dockerized</code> you will find a file <code>create_cold_standby.sh</code>.</p>
<p>Edit this file and change the exported variables:</p>
<div class="highlight"><pre><span></span><code>export REMOTE_SSH_KEY=/path/to/keyfile
<p><code>export REMOTE_SSH_KEY=/path/to/keyfile
export REMOTE_SSH_PORT=22
export REMOTE_SSH_HOST=mailcow-backup.host.name
</code></pre></div>
export REMOTE_SSH_HOST=mailcow-backup.host.name</code></p>
<p>The key must be owned and readable by root only.</p>
<p>Both the source and destination require <code>rsync</code> &gt;= v3.1.0.
The destination must have Docker and docker-compose <strong>v1</strong> available.</p>
@ -2498,28 +2497,23 @@ The destination must have Docker and docker-compose <strong>v1</strong> availabl
<p>You may want to test the connection by running <code>ssh mailcow-backup.host.name -p22 -i /path/to/keyfile</code>.</p>
<h2 id="backup-and-refresh-the-cold-standby">Backup and refresh the cold-standby<a class="headerlink" href="#backup-and-refresh-the-cold-standby" title="Permanent link">&para;</a></h2>
<p>Run the first backup, this may take a while depending on the connection:</p>
<div class="highlight"><pre><span></span><code>bash /opt/mailcow-dockerized/create_cold_standby.sh
</code></pre></div>
<p><code>bash /opt/mailcow-dockerized/create_cold_standby.sh</code></p>
<p>That was easy, wasn't it?</p>
<p>Updating your cold-standby is just as easy:</p>
<div class="highlight"><pre><span></span><code>bash /opt/mailcow-dockerized/create_cold_standby.sh
</code></pre></div>
<p><code>bash /opt/mailcow-dockerized/create_cold_standby.sh</code></p>
<p>It's the same command.</p>
<h2 id="automated-backups-with-cron">Automated backups with cron<a class="headerlink" href="#automated-backups-with-cron" title="Permanent link">&para;</a></h2>
<p>First make sure that the <code>cron</code> service is enabled and running:</p>
<div class="highlight"><pre><span></span><code>systemctl enable cron.service &amp;&amp; systemctl start cron.service
</code></pre></div>
<p><code>systemctl enable cron.service &amp;&amp; systemctl start cron.service</code></p>
<p>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:</p>
<div class="highlight"><pre><span></span><code>crontab -e
</code></pre></div>
<p><code>crontab -e</code></p>
<p>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.</p>
<div class="highlight"><pre><span></span><code>PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
0 3 * * * bash /opt/mailcow-dockerized/create_cold_standby.sh 2&gt; /var/log/mailcow-coldstandby-sync.log
</code></pre></div>
<p>```
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin</p>
<p>0 3 * * * bash /opt/mailcow-dockerized/create_cold_standby.sh 2&gt; /var/log/mailcow-coldstandby-sync.log
```</p>
<p>If saved correctly, the cron job should be shown by typing:</p>
<div class="highlight"><pre><span></span><code>crontab -l
</code></pre></div>
<p><code>crontab -l</code></p>
<hr>
<div class="md-source-file">
@ -2639,7 +2633,7 @@ The destination must have Docker and docker-compose <strong>v1</strong> availabl
<script id="__config" type="application/json">{"base": "../..", "features": ["navigation.top", "navigation.tracking"], "search": "../../assets/javascripts/workers/search.2a1c317c.min.js", "translations": {"clipboard.copied": "Copied to clipboard", "clipboard.copy": "Copy to clipboard", "search.config.lang": "en", "search.config.pipeline": "trimmer, stopWordFilter", "search.config.separator": "[\\s\\-]+", "search.placeholder": "Search", "search.result.more.one": "1 more on this page", "search.result.more.other": "# more on this page", "search.result.none": "No matching documents", "search.result.one": "1 matching document", "search.result.other": "# matching documents", "search.result.placeholder": "Type to start searching", "search.result.term.missing": "Missing", "select.version.title": "Select version"}}</script>
<script src="../../assets/javascripts/bundle.748e2769.min.js"></script>
<script src="../../assets/javascripts/bundle.c2e1ee47.min.js"></script>
<script src="../../assets/javascripts/client.js"></script>

Datei anzeigen

@ -11,7 +11,7 @@
<link rel="canonical" href="https://mailcow.github.io/mailcow-dockerized-docs/backup_restore/b_n_r-restore/">
<link rel="icon" href="../../assets/images/favicon.png">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.11">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.14">
@ -19,10 +19,10 @@
<link rel="stylesheet" href="../../assets/stylesheets/main.8c5ef100.min.css">
<link rel="stylesheet" href="../../assets/stylesheets/main.3de6f41f.min.css">
<link rel="stylesheet" href="../../assets/stylesheets/palette.9647289d.min.css">
<link rel="stylesheet" href="../../assets/stylesheets/palette.cc9b2e1e.min.css">
@ -965,6 +965,20 @@
Restore
</a>
</li>
<li class="md-nav__item">
<a href="#syntax" class="md-nav__link">
Syntax:
</a>
</li>
<li class="md-nav__item">
<a href="#helper-scriptsbackup_and_restoresh-restore" class="md-nav__link">
./helper-scripts/backup_and_restore.sh restore
</a>
</li>
</ul>
@ -2402,6 +2416,20 @@
Restore
</a>
</li>
<li class="md-nav__item">
<a href="#syntax" class="md-nav__link">
Syntax:
</a>
</li>
<li class="md-nav__item">
<a href="#helper-scriptsbackup_and_restoresh-restore" class="md-nav__link">
./helper-scripts/backup_and_restore.sh restore
</a>
</li>
</ul>
@ -2422,14 +2450,13 @@
<h1>Restore</h1>
<h3 id="restore">Restore<a class="headerlink" href="#restore" title="Permanent link">&para;</a></h3>
<p>Please do not copy this script to another location.</p>
<p>To run a restore, <strong>start mailcow</strong>, use the script with "restore" as first parameter.</p>
<div class="highlight"><pre><span></span><code># Syntax:
# ./helper-scripts/backup_and_restore.sh restore
</code></pre></div>
<p>```</p>
<h1 id="syntax">Syntax:<a class="headerlink" href="#syntax" title="Permanent link">&para;</a></h1>
<h1 id="helper-scriptsbackup_and_restoresh-restore">./helper-scripts/backup_and_restore.sh restore<a class="headerlink" href="#helper-scriptsbackup_and_restoresh-restore" title="Permanent link">&para;</a></h1>
<p>```</p>
<p>The script will ask you for a backup location containing the mailcow_DATE folders.</p>
<hr>
@ -2550,7 +2577,7 @@
<script id="__config" type="application/json">{"base": "../..", "features": ["navigation.top", "navigation.tracking"], "search": "../../assets/javascripts/workers/search.2a1c317c.min.js", "translations": {"clipboard.copied": "Copied to clipboard", "clipboard.copy": "Copy to clipboard", "search.config.lang": "en", "search.config.pipeline": "trimmer, stopWordFilter", "search.config.separator": "[\\s\\-]+", "search.placeholder": "Search", "search.result.more.one": "1 more on this page", "search.result.more.other": "# more on this page", "search.result.none": "No matching documents", "search.result.one": "1 matching document", "search.result.other": "# matching documents", "search.result.placeholder": "Type to start searching", "search.result.term.missing": "Missing", "select.version.title": "Select version"}}</script>
<script src="../../assets/javascripts/bundle.748e2769.min.js"></script>
<script src="../../assets/javascripts/bundle.c2e1ee47.min.js"></script>
<script src="../../assets/javascripts/client.js"></script>

Datei anzeigen

@ -11,7 +11,7 @@
<link rel="canonical" href="https://mailcow.github.io/mailcow-dockerized-docs/client/client-android/">
<link rel="icon" href="../../assets/images/favicon.png">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.11">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.14">
@ -19,10 +19,10 @@
<link rel="stylesheet" href="../../assets/stylesheets/main.8c5ef100.min.css">
<link rel="stylesheet" href="../../assets/stylesheets/main.3de6f41f.min.css">
<link rel="stylesheet" href="../../assets/stylesheets/palette.9647289d.min.css">
<link rel="stylesheet" href="../../assets/stylesheets/palette.cc9b2e1e.min.css">
@ -2499,7 +2499,7 @@
<script id="__config" type="application/json">{"base": "../..", "features": ["navigation.top", "navigation.tracking"], "search": "../../assets/javascripts/workers/search.2a1c317c.min.js", "translations": {"clipboard.copied": "Copied to clipboard", "clipboard.copy": "Copy to clipboard", "search.config.lang": "en", "search.config.pipeline": "trimmer, stopWordFilter", "search.config.separator": "[\\s\\-]+", "search.placeholder": "Search", "search.result.more.one": "1 more on this page", "search.result.more.other": "# more on this page", "search.result.none": "No matching documents", "search.result.one": "1 matching document", "search.result.other": "# matching documents", "search.result.placeholder": "Type to start searching", "search.result.term.missing": "Missing", "select.version.title": "Select version"}}</script>
<script src="../../assets/javascripts/bundle.748e2769.min.js"></script>
<script src="../../assets/javascripts/bundle.c2e1ee47.min.js"></script>
<script src="../../assets/javascripts/client.js"></script>

Datei anzeigen

@ -11,7 +11,7 @@
<link rel="canonical" href="https://mailcow.github.io/mailcow-dockerized-docs/client/client-apple/">
<link rel="icon" href="../../assets/images/favicon.png">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.11">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.14">
@ -19,10 +19,10 @@
<link rel="stylesheet" href="../../assets/stylesheets/main.8c5ef100.min.css">
<link rel="stylesheet" href="../../assets/stylesheets/main.3de6f41f.min.css">
<link rel="stylesheet" href="../../assets/stylesheets/palette.9647289d.min.css">
<link rel="stylesheet" href="../../assets/stylesheets/palette.cc9b2e1e.min.css">
@ -2607,7 +2607,7 @@
<script id="__config" type="application/json">{"base": "../..", "features": ["navigation.top", "navigation.tracking"], "search": "../../assets/javascripts/workers/search.2a1c317c.min.js", "translations": {"clipboard.copied": "Copied to clipboard", "clipboard.copy": "Copy to clipboard", "search.config.lang": "en", "search.config.pipeline": "trimmer, stopWordFilter", "search.config.separator": "[\\s\\-]+", "search.placeholder": "Search", "search.result.more.one": "1 more on this page", "search.result.more.other": "# more on this page", "search.result.none": "No matching documents", "search.result.one": "1 matching document", "search.result.other": "# matching documents", "search.result.placeholder": "Type to start searching", "search.result.term.missing": "Missing", "select.version.title": "Select version"}}</script>
<script src="../../assets/javascripts/bundle.748e2769.min.js"></script>
<script src="../../assets/javascripts/bundle.c2e1ee47.min.js"></script>
<script src="../../assets/javascripts/client.js"></script>

Datei anzeigen

@ -11,7 +11,7 @@
<link rel="canonical" href="https://mailcow.github.io/mailcow-dockerized-docs/client/client-emclient/">
<link rel="icon" href="../../assets/images/favicon.png">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.11">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.14">
@ -19,10 +19,10 @@
<link rel="stylesheet" href="../../assets/stylesheets/main.8c5ef100.min.css">
<link rel="stylesheet" href="../../assets/stylesheets/main.3de6f41f.min.css">
<link rel="stylesheet" href="../../assets/stylesheets/palette.9647289d.min.css">
<link rel="stylesheet" href="../../assets/stylesheets/palette.cc9b2e1e.min.css">
@ -2501,7 +2501,7 @@
<script id="__config" type="application/json">{"base": "../..", "features": ["navigation.top", "navigation.tracking"], "search": "../../assets/javascripts/workers/search.2a1c317c.min.js", "translations": {"clipboard.copied": "Copied to clipboard", "clipboard.copy": "Copy to clipboard", "search.config.lang": "en", "search.config.pipeline": "trimmer, stopWordFilter", "search.config.separator": "[\\s\\-]+", "search.placeholder": "Search", "search.result.more.one": "1 more on this page", "search.result.more.other": "# more on this page", "search.result.none": "No matching documents", "search.result.one": "1 matching document", "search.result.other": "# matching documents", "search.result.placeholder": "Type to start searching", "search.result.term.missing": "Missing", "select.version.title": "Select version"}}</script>
<script src="../../assets/javascripts/bundle.748e2769.min.js"></script>
<script src="../../assets/javascripts/bundle.c2e1ee47.min.js"></script>
<script src="../../assets/javascripts/client.js"></script>

Datei anzeigen

@ -11,7 +11,7 @@
<link rel="canonical" href="https://mailcow.github.io/mailcow-dockerized-docs/client/client-kontact/">
<link rel="icon" href="../../assets/images/favicon.png">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.11">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.14">
@ -19,10 +19,10 @@
<link rel="stylesheet" href="../../assets/stylesheets/main.8c5ef100.min.css">
<link rel="stylesheet" href="../../assets/stylesheets/main.3de6f41f.min.css">
<link rel="stylesheet" href="../../assets/stylesheets/palette.9647289d.min.css">
<link rel="stylesheet" href="../../assets/stylesheets/palette.cc9b2e1e.min.css">
@ -2509,7 +2509,7 @@
<script id="__config" type="application/json">{"base": "../..", "features": ["navigation.top", "navigation.tracking"], "search": "../../assets/javascripts/workers/search.2a1c317c.min.js", "translations": {"clipboard.copied": "Copied to clipboard", "clipboard.copy": "Copy to clipboard", "search.config.lang": "en", "search.config.pipeline": "trimmer, stopWordFilter", "search.config.separator": "[\\s\\-]+", "search.placeholder": "Search", "search.result.more.one": "1 more on this page", "search.result.more.other": "# more on this page", "search.result.none": "No matching documents", "search.result.one": "1 matching document", "search.result.other": "# matching documents", "search.result.placeholder": "Type to start searching", "search.result.term.missing": "Missing", "select.version.title": "Select version"}}</script>
<script src="../../assets/javascripts/bundle.748e2769.min.js"></script>
<script src="../../assets/javascripts/bundle.c2e1ee47.min.js"></script>
<script src="../../assets/javascripts/client.js"></script>

Datei anzeigen

@ -11,7 +11,7 @@
<link rel="canonical" href="https://mailcow.github.io/mailcow-dockerized-docs/client/client-manual/">
<link rel="icon" href="../../assets/images/favicon.png">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.11">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.14">
@ -19,10 +19,10 @@
<link rel="stylesheet" href="../../assets/stylesheets/main.8c5ef100.min.css">
<link rel="stylesheet" href="../../assets/stylesheets/main.3de6f41f.min.css">
<link rel="stylesheet" href="../../assets/stylesheets/palette.9647289d.min.css">
<link rel="stylesheet" href="../../assets/stylesheets/palette.cc9b2e1e.min.css">
@ -2613,7 +2613,7 @@
<script id="__config" type="application/json">{"base": "../..", "features": ["navigation.top", "navigation.tracking"], "search": "../../assets/javascripts/workers/search.2a1c317c.min.js", "translations": {"clipboard.copied": "Copied to clipboard", "clipboard.copy": "Copy to clipboard", "search.config.lang": "en", "search.config.pipeline": "trimmer, stopWordFilter", "search.config.separator": "[\\s\\-]+", "search.placeholder": "Search", "search.result.more.one": "1 more on this page", "search.result.more.other": "# more on this page", "search.result.none": "No matching documents", "search.result.one": "1 matching document", "search.result.other": "# matching documents", "search.result.placeholder": "Type to start searching", "search.result.term.missing": "Missing", "select.version.title": "Select version"}}</script>
<script src="../../assets/javascripts/bundle.748e2769.min.js"></script>
<script src="../../assets/javascripts/bundle.c2e1ee47.min.js"></script>
<script src="../../assets/javascripts/client.js"></script>

Datei anzeigen

@ -11,7 +11,7 @@
<link rel="canonical" href="https://mailcow.github.io/mailcow-dockerized-docs/client/client-outlook/">
<link rel="icon" href="../../assets/images/favicon.png">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.11">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.14">
@ -19,10 +19,10 @@
<link rel="stylesheet" href="../../assets/stylesheets/main.8c5ef100.min.css">
<link rel="stylesheet" href="../../assets/stylesheets/main.3de6f41f.min.css">
<link rel="stylesheet" href="../../assets/stylesheets/palette.9647289d.min.css">
<link rel="stylesheet" href="../../assets/stylesheets/palette.cc9b2e1e.min.css">
@ -2639,7 +2639,7 @@
<script id="__config" type="application/json">{"base": "../..", "features": ["navigation.top", "navigation.tracking"], "search": "../../assets/javascripts/workers/search.2a1c317c.min.js", "translations": {"clipboard.copied": "Copied to clipboard", "clipboard.copy": "Copy to clipboard", "search.config.lang": "en", "search.config.pipeline": "trimmer, stopWordFilter", "search.config.separator": "[\\s\\-]+", "search.placeholder": "Search", "search.result.more.one": "1 more on this page", "search.result.more.other": "# more on this page", "search.result.none": "No matching documents", "search.result.one": "1 matching document", "search.result.other": "# matching documents", "search.result.placeholder": "Type to start searching", "search.result.term.missing": "Missing", "select.version.title": "Select version"}}</script>
<script src="../../assets/javascripts/bundle.748e2769.min.js"></script>
<script src="../../assets/javascripts/bundle.c2e1ee47.min.js"></script>
<script src="../../assets/javascripts/client.js"></script>

Datei anzeigen

@ -11,7 +11,7 @@
<link rel="canonical" href="https://mailcow.github.io/mailcow-dockerized-docs/client/client-thunderbird/">
<link rel="icon" href="../../assets/images/favicon.png">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.11">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.14">
@ -19,10 +19,10 @@
<link rel="stylesheet" href="../../assets/stylesheets/main.8c5ef100.min.css">
<link rel="stylesheet" href="../../assets/stylesheets/main.3de6f41f.min.css">
<link rel="stylesheet" href="../../assets/stylesheets/palette.9647289d.min.css">
<link rel="stylesheet" href="../../assets/stylesheets/palette.cc9b2e1e.min.css">
@ -2518,7 +2518,7 @@
<script id="__config" type="application/json">{"base": "../..", "features": ["navigation.top", "navigation.tracking"], "search": "../../assets/javascripts/workers/search.2a1c317c.min.js", "translations": {"clipboard.copied": "Copied to clipboard", "clipboard.copy": "Copy to clipboard", "search.config.lang": "en", "search.config.pipeline": "trimmer, stopWordFilter", "search.config.separator": "[\\s\\-]+", "search.placeholder": "Search", "search.result.more.one": "1 more on this page", "search.result.more.other": "# more on this page", "search.result.none": "No matching documents", "search.result.one": "1 matching document", "search.result.other": "# matching documents", "search.result.placeholder": "Type to start searching", "search.result.term.missing": "Missing", "select.version.title": "Select version"}}</script>
<script src="../../assets/javascripts/bundle.748e2769.min.js"></script>
<script src="../../assets/javascripts/bundle.c2e1ee47.min.js"></script>
<script src="../../assets/javascripts/client.js"></script>

Datei anzeigen

@ -11,7 +11,7 @@
<link rel="canonical" href="https://mailcow.github.io/mailcow-dockerized-docs/client/client-windows/">
<link rel="icon" href="../../assets/images/favicon.png">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.11">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.14">
@ -19,10 +19,10 @@
<link rel="stylesheet" href="../../assets/stylesheets/main.8c5ef100.min.css">
<link rel="stylesheet" href="../../assets/stylesheets/main.3de6f41f.min.css">
<link rel="stylesheet" href="../../assets/stylesheets/palette.9647289d.min.css">
<link rel="stylesheet" href="../../assets/stylesheets/palette.cc9b2e1e.min.css">
@ -2502,7 +2502,7 @@
<script id="__config" type="application/json">{"base": "../..", "features": ["navigation.top", "navigation.tracking"], "search": "../../assets/javascripts/workers/search.2a1c317c.min.js", "translations": {"clipboard.copied": "Copied to clipboard", "clipboard.copy": "Copy to clipboard", "search.config.lang": "en", "search.config.pipeline": "trimmer, stopWordFilter", "search.config.separator": "[\\s\\-]+", "search.placeholder": "Search", "search.result.more.one": "1 more on this page", "search.result.more.other": "# more on this page", "search.result.none": "No matching documents", "search.result.one": "1 matching document", "search.result.other": "# matching documents", "search.result.placeholder": "Type to start searching", "search.result.term.missing": "Missing", "select.version.title": "Select version"}}</script>
<script src="../../assets/javascripts/bundle.748e2769.min.js"></script>
<script src="../../assets/javascripts/bundle.c2e1ee47.min.js"></script>
<script src="../../assets/javascripts/client.js"></script>

Datei anzeigen

@ -11,7 +11,7 @@
<link rel="canonical" href="https://mailcow.github.io/mailcow-dockerized-docs/client/client/">
<link rel="icon" href="../../assets/images/favicon.png">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.11">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.14">
@ -19,10 +19,10 @@
<link rel="stylesheet" href="../../assets/stylesheets/main.8c5ef100.min.css">
<link rel="stylesheet" href="../../assets/stylesheets/main.3de6f41f.min.css">
<link rel="stylesheet" href="../../assets/stylesheets/palette.9647289d.min.css">
<link rel="stylesheet" href="../../assets/stylesheets/palette.cc9b2e1e.min.css">
@ -2516,7 +2516,7 @@ Since you accessed this page after logging into your mailcow server, all of the
<script id="__config" type="application/json">{"base": "../..", "features": ["navigation.top", "navigation.tracking"], "search": "../../assets/javascripts/workers/search.2a1c317c.min.js", "translations": {"clipboard.copied": "Copied to clipboard", "clipboard.copy": "Copy to clipboard", "search.config.lang": "en", "search.config.pipeline": "trimmer, stopWordFilter", "search.config.separator": "[\\s\\-]+", "search.placeholder": "Search", "search.result.more.one": "1 more on this page", "search.result.more.other": "# more on this page", "search.result.none": "No matching documents", "search.result.one": "1 matching document", "search.result.other": "# matching documents", "search.result.placeholder": "Type to start searching", "search.result.term.missing": "Missing", "select.version.title": "Select version"}}</script>
<script src="../../assets/javascripts/bundle.748e2769.min.js"></script>
<script src="../../assets/javascripts/bundle.c2e1ee47.min.js"></script>
<script src="../../assets/javascripts/client.js"></script>

Datei anzeigen

@ -11,7 +11,7 @@
<link rel="canonical" href="https://mailcow.github.io/mailcow-dockerized-docs/de/backup_restore/b_n_r-accidental_deletion/">
<link rel="icon" href="../../../assets/images/favicon.png">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.11">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.14">
@ -19,10 +19,10 @@
<link rel="stylesheet" href="../../../assets/stylesheets/main.8c5ef100.min.css">
<link rel="stylesheet" href="../../../assets/stylesheets/main.3de6f41f.min.css">
<link rel="stylesheet" href="../../../assets/stylesheets/palette.9647289d.min.css">
<link rel="stylesheet" href="../../../assets/stylesheets/palette.cc9b2e1e.min.css">
@ -2456,9 +2456,8 @@
<p>Um die Mailbox wiederherzustellen, stellen Sie sicher, dass Sie tatsächlich auf die gleiche Mailcow wiederherstellen, von der sie gelöscht wurde, oder Sie verwenden die gleichen Verschlüsselungsschlüssel in <code>crypt-vol-1</code>.</p>
<p><strong>Stellen Sie sicher, dass der Benutzer, den Sie wiederherstellen wollen, in Ihrer Mailcow existiert</strong>. Legen Sie diesen neu an, wenn der Benutzer fehlt.</p>
<p>Kopieren Sie die Ordner von <code>/var/lib/docker/volumes/mailcowdockerized_vmail-vol-1/_data/_garbage/[timestamp]_[domain_sanitized][user_sanitized]</code> zurĂĽck nach <code>/var/lib/docker/volumes/mailcowdockerized_vmail-vol-1/_data/[domain]/[user]</code> und synchronisieren Sie die Ordner neu und berechnen Sie die Quota (Speicherplatz) neu:</p>
<div class="highlight"><pre><span></span><code>docker-compose exec dovecot-mailcow doveadm force-resync -u restoreme@example.net &#39;*&#39;
docker-compose exec dovecot-mailcow doveadm quota recalc -u restoreme@example.net
</code></pre></div>
<p><code>docker-compose exec dovecot-mailcow doveadm force-resync -u restoreme@example.net '*'
docker-compose exec dovecot-mailcow doveadm quota recalc -u restoreme@example.net</code></p>
<hr>
<div class="md-source-file">
@ -2578,7 +2577,7 @@ docker-compose exec dovecot-mailcow doveadm quota recalc -u restoreme@example.ne
<script id="__config" type="application/json">{"base": "../../..", "features": ["navigation.top", "navigation.tracking"], "search": "../../../assets/javascripts/workers/search.2a1c317c.min.js", "translations": {"clipboard.copied": "In Zwischenablage kopiert", "clipboard.copy": "In Zwischenablage kopieren", "search.config.lang": "de", "search.config.pipeline": "trimmer, stopWordFilter", "search.config.separator": "[\\s\\-]+", "search.placeholder": "Suche", "search.result.more.one": "1 weiteres Suchergebnis auf dieser Seite", "search.result.more.other": "# weitere Suchergebnisse auf dieser Seite", "search.result.none": "Keine Suchergebnisse", "search.result.one": "1 Suchergebnis", "search.result.other": "# Suchergebnisse", "search.result.placeholder": "Suchbegriff eingeben", "search.result.term.missing": "Es fehlt", "select.version.title": "Version ausw\u00e4hlen"}}</script>
<script src="../../../assets/javascripts/bundle.748e2769.min.js"></script>
<script src="../../../assets/javascripts/bundle.c2e1ee47.min.js"></script>
<script src="../../../assets/javascripts/client.js"></script>

Datei anzeigen

@ -11,7 +11,7 @@
<link rel="canonical" href="https://mailcow.github.io/mailcow-dockerized-docs/de/backup_restore/b_n_r-backup/">
<link rel="icon" href="../../../assets/images/favicon.png">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.11">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.14">
@ -19,10 +19,10 @@
<link rel="stylesheet" href="../../../assets/stylesheets/main.8c5ef100.min.css">
<link rel="stylesheet" href="../../../assets/stylesheets/main.3de6f41f.min.css">
<link rel="stylesheet" href="../../../assets/stylesheets/palette.9647289d.min.css">
<link rel="stylesheet" href="../../../assets/stylesheets/palette.cc9b2e1e.min.css">
@ -961,6 +961,47 @@
</li>
</ul>
</nav>
</li>
<li class="md-nav__item">
<a href="#syntax" class="md-nav__link">
Syntax:
</a>
</li>
<li class="md-nav__item">
<a href="#helper-scriptsbackup_and_restoresh-backup-vmailcryptredisrspamdpostfixmysqlall-delete-days" class="md-nav__link">
./helper-scripts/backup_and_restore.sh backup (vmail|crypt|redis|rspamd|postfix|mysql|all|--delete-days)
</a>
</li>
<li class="md-nav__item">
<a href="#alles-sichern-sicherungen-alter-als-3-tage-loschen" class="md-nav__link">
Alles sichern, Sicherungen älter als 3 Tage löschen
</a>
</li>
<li class="md-nav__item">
<a href="#vmail-crypt-und-mysql-daten-sichern-sicherungen-loschen-die-alter-als-30-tage-sind" class="md-nav__link">
vmail-, crypt- und mysql-Daten sichern, Sicherungen löschen, die älter als 30 Tage sind
</a>
</li>
<li class="md-nav__item">
<a href="#vmail-sichern" class="md-nav__link">
vmail sichern
</a>
<nav class="md-nav" aria-label="vmail sichern">
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="#cronjob" class="md-nav__link">
Cronjob
@ -971,6 +1012,48 @@
</ul>
</nav>
</li>
<li class="md-nav__item">
<a href="#binsh" class="md-nav__link">
!/bin/sh
</a>
</li>
<li class="md-nav__item">
<a href="#backup-mailcow-data" class="md-nav__link">
Backup mailcow data
</a>
</li>
<li class="md-nav__item">
<a href="#httpsmailcowgithubiomailcow-dockerized-docsb_n_r_backup" class="md-nav__link">
https://mailcow.github.io/mailcow-dockerized-docs/b_n_r_backup/
</a>
</li>
<li class="md-nav__item">
<a href="#run-command" class="md-nav__link">
run command
</a>
</li>
<li class="md-nav__item">
<a href="#httpsmailcowgithubiomailcow-dockerized-docsb_n_r_backup_1" class="md-nav__link">
https://mailcow.github.io/mailcow-dockerized-docs/b_n_r_backup/
</a>
</li>
<li class="md-nav__item">
<a href="#befehl-ausfuhren" class="md-nav__link">
Befehl ausfĂĽhren
</a>
</li>
<li class="md-nav__item">
@ -978,6 +1061,13 @@
Backup-Strategie mit rsync und mailcow Backup-Skript
</a>
</li>
<li class="md-nav__item">
<a href="#wenn-sie-wollen-benutzen-sie-acl-util-um-die-berechtigungen-einigeraller-ordnerdateien-zu-sichern-getfacl-rn-path" class="md-nav__link">
Wenn Sie wollen, benutzen Sie acl util, um die Berechtigungen einiger/aller Ordner/Dateien zu sichern: getfacl -Rn /path
</a>
</li>
</ul>
@ -2439,6 +2529,47 @@
</li>
</ul>
</nav>
</li>
<li class="md-nav__item">
<a href="#syntax" class="md-nav__link">
Syntax:
</a>
</li>
<li class="md-nav__item">
<a href="#helper-scriptsbackup_and_restoresh-backup-vmailcryptredisrspamdpostfixmysqlall-delete-days" class="md-nav__link">
./helper-scripts/backup_and_restore.sh backup (vmail|crypt|redis|rspamd|postfix|mysql|all|--delete-days)
</a>
</li>
<li class="md-nav__item">
<a href="#alles-sichern-sicherungen-alter-als-3-tage-loschen" class="md-nav__link">
Alles sichern, Sicherungen älter als 3 Tage löschen
</a>
</li>
<li class="md-nav__item">
<a href="#vmail-crypt-und-mysql-daten-sichern-sicherungen-loschen-die-alter-als-30-tage-sind" class="md-nav__link">
vmail-, crypt- und mysql-Daten sichern, Sicherungen löschen, die älter als 30 Tage sind
</a>
</li>
<li class="md-nav__item">
<a href="#vmail-sichern" class="md-nav__link">
vmail sichern
</a>
<nav class="md-nav" aria-label="vmail sichern">
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="#cronjob" class="md-nav__link">
Cronjob
@ -2449,6 +2580,48 @@
</ul>
</nav>
</li>
<li class="md-nav__item">
<a href="#binsh" class="md-nav__link">
!/bin/sh
</a>
</li>
<li class="md-nav__item">
<a href="#backup-mailcow-data" class="md-nav__link">
Backup mailcow data
</a>
</li>
<li class="md-nav__item">
<a href="#httpsmailcowgithubiomailcow-dockerized-docsb_n_r_backup" class="md-nav__link">
https://mailcow.github.io/mailcow-dockerized-docs/b_n_r_backup/
</a>
</li>
<li class="md-nav__item">
<a href="#run-command" class="md-nav__link">
run command
</a>
</li>
<li class="md-nav__item">
<a href="#httpsmailcowgithubiomailcow-dockerized-docsb_n_r_backup_1" class="md-nav__link">
https://mailcow.github.io/mailcow-dockerized-docs/b_n_r_backup/
</a>
</li>
<li class="md-nav__item">
<a href="#befehl-ausfuhren" class="md-nav__link">
Befehl ausfĂĽhren
</a>
</li>
<li class="md-nav__item">
@ -2456,6 +2629,13 @@
Backup-Strategie mit rsync und mailcow Backup-Skript
</a>
</li>
<li class="md-nav__item">
<a href="#wenn-sie-wollen-benutzen-sie-acl-util-um-die-berechtigungen-einigeraller-ordnerdateien-zu-sichern-getfacl-rn-path" class="md-nav__link">
Wenn Sie wollen, benutzen Sie acl util, um die Berechtigungen einiger/aller Ordner/Dateien zu sichern: getfacl -Rn /path
</a>
</li>
</ul>
@ -2482,84 +2662,72 @@
<p>Bitte kopieren Sie dieses Skript nicht an einen anderen Ort.</p>
<p>Um ein Backup zu starten, geben Sie "backup" als ersten Parameter an und entweder eine oder mehrere zu sichernde Komponenten als folgende Parameter.
Sie können auch "all" als zweiten Parameter verwenden, um alle Komponenten zu sichern. Fügen Sie <code>--delete-days n</code> an, um Sicherungen zu löschen, die älter als n Tage sind.</p>
<div class="highlight"><pre><span></span><code># Syntax:
# ./helper-scripts/backup_and_restore.sh backup (vmail|crypt|redis|rspamd|postfix|mysql|all|--delete-days)
# Alles sichern, Sicherungen älter als 3 Tage löschen
./helper-scripts/backup_and_restore.sh backup all --delete-days 3
# vmail-, crypt- und mysql-Daten sichern, Sicherungen löschen, die älter als 30 Tage sind
./helper-scripts/backup_and_restore.sh backup vmail crypt mysql --delete-days 30
# vmail sichern
./helper-scripts/backup_and_restore.sh backup vmail
</code></pre></div>
<p>```</p>
<h1 id="syntax">Syntax:<a class="headerlink" href="#syntax" title="Permanent link">&para;</a></h1>
<h1 id="helper-scriptsbackup_and_restoresh-backup-vmailcryptredisrspamdpostfixmysqlall-delete-days">./helper-scripts/backup_and_restore.sh backup (vmail|crypt|redis|rspamd|postfix|mysql|all|--delete-days)<a class="headerlink" href="#helper-scriptsbackup_and_restoresh-backup-vmailcryptredisrspamdpostfixmysqlall-delete-days" title="Permanent link">&para;</a></h1>
<h1 id="alles-sichern-sicherungen-alter-als-3-tage-loschen">Alles sichern, Sicherungen älter als 3 Tage löschen<a class="headerlink" href="#alles-sichern-sicherungen-alter-als-3-tage-loschen" title="Permanent link">&para;</a></h1>
<p>./helper-scripts/backup_and_restore.sh backup all --delete-days 3</p>
<h1 id="vmail-crypt-und-mysql-daten-sichern-sicherungen-loschen-die-alter-als-30-tage-sind">vmail-, crypt- und mysql-Daten sichern, Sicherungen löschen, die älter als 30 Tage sind<a class="headerlink" href="#vmail-crypt-und-mysql-daten-sichern-sicherungen-loschen-die-alter-als-30-tage-sind" title="Permanent link">&para;</a></h1>
<p>./helper-scripts/backup_and_restore.sh backup vmail crypt mysql --delete-days 30</p>
<h1 id="vmail-sichern">vmail sichern<a class="headerlink" href="#vmail-sichern" title="Permanent link">&para;</a></h1>
<p>./helper-scripts/backup_and_restore.sh backup vmail</p>
<p>```</p>
<p>Das Skript wird Sie nach einem Speicherort fĂĽr die Sicherung fragen. Innerhalb dieses Speicherortes wird es Ordner im Format "mailcow_DATE" erstellen.
Sie sollten diese Ordner nicht umbenennen, um den Wiederherstellungsprozess nicht zu unterbrechen.</p>
<p>Um ein Backup unbeaufsichtigt durchzufĂĽhren, definieren Sie MAILCOW_BACKUP_LOCATION als Umgebungsvariable bevor Sie das Skript starten:</p>
<div class="highlight"><pre><span></span><code>MAILCOW_BACKUP_LOCATION=/opt/backup /opt/mailcow-dockerized/helper-scripts/backup_and_restore.sh backup all
</code></pre></div>
<p><code>MAILCOW_BACKUP_LOCATION=/opt/backup /opt/mailcow-dockerized/helper-scripts/backup_and_restore.sh backup all</code></p>
<h4 id="cronjob">Cronjob<a class="headerlink" href="#cronjob" title="Permanent link">&para;</a></h4>
<p>Sie können das Backup-Skript regelmäßig über einen Cronjob laufen lassen. Stellen Sie sicher, dass <code>BACKUP_LOCATION</code> existiert:</p>
<div class="highlight"><pre><span></span><code>5 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
</code></pre></div>
<p><code>5 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</code></p>
<p>Standardmäßig sendet Cron das komplette Ergebnis jeder Backup-Operation per E-Mail. Wenn Sie möchten, dass cron nur im Fehlerfall (Exit-Code ungleich Null) eine E-Mail sendet, können Sie den folgenden Ausschnitt verwenden. Die Pfade müssen entsprechend Ihrer Einrichtung angepasst werden (dieses Skript ist ein Beitrag des Benutzers).</p>
<p>Das folgende Skript kann in <code>/etc/cron.daily/mailcow-backup</code> platziert werden - vergessen Sie nicht, es mit <code>chmod +x</code> als ausfĂĽhrbar zu markieren:</p>
<div class="highlight"><pre><span></span><code>#!/bin/sh
# Backup mailcow data
# https://mailcow.github.io/mailcow-dockerized-docs/b_n_r_backup/
set -e
OUT=&quot;$(mktemp)&quot;
export MAILCOW_BACKUP_LOCATION=&quot;/opt/backup&quot;
SCRIPT=&quot;/opt/mailcow-dockerized/helper-scripts/backup_and_restore.sh&quot;
PARAMETERS=&quot;backup all&quot;
OPTIONS=&quot;--delete-days 30&quot;
# run command
set +e
&quot;${SCRIPT}&quot; ${PARAMETERS} ${OPTIONS} 2&gt;&amp;1 &gt; &quot;$OUT&quot;
RESULT=$?
if [ $RESULT -ne 0 ]
<p>```</p>
<h1 id="binsh">!/bin/sh<a class="headerlink" href="#binsh" title="Permanent link">&para;</a></h1>
<h1 id="backup-mailcow-data">Backup mailcow data<a class="headerlink" href="#backup-mailcow-data" title="Permanent link">&para;</a></h1>
<h1 id="httpsmailcowgithubiomailcow-dockerized-docsb_n_r_backup"><a href="https://mailcow.github.io/mailcow-dockerized-docs/b_n_r_backup/">https://mailcow.github.io/mailcow-dockerized-docs/b_n_r_backup/</a><a class="headerlink" href="#httpsmailcowgithubiomailcow-dockerized-docsb_n_r_backup" title="Permanent link">&para;</a></h1>
<p>set -e</p>
<p>OUT="$(mktemp)"
export MAILCOW_BACKUP_LOCATION="/opt/backup"
SCRIPT="/opt/mailcow-dockerized/helper-scripts/backup_and_restore.sh"
PARAMETERS="backup all"
OPTIONS="--delete-days 30"</p>
<h1 id="run-command">run command<a class="headerlink" href="#run-command" title="Permanent link">&para;</a></h1>
<p>set +e
"${SCRIPT}" ${PARAMETERS} ${OPTIONS} 2&gt;&amp;1 &gt; "$OUT"
RESULT=$?</p>
<p>if [ $RESULT -ne 0 ]
then
echo &quot;${SCRIPT} ${PARAMETERS} ${OPTIONS} encounters an error:&quot;
echo &quot;RESULT=$RESULT&quot;
# https://mailcow.github.io/mailcow-dockerized-docs/b_n_r_backup/
set -e
OUT=&quot;$(mktemp)&quot;
export MAILCOW_BACKUP_LOCATION=&quot;/opt/backup&quot;
SCRIPT=&quot;/opt/mailcow-dockerized/helper-scripts/backup_and_restore.sh&quot;
PARAMETERS=&quot;alle sichern&quot;
OPTIONS=&quot;--delete-days 30&quot;
# Befehl ausfĂĽhren
setzen +e
&quot;${SCRIPT}&quot; ${PARAMETERS} ${OPTIONS} 2&gt;&amp;1 &gt; &quot;$OUT&quot;
ERGEBNIS=$?
if [ $RESULT -ne 0 ]
echo "${SCRIPT} ${PARAMETERS} ${OPTIONS} encounters an error:"
echo "RESULT=$RESULT"</p>
<h1 id="httpsmailcowgithubiomailcow-dockerized-docsb_n_r_backup_1"><a href="https://mailcow.github.io/mailcow-dockerized-docs/b_n_r_backup/">https://mailcow.github.io/mailcow-dockerized-docs/b_n_r_backup/</a><a class="headerlink" href="#httpsmailcowgithubiomailcow-dockerized-docsb_n_r_backup_1" title="Permanent link">&para;</a></h1>
<p>set -e</p>
<p>OUT="$(mktemp)"
export MAILCOW_BACKUP_LOCATION="/opt/backup"
SCRIPT="/opt/mailcow-dockerized/helper-scripts/backup_and_restore.sh"
PARAMETERS="alle sichern"
OPTIONS="--delete-days 30"</p>
<h1 id="befehl-ausfuhren">Befehl ausfĂĽhren<a class="headerlink" href="#befehl-ausfuhren" title="Permanent link">&para;</a></h1>
<p>setzen +e
"${SCRIPT}" ${PARAMETERS} ${OPTIONS} 2&gt;&amp;1 &gt; "$OUT"
ERGEBNIS=$?</p>
<p>if [ $RESULT -ne 0 ]
dann
echo &quot;${SCRIPT} ${PARAMETER} ${OPTIONS} ist auf einen Fehler gestoĂźen:&quot;
echo &quot;ERGEBNIS=$ERGEBNIS&quot;
echo &quot;STDOUT / STDERR:&quot;
cat &quot;$OUT&quot;
echo "${SCRIPT} ${PARAMETER} ${OPTIONS} ist auf einen Fehler gestoĂźen:"
echo "ERGEBNIS=$ERGEBNIS"
echo "STDOUT / STDERR:"
cat "$OUT"
fi
</code></pre></div>
```</p>
<h1 id="backup-strategie-mit-rsync-und-mailcow-backup-skript">Backup-Strategie mit rsync und mailcow Backup-Skript<a class="headerlink" href="#backup-strategie-mit-rsync-und-mailcow-backup-skript" title="Permanent link">&para;</a></h1>
<p>Erstellen Sie das Zielverzeichnis fĂĽr mailcows Hilfsskript:
<div class="highlight"><pre><span></span><code>mkdir -p /external_share/backups/backup_script
</code></pre></div></p>
<code>mkdir -p /external_share/backups/backup_script</code></p>
<p>Cronjobs erstellen:
<div class="highlight"><pre><span></span><code>25 1 * * * rsync -aH --delete /opt/mailcow-dockerized /external_share/backups/mailcow-dockerized
```
25 1 * * * rsync -aH --delete /opt/mailcow-dockerized /external_share/backups/mailcow-dockerized
40 2 * * * rsync -aH --delete /var/lib/docker/volumes /external_share/backups/var_lib_docker_volumes
5 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
# Wenn Sie wollen, benutzen Sie acl util, um die Berechtigungen einiger/aller Ordner/Dateien zu sichern: getfacl -Rn /path
</code></pre></div></p>
5 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</p>
<h1 id="wenn-sie-wollen-benutzen-sie-acl-util-um-die-berechtigungen-einigeraller-ordnerdateien-zu-sichern-getfacl-rn-path">Wenn Sie wollen, benutzen Sie acl util, um die Berechtigungen einiger/aller Ordner/Dateien zu sichern: getfacl -Rn /path<a class="headerlink" href="#wenn-sie-wollen-benutzen-sie-acl-util-um-die-berechtigungen-einigeraller-ordnerdateien-zu-sichern-getfacl-rn-path" title="Permanent link">&para;</a></h1>
<p>```</p>
<p>Am Zielort (in diesem Fall <code>/external_share/backups</code>) möchten Sie vielleicht Snapshot-Fähigkeiten haben (ZFS, Btrfs usw.). Machen Sie täglich einen Snapshot und bewahren Sie ihn für n Tage auf, um ein konsistentes Backup zu erhalten.
FĂĽhren Sie <strong>kein</strong> rsync auf eine Samba-Freigabe durch, Sie mĂĽssen die richtigen Berechtigungen einhalten!</p>
<p>Zum Wiederherstellen mĂĽssen Sie rsync einfach in umgekehrter Richtung ausfĂĽhren und Docker neu starten, um die Volumes erneut zu lesen. FĂĽhren Sie <code>docker-compose pull</code> und <code>docker-compose up -d</code> aus.</p>
@ -2684,7 +2852,7 @@ Im Falle einer beschädigten Datenbank müssen Sie das Hilfsskript verwenden, um
<script id="__config" type="application/json">{"base": "../../..", "features": ["navigation.top", "navigation.tracking"], "search": "../../../assets/javascripts/workers/search.2a1c317c.min.js", "translations": {"clipboard.copied": "In Zwischenablage kopiert", "clipboard.copy": "In Zwischenablage kopieren", "search.config.lang": "de", "search.config.pipeline": "trimmer, stopWordFilter", "search.config.separator": "[\\s\\-]+", "search.placeholder": "Suche", "search.result.more.one": "1 weiteres Suchergebnis auf dieser Seite", "search.result.more.other": "# weitere Suchergebnisse auf dieser Seite", "search.result.none": "Keine Suchergebnisse", "search.result.one": "1 Suchergebnis", "search.result.other": "# Suchergebnisse", "search.result.placeholder": "Suchbegriff eingeben", "search.result.term.missing": "Es fehlt", "select.version.title": "Version ausw\u00e4hlen"}}</script>
<script src="../../../assets/javascripts/bundle.748e2769.min.js"></script>
<script src="../../../assets/javascripts/bundle.c2e1ee47.min.js"></script>
<script src="../../../assets/javascripts/client.js"></script>

Datei anzeigen

@ -11,7 +11,7 @@
<link rel="canonical" href="https://mailcow.github.io/mailcow-dockerized-docs/de/backup_restore/b_n_r-backup_restore-maildir/">
<link rel="icon" href="../../../assets/images/favicon.png">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.11">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.14">
@ -19,10 +19,10 @@
<link rel="stylesheet" href="../../../assets/stylesheets/main.8c5ef100.min.css">
<link rel="stylesheet" href="../../../assets/stylesheets/main.3de6f41f.min.css">
<link rel="stylesheet" href="../../../assets/stylesheets/palette.9647289d.min.css">
<link rel="stylesheet" href="../../../assets/stylesheets/palette.cc9b2e1e.min.css">
@ -2440,15 +2440,13 @@
<h3 id="sicherung">Sicherung<a class="headerlink" href="#sicherung" title="Permanent link">&para;</a></h3>
<p>Diese Zeile sichert das vmail-Verzeichnis in eine Datei backup_vmail.tar.gz im mailcow-Root-Verzeichnis:
<div class="highlight"><pre><span></span><code>cd /pfad/zu/mailcow-dockerized
docker run --rm -i -v $(docker inspect --format &#39;{{ range .Mounts }}{{ if eq .Destination &quot;/var/vmail&quot; }}{{ .Name }}{{ end }}{{{ end }}&#39; $(docker-compose ps -q dovecot-mailcow)):/vmail -v ${PWD}:/backup debian:stretch-slim tar cvfz /backup/backup_vmail.tar.gz /vmail
</code></pre></div></p>
<code>cd /pfad/zu/mailcow-dockerized
docker 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:stretch-slim tar cvfz /backup/backup_vmail.tar.gz /vmail</code></p>
<p>Sie können den Pfad ändern, indem Sie ${PWD} (das dem aktuellen Verzeichnis entspricht) an einen beliebigen Pfad anpassen, auf den Sie Schreibzugriff haben.
Setzen Sie den Dateinamen <code>backup_vmail.tar.gz</code> auf einen beliebigen Namen, aber lassen Sie den Pfad so wie er ist. Beispiel: <code>[...] tar cvfz /backup/mein_eigener_filename_.tar.gz</code></p>
<h3 id="wiederherstellen">Wiederherstellen<a class="headerlink" href="#wiederherstellen" title="Permanent link">&para;</a></h3>
<div class="highlight"><pre><span></span><code>cd /pfad/zu/mailcow-dockerized
docker run --rm -it -v $(docker inspect --format &#39;{{ range .Mounts }}{{ if eq .Destination &quot;/var/vmail&quot; }}{{ .Name }}{{ end }}{{ end }}&#39; $(docker-compose ps -q dovecot-mailcow)):/vmail -v ${PWD}:/backup debian:stretch-slim tar xvfz /backup/backup_vmail.tar.gz
</code></pre></div>
<p><code>cd /pfad/zu/mailcow-dockerized
docker 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:stretch-slim tar xvfz /backup/backup_vmail.tar.gz</code></p>
<hr>
<div class="md-source-file">
@ -2568,7 +2566,7 @@ docker run --rm -it -v $(docker inspect --format &#39;{{ range .Mounts }}{{ if e
<script id="__config" type="application/json">{"base": "../../..", "features": ["navigation.top", "navigation.tracking"], "search": "../../../assets/javascripts/workers/search.2a1c317c.min.js", "translations": {"clipboard.copied": "In Zwischenablage kopiert", "clipboard.copy": "In Zwischenablage kopieren", "search.config.lang": "de", "search.config.pipeline": "trimmer, stopWordFilter", "search.config.separator": "[\\s\\-]+", "search.placeholder": "Suche", "search.result.more.one": "1 weiteres Suchergebnis auf dieser Seite", "search.result.more.other": "# weitere Suchergebnisse auf dieser Seite", "search.result.none": "Keine Suchergebnisse", "search.result.one": "1 Suchergebnis", "search.result.other": "# Suchergebnisse", "search.result.placeholder": "Suchbegriff eingeben", "search.result.term.missing": "Es fehlt", "select.version.title": "Version ausw\u00e4hlen"}}</script>
<script src="../../../assets/javascripts/bundle.748e2769.min.js"></script>
<script src="../../../assets/javascripts/bundle.c2e1ee47.min.js"></script>
<script src="../../../assets/javascripts/client.js"></script>

Datei anzeigen

@ -11,7 +11,7 @@
<link rel="canonical" href="https://mailcow.github.io/mailcow-dockerized-docs/de/backup_restore/b_n_r-backup_restore-mysql/">
<link rel="icon" href="../../../assets/images/favicon.png">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.11">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.14">
@ -19,10 +19,10 @@
<link rel="stylesheet" href="../../../assets/stylesheets/main.8c5ef100.min.css">
<link rel="stylesheet" href="../../../assets/stylesheets/main.3de6f41f.min.css">
<link rel="stylesheet" href="../../../assets/stylesheets/palette.9647289d.min.css">
<link rel="stylesheet" href="../../../assets/stylesheets/palette.cc9b2e1e.min.css">
@ -2439,20 +2439,18 @@
<h1>MySQL (mysqldump)</h1>
<h2 id="sicherung">Sicherung<a class="headerlink" href="#sicherung" title="Permanent link">&para;</a></h2>
<div class="highlight"><pre><span></span><code>cd /pfad/zu/mailcow-dockerized
<p><code>cd /pfad/zu/mailcow-dockerized
source mailcow.conf
DATE=$(Datum +&quot;%Y%m%d_%H%M%S&quot;)
docker-compose exec -T mysql-mailcow mysqldump --default-character-set=utf8mb4 -u${DBUSER} -p${DBPASS} ${DBNAME} &gt; backup_${DBNAME}_${DATE}.sql
</code></pre></div>
DATE=$(Datum +"%Y%m%d_%H%M%S")
docker-compose exec -T mysql-mailcow mysqldump --default-character-set=utf8mb4 -u${DBUSER} -p${DBPASS} ${DBNAME} &gt; backup_${DBNAME}_${DATE}.sql</code></p>
<h2 id="wiederherstellen">Wiederherstellen<a class="headerlink" href="#wiederherstellen" title="Permanent link">&para;</a></h2>
<div class="admonition warning">
<p class="admonition-title">Warning</p>
<p>Sie sollten den SQL-Dump ohne <code>docker-compose</code> umleiten, um Parsing-Fehler zu vermeiden.</p>
</div>
<div class="highlight"><pre><span></span><code>cd /pfad/zu/mailcow-dockerized
<p><code>cd /pfad/zu/mailcow-dockerized
source mailcow.conf
docker exec -i $(docker-compose ps -q mysql-mailcow) mysql -u${DBUSER} -p${DBPASS} ${DBNAME} &lt; backup_file.sql
</code></pre></div>
docker exec -i $(docker-compose ps -q mysql-mailcow) mysql -u${DBUSER} -p${DBPASS} ${DBNAME} &lt; backup_file.sql</code></p>
<hr>
<div class="md-source-file">
@ -2572,7 +2570,7 @@ docker exec -i $(docker-compose ps -q mysql-mailcow) mysql -u${DBUSER} -p${DBPAS
<script id="__config" type="application/json">{"base": "../../..", "features": ["navigation.top", "navigation.tracking"], "search": "../../../assets/javascripts/workers/search.2a1c317c.min.js", "translations": {"clipboard.copied": "In Zwischenablage kopiert", "clipboard.copy": "In Zwischenablage kopieren", "search.config.lang": "de", "search.config.pipeline": "trimmer, stopWordFilter", "search.config.separator": "[\\s\\-]+", "search.placeholder": "Suche", "search.result.more.one": "1 weiteres Suchergebnis auf dieser Seite", "search.result.more.other": "# weitere Suchergebnisse auf dieser Seite", "search.result.none": "Keine Suchergebnisse", "search.result.one": "1 Suchergebnis", "search.result.other": "# Suchergebnisse", "search.result.placeholder": "Suchbegriff eingeben", "search.result.term.missing": "Es fehlt", "select.version.title": "Version ausw\u00e4hlen"}}</script>
<script src="../../../assets/javascripts/bundle.748e2769.min.js"></script>
<script src="../../../assets/javascripts/bundle.c2e1ee47.min.js"></script>
<script src="../../../assets/javascripts/client.js"></script>

Datei anzeigen

@ -11,7 +11,7 @@
<link rel="canonical" href="https://mailcow.github.io/mailcow-dockerized-docs/de/backup_restore/b_n_r-coldstandby/">
<link rel="icon" href="../../../assets/images/favicon.png">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.11">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.14">
@ -19,10 +19,10 @@
<link rel="stylesheet" href="../../../assets/stylesheets/main.8c5ef100.min.css">
<link rel="stylesheet" href="../../../assets/stylesheets/main.3de6f41f.min.css">
<link rel="stylesheet" href="../../../assets/stylesheets/palette.9647289d.min.css">
<link rel="stylesheet" href="../../../assets/stylesheets/palette.cc9b2e1e.min.css">
@ -2487,10 +2487,9 @@
<p>Sie benötigen ein SSH-fähiges Ziel und eine Schlüsseldatei, um sich mit diesem Ziel zu verbinden. Der Schlüssel sollte nicht durch ein Passwort geschützt sein, damit das Skript unbeaufsichtigt arbeiten kann.</p>
<p>In Ihrem mailcow-Basisverzeichnis, z.B. <code>/opt/mailcow-dockerized</code>, finden Sie eine Datei <code>create_cold_standby.sh</code>.</p>
<p>Bearbeiten Sie diese Datei und ändern Sie die exportierten Variablen:</p>
<div class="highlight"><pre><span></span><code>export REMOTE_SSH_KEY=/pfad/zur/keyfile
<p><code>export REMOTE_SSH_KEY=/pfad/zur/keyfile
export REMOTE_SSH_PORT=22
export REMOTE_SSH_HOST=mailcow-backup.host.name
</code></pre></div>
export REMOTE_SSH_HOST=mailcow-backup.host.name</code></p>
<p>Der Schlüssel muss im Besitz von root sein und darf nur von diesem gelesen werden können.</p>
<p>Sowohl die Quelle als auch das Ziel benötigen <code>rsync</code> &gt;= v3.1.0.
Das Ziel muss ĂĽber Docker und docker-compose <strong>v1</strong> verfĂĽgen.</p>
@ -2498,28 +2497,23 @@ Das Ziel muss ĂĽber Docker und docker-compose <strong>v1</strong> verfĂĽgen.</p>
<p>Sie können die Verbindung testen, indem Sie <code>ssh mailcow-backup.host.name -p22 -i /path/to/keyfile</code> ausführen.</p>
<h2 id="backup-und-aktualisierung-des-cold-standby">Backup und Aktualisierung des Cold-Standby<a class="headerlink" href="#backup-und-aktualisierung-des-cold-standby" title="Permanent link">&para;</a></h2>
<p>Starten Sie das erste Backup, dies kann je nach Verbindung eine Weile dauern:</p>
<div class="highlight"><pre><span></span><code>bash /opt/mailcow-dockerized/create_cold_standby.sh
</code></pre></div>
<p><code>bash /opt/mailcow-dockerized/create_cold_standby.sh</code></p>
<p>Das war einfach, nicht wahr?</p>
<p>Das Aktualisieren des Cold-Standby ist genauso einfach:</p>
<div class="highlight"><pre><span></span><code>bash /opt/mailcow-dockerized/create_cold_standby.sh
</code></pre></div>
<p><code>bash /opt/mailcow-dockerized/create_cold_standby.sh</code></p>
<p>Es ist derselbe Befehl.</p>
<h2 id="automatisierte-backups-mit-cron">Automatisierte Backups mit cron<a class="headerlink" href="#automatisierte-backups-mit-cron" title="Permanent link">&para;</a></h2>
<p>Stellen Sie zunächst sicher, dass der <code>cron</code> Dienst aktiviert ist und läuft:</p>
<div class="highlight"><pre><span></span><code>systemctl enable cron.service &amp;&amp; systemctl start cron.service
</code></pre></div>
<p><code>systemctl enable cron.service &amp;&amp; systemctl start cron.service</code></p>
<p>Um die Backups auf dem Cold-Standby-Server zu automatisieren, können Sie einen Cron-Job verwenden. Um die Cron-Jobs für den Root-Benutzer zu bearbeiten, führen Sie aus:</p>
<div class="highlight"><pre><span></span><code>crontab -e
</code></pre></div>
<p><code>crontab -e</code></p>
<p>Fügen Sie die folgenden Zeilen hinzu, um den Cold-Standby-Server täglich um 03:00 Uhr zu synchronisieren. In diesem Beispiel werden Fehler der letzten Ausführung in einer Datei protokolliert.</p>
<div class="highlight"><pre><span></span><code>PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
0 3 * * * bash /opt/mailcow-dockerized/create_cold_standby.sh 2&gt; /var/log/mailcow-coldstandby-sync.log
</code></pre></div>
<p>```
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin</p>
<p>0 3 * * * bash /opt/mailcow-dockerized/create_cold_standby.sh 2&gt; /var/log/mailcow-coldstandby-sync.log
```</p>
<p>Wenn korrekt gespeichert, sollte der Cron-Job durch Eingabe angezeigt werden:</p>
<div class="highlight"><pre><span></span><code>crontab -l
</code></pre></div>
<p><code>crontab -l</code></p>
<hr>
<div class="md-source-file">
@ -2639,7 +2633,7 @@ Das Ziel muss ĂĽber Docker und docker-compose <strong>v1</strong> verfĂĽgen.</p>
<script id="__config" type="application/json">{"base": "../../..", "features": ["navigation.top", "navigation.tracking"], "search": "../../../assets/javascripts/workers/search.2a1c317c.min.js", "translations": {"clipboard.copied": "In Zwischenablage kopiert", "clipboard.copy": "In Zwischenablage kopieren", "search.config.lang": "de", "search.config.pipeline": "trimmer, stopWordFilter", "search.config.separator": "[\\s\\-]+", "search.placeholder": "Suche", "search.result.more.one": "1 weiteres Suchergebnis auf dieser Seite", "search.result.more.other": "# weitere Suchergebnisse auf dieser Seite", "search.result.none": "Keine Suchergebnisse", "search.result.one": "1 Suchergebnis", "search.result.other": "# Suchergebnisse", "search.result.placeholder": "Suchbegriff eingeben", "search.result.term.missing": "Es fehlt", "select.version.title": "Version ausw\u00e4hlen"}}</script>
<script src="../../../assets/javascripts/bundle.748e2769.min.js"></script>
<script src="../../../assets/javascripts/bundle.c2e1ee47.min.js"></script>
<script src="../../../assets/javascripts/client.js"></script>

Datei anzeigen

@ -11,7 +11,7 @@
<link rel="canonical" href="https://mailcow.github.io/mailcow-dockerized-docs/de/backup_restore/b_n_r-restore/">
<link rel="icon" href="../../../assets/images/favicon.png">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.11">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.14">
@ -19,10 +19,10 @@
<link rel="stylesheet" href="../../../assets/stylesheets/main.8c5ef100.min.css">
<link rel="stylesheet" href="../../../assets/stylesheets/main.3de6f41f.min.css">
<link rel="stylesheet" href="../../../assets/stylesheets/palette.9647289d.min.css">
<link rel="stylesheet" href="../../../assets/stylesheets/palette.cc9b2e1e.min.css">
@ -965,6 +965,20 @@
Wiederherstellung
</a>
</li>
<li class="md-nav__item">
<a href="#syntax" class="md-nav__link">
Syntax:
</a>
</li>
<li class="md-nav__item">
<a href="#helper-scriptsbackup_and_restoresh-restore" class="md-nav__link">
./helper-scripts/backup_and_restore.sh restore
</a>
</li>
</ul>
@ -2402,6 +2416,20 @@
Wiederherstellung
</a>
</li>
<li class="md-nav__item">
<a href="#syntax" class="md-nav__link">
Syntax:
</a>
</li>
<li class="md-nav__item">
<a href="#helper-scriptsbackup_and_restoresh-restore" class="md-nav__link">
./helper-scripts/backup_and_restore.sh restore
</a>
</li>
</ul>
@ -2422,14 +2450,13 @@
<h1>Wiederherstellung</h1>
<h3 id="wiederherstellung">Wiederherstellung<a class="headerlink" href="#wiederherstellung" title="Permanent link">&para;</a></h3>
<p>Bitte kopieren Sie dieses Skript nicht an einen anderen Ort.</p>
<p>Um eine Wiederherstellung durchzufĂĽhren, <strong>starten Sie mailcow</strong>, verwenden Sie das Skript mit "restore" als ersten Parameter.</p>
<div class="highlight"><pre><span></span><code># Syntax:
# ./helper-scripts/backup_and_restore.sh restore
</code></pre></div>
<p>```</p>
<h1 id="syntax">Syntax:<a class="headerlink" href="#syntax" title="Permanent link">&para;</a></h1>
<h1 id="helper-scriptsbackup_and_restoresh-restore">./helper-scripts/backup_and_restore.sh restore<a class="headerlink" href="#helper-scriptsbackup_and_restoresh-restore" title="Permanent link">&para;</a></h1>
<p>```</p>
<p>Das Skript wird Sie nach einem Speicherort fĂĽr die Sicherung der mailcow_DATE-Ordner fragen.</p>
<hr>
@ -2550,7 +2577,7 @@
<script id="__config" type="application/json">{"base": "../../..", "features": ["navigation.top", "navigation.tracking"], "search": "../../../assets/javascripts/workers/search.2a1c317c.min.js", "translations": {"clipboard.copied": "In Zwischenablage kopiert", "clipboard.copy": "In Zwischenablage kopieren", "search.config.lang": "de", "search.config.pipeline": "trimmer, stopWordFilter", "search.config.separator": "[\\s\\-]+", "search.placeholder": "Suche", "search.result.more.one": "1 weiteres Suchergebnis auf dieser Seite", "search.result.more.other": "# weitere Suchergebnisse auf dieser Seite", "search.result.none": "Keine Suchergebnisse", "search.result.one": "1 Suchergebnis", "search.result.other": "# Suchergebnisse", "search.result.placeholder": "Suchbegriff eingeben", "search.result.term.missing": "Es fehlt", "select.version.title": "Version ausw\u00e4hlen"}}</script>
<script src="../../../assets/javascripts/bundle.748e2769.min.js"></script>
<script src="../../../assets/javascripts/bundle.c2e1ee47.min.js"></script>
<script src="../../../assets/javascripts/client.js"></script>

Datei anzeigen

@ -11,7 +11,7 @@
<link rel="canonical" href="https://mailcow.github.io/mailcow-dockerized-docs/de/client/client-android/">
<link rel="icon" href="../../../assets/images/favicon.png">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.11">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.14">
@ -19,10 +19,10 @@
<link rel="stylesheet" href="../../../assets/stylesheets/main.8c5ef100.min.css">
<link rel="stylesheet" href="../../../assets/stylesheets/main.3de6f41f.min.css">
<link rel="stylesheet" href="../../../assets/stylesheets/palette.9647289d.min.css">
<link rel="stylesheet" href="../../../assets/stylesheets/palette.cc9b2e1e.min.css">
@ -2499,7 +2499,7 @@
<script id="__config" type="application/json">{"base": "../../..", "features": ["navigation.top", "navigation.tracking"], "search": "../../../assets/javascripts/workers/search.2a1c317c.min.js", "translations": {"clipboard.copied": "In Zwischenablage kopiert", "clipboard.copy": "In Zwischenablage kopieren", "search.config.lang": "de", "search.config.pipeline": "trimmer, stopWordFilter", "search.config.separator": "[\\s\\-]+", "search.placeholder": "Suche", "search.result.more.one": "1 weiteres Suchergebnis auf dieser Seite", "search.result.more.other": "# weitere Suchergebnisse auf dieser Seite", "search.result.none": "Keine Suchergebnisse", "search.result.one": "1 Suchergebnis", "search.result.other": "# Suchergebnisse", "search.result.placeholder": "Suchbegriff eingeben", "search.result.term.missing": "Es fehlt", "select.version.title": "Version ausw\u00e4hlen"}}</script>
<script src="../../../assets/javascripts/bundle.748e2769.min.js"></script>
<script src="../../../assets/javascripts/bundle.c2e1ee47.min.js"></script>
<script src="../../../assets/javascripts/client.js"></script>

Datei anzeigen

@ -11,7 +11,7 @@
<link rel="canonical" href="https://mailcow.github.io/mailcow-dockerized-docs/de/client/client-apple/">
<link rel="icon" href="../../../assets/images/favicon.png">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.11">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.14">
@ -19,10 +19,10 @@
<link rel="stylesheet" href="../../../assets/stylesheets/main.8c5ef100.min.css">
<link rel="stylesheet" href="../../../assets/stylesheets/main.3de6f41f.min.css">
<link rel="stylesheet" href="../../../assets/stylesheets/palette.9647289d.min.css">
<link rel="stylesheet" href="../../../assets/stylesheets/palette.cc9b2e1e.min.css">
@ -2607,7 +2607,7 @@
<script id="__config" type="application/json">{"base": "../../..", "features": ["navigation.top", "navigation.tracking"], "search": "../../../assets/javascripts/workers/search.2a1c317c.min.js", "translations": {"clipboard.copied": "In Zwischenablage kopiert", "clipboard.copy": "In Zwischenablage kopieren", "search.config.lang": "de", "search.config.pipeline": "trimmer, stopWordFilter", "search.config.separator": "[\\s\\-]+", "search.placeholder": "Suche", "search.result.more.one": "1 weiteres Suchergebnis auf dieser Seite", "search.result.more.other": "# weitere Suchergebnisse auf dieser Seite", "search.result.none": "Keine Suchergebnisse", "search.result.one": "1 Suchergebnis", "search.result.other": "# Suchergebnisse", "search.result.placeholder": "Suchbegriff eingeben", "search.result.term.missing": "Es fehlt", "select.version.title": "Version ausw\u00e4hlen"}}</script>
<script src="../../../assets/javascripts/bundle.748e2769.min.js"></script>
<script src="../../../assets/javascripts/bundle.c2e1ee47.min.js"></script>
<script src="../../../assets/javascripts/client.js"></script>

Datei anzeigen

@ -11,7 +11,7 @@
<link rel="canonical" href="https://mailcow.github.io/mailcow-dockerized-docs/de/client/client-emclient/">
<link rel="icon" href="../../../assets/images/favicon.png">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.11">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.14">
@ -19,10 +19,10 @@
<link rel="stylesheet" href="../../../assets/stylesheets/main.8c5ef100.min.css">
<link rel="stylesheet" href="../../../assets/stylesheets/main.3de6f41f.min.css">
<link rel="stylesheet" href="../../../assets/stylesheets/palette.9647289d.min.css">
<link rel="stylesheet" href="../../../assets/stylesheets/palette.cc9b2e1e.min.css">
@ -2501,7 +2501,7 @@
<script id="__config" type="application/json">{"base": "../../..", "features": ["navigation.top", "navigation.tracking"], "search": "../../../assets/javascripts/workers/search.2a1c317c.min.js", "translations": {"clipboard.copied": "In Zwischenablage kopiert", "clipboard.copy": "In Zwischenablage kopieren", "search.config.lang": "de", "search.config.pipeline": "trimmer, stopWordFilter", "search.config.separator": "[\\s\\-]+", "search.placeholder": "Suche", "search.result.more.one": "1 weiteres Suchergebnis auf dieser Seite", "search.result.more.other": "# weitere Suchergebnisse auf dieser Seite", "search.result.none": "Keine Suchergebnisse", "search.result.one": "1 Suchergebnis", "search.result.other": "# Suchergebnisse", "search.result.placeholder": "Suchbegriff eingeben", "search.result.term.missing": "Es fehlt", "select.version.title": "Version ausw\u00e4hlen"}}</script>
<script src="../../../assets/javascripts/bundle.748e2769.min.js"></script>
<script src="../../../assets/javascripts/bundle.c2e1ee47.min.js"></script>
<script src="../../../assets/javascripts/client.js"></script>

Datei anzeigen

@ -11,7 +11,7 @@
<link rel="canonical" href="https://mailcow.github.io/mailcow-dockerized-docs/de/client/client-kontact/">
<link rel="icon" href="../../../assets/images/favicon.png">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.11">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.14">
@ -19,10 +19,10 @@
<link rel="stylesheet" href="../../../assets/stylesheets/main.8c5ef100.min.css">
<link rel="stylesheet" href="../../../assets/stylesheets/main.3de6f41f.min.css">
<link rel="stylesheet" href="../../../assets/stylesheets/palette.9647289d.min.css">
<link rel="stylesheet" href="../../../assets/stylesheets/palette.cc9b2e1e.min.css">
@ -2509,7 +2509,7 @@
<script id="__config" type="application/json">{"base": "../../..", "features": ["navigation.top", "navigation.tracking"], "search": "../../../assets/javascripts/workers/search.2a1c317c.min.js", "translations": {"clipboard.copied": "In Zwischenablage kopiert", "clipboard.copy": "In Zwischenablage kopieren", "search.config.lang": "de", "search.config.pipeline": "trimmer, stopWordFilter", "search.config.separator": "[\\s\\-]+", "search.placeholder": "Suche", "search.result.more.one": "1 weiteres Suchergebnis auf dieser Seite", "search.result.more.other": "# weitere Suchergebnisse auf dieser Seite", "search.result.none": "Keine Suchergebnisse", "search.result.one": "1 Suchergebnis", "search.result.other": "# Suchergebnisse", "search.result.placeholder": "Suchbegriff eingeben", "search.result.term.missing": "Es fehlt", "select.version.title": "Version ausw\u00e4hlen"}}</script>
<script src="../../../assets/javascripts/bundle.748e2769.min.js"></script>
<script src="../../../assets/javascripts/bundle.c2e1ee47.min.js"></script>
<script src="../../../assets/javascripts/client.js"></script>

Datei anzeigen

@ -11,7 +11,7 @@
<link rel="canonical" href="https://mailcow.github.io/mailcow-dockerized-docs/de/client/client-manual/">
<link rel="icon" href="../../../assets/images/favicon.png">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.11">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.14">
@ -19,10 +19,10 @@
<link rel="stylesheet" href="../../../assets/stylesheets/main.8c5ef100.min.css">
<link rel="stylesheet" href="../../../assets/stylesheets/main.3de6f41f.min.css">
<link rel="stylesheet" href="../../../assets/stylesheets/palette.9647289d.min.css">
<link rel="stylesheet" href="../../../assets/stylesheets/palette.cc9b2e1e.min.css">
@ -2613,7 +2613,7 @@
<script id="__config" type="application/json">{"base": "../../..", "features": ["navigation.top", "navigation.tracking"], "search": "../../../assets/javascripts/workers/search.2a1c317c.min.js", "translations": {"clipboard.copied": "In Zwischenablage kopiert", "clipboard.copy": "In Zwischenablage kopieren", "search.config.lang": "de", "search.config.pipeline": "trimmer, stopWordFilter", "search.config.separator": "[\\s\\-]+", "search.placeholder": "Suche", "search.result.more.one": "1 weiteres Suchergebnis auf dieser Seite", "search.result.more.other": "# weitere Suchergebnisse auf dieser Seite", "search.result.none": "Keine Suchergebnisse", "search.result.one": "1 Suchergebnis", "search.result.other": "# Suchergebnisse", "search.result.placeholder": "Suchbegriff eingeben", "search.result.term.missing": "Es fehlt", "select.version.title": "Version ausw\u00e4hlen"}}</script>
<script src="../../../assets/javascripts/bundle.748e2769.min.js"></script>
<script src="../../../assets/javascripts/bundle.c2e1ee47.min.js"></script>
<script src="../../../assets/javascripts/client.js"></script>

Datei anzeigen

@ -11,7 +11,7 @@
<link rel="canonical" href="https://mailcow.github.io/mailcow-dockerized-docs/de/client/client-outlook/">
<link rel="icon" href="../../../assets/images/favicon.png">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.11">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.14">
@ -19,10 +19,10 @@
<link rel="stylesheet" href="../../../assets/stylesheets/main.8c5ef100.min.css">
<link rel="stylesheet" href="../../../assets/stylesheets/main.3de6f41f.min.css">
<link rel="stylesheet" href="../../../assets/stylesheets/palette.9647289d.min.css">
<link rel="stylesheet" href="../../../assets/stylesheets/palette.cc9b2e1e.min.css">
@ -2622,7 +2622,7 @@
<script id="__config" type="application/json">{"base": "../../..", "features": ["navigation.top", "navigation.tracking"], "search": "../../../assets/javascripts/workers/search.2a1c317c.min.js", "translations": {"clipboard.copied": "In Zwischenablage kopiert", "clipboard.copy": "In Zwischenablage kopieren", "search.config.lang": "de", "search.config.pipeline": "trimmer, stopWordFilter", "search.config.separator": "[\\s\\-]+", "search.placeholder": "Suche", "search.result.more.one": "1 weiteres Suchergebnis auf dieser Seite", "search.result.more.other": "# weitere Suchergebnisse auf dieser Seite", "search.result.none": "Keine Suchergebnisse", "search.result.one": "1 Suchergebnis", "search.result.other": "# Suchergebnisse", "search.result.placeholder": "Suchbegriff eingeben", "search.result.term.missing": "Es fehlt", "select.version.title": "Version ausw\u00e4hlen"}}</script>
<script src="../../../assets/javascripts/bundle.748e2769.min.js"></script>
<script src="../../../assets/javascripts/bundle.c2e1ee47.min.js"></script>
<script src="../../../assets/javascripts/client.js"></script>

Datei anzeigen

@ -11,7 +11,7 @@
<link rel="canonical" href="https://mailcow.github.io/mailcow-dockerized-docs/de/client/client-thunderbird/">
<link rel="icon" href="../../../assets/images/favicon.png">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.11">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.14">
@ -19,10 +19,10 @@
<link rel="stylesheet" href="../../../assets/stylesheets/main.8c5ef100.min.css">
<link rel="stylesheet" href="../../../assets/stylesheets/main.3de6f41f.min.css">
<link rel="stylesheet" href="../../../assets/stylesheets/palette.9647289d.min.css">
<link rel="stylesheet" href="../../../assets/stylesheets/palette.cc9b2e1e.min.css">
@ -2518,7 +2518,7 @@
<script id="__config" type="application/json">{"base": "../../..", "features": ["navigation.top", "navigation.tracking"], "search": "../../../assets/javascripts/workers/search.2a1c317c.min.js", "translations": {"clipboard.copied": "In Zwischenablage kopiert", "clipboard.copy": "In Zwischenablage kopieren", "search.config.lang": "de", "search.config.pipeline": "trimmer, stopWordFilter", "search.config.separator": "[\\s\\-]+", "search.placeholder": "Suche", "search.result.more.one": "1 weiteres Suchergebnis auf dieser Seite", "search.result.more.other": "# weitere Suchergebnisse auf dieser Seite", "search.result.none": "Keine Suchergebnisse", "search.result.one": "1 Suchergebnis", "search.result.other": "# Suchergebnisse", "search.result.placeholder": "Suchbegriff eingeben", "search.result.term.missing": "Es fehlt", "select.version.title": "Version ausw\u00e4hlen"}}</script>
<script src="../../../assets/javascripts/bundle.748e2769.min.js"></script>
<script src="../../../assets/javascripts/bundle.c2e1ee47.min.js"></script>
<script src="../../../assets/javascripts/client.js"></script>

Datei anzeigen

@ -11,7 +11,7 @@
<link rel="canonical" href="https://mailcow.github.io/mailcow-dockerized-docs/de/client/client-windows/">
<link rel="icon" href="../../../assets/images/favicon.png">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.11">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.14">
@ -19,10 +19,10 @@
<link rel="stylesheet" href="../../../assets/stylesheets/main.8c5ef100.min.css">
<link rel="stylesheet" href="../../../assets/stylesheets/main.3de6f41f.min.css">
<link rel="stylesheet" href="../../../assets/stylesheets/palette.9647289d.min.css">
<link rel="stylesheet" href="../../../assets/stylesheets/palette.cc9b2e1e.min.css">
@ -2502,7 +2502,7 @@
<script id="__config" type="application/json">{"base": "../../..", "features": ["navigation.top", "navigation.tracking"], "search": "../../../assets/javascripts/workers/search.2a1c317c.min.js", "translations": {"clipboard.copied": "In Zwischenablage kopiert", "clipboard.copy": "In Zwischenablage kopieren", "search.config.lang": "de", "search.config.pipeline": "trimmer, stopWordFilter", "search.config.separator": "[\\s\\-]+", "search.placeholder": "Suche", "search.result.more.one": "1 weiteres Suchergebnis auf dieser Seite", "search.result.more.other": "# weitere Suchergebnisse auf dieser Seite", "search.result.none": "Keine Suchergebnisse", "search.result.one": "1 Suchergebnis", "search.result.other": "# Suchergebnisse", "search.result.placeholder": "Suchbegriff eingeben", "search.result.term.missing": "Es fehlt", "select.version.title": "Version ausw\u00e4hlen"}}</script>
<script src="../../../assets/javascripts/bundle.748e2769.min.js"></script>
<script src="../../../assets/javascripts/bundle.c2e1ee47.min.js"></script>
<script src="../../../assets/javascripts/client.js"></script>

Datei anzeigen

@ -11,7 +11,7 @@
<link rel="canonical" href="https://mailcow.github.io/mailcow-dockerized-docs/de/client/client/">
<link rel="icon" href="../../../assets/images/favicon.png">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.11">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.14">
@ -19,10 +19,10 @@
<link rel="stylesheet" href="../../../assets/stylesheets/main.8c5ef100.min.css">
<link rel="stylesheet" href="../../../assets/stylesheets/main.3de6f41f.min.css">
<link rel="stylesheet" href="../../../assets/stylesheets/palette.9647289d.min.css">
<link rel="stylesheet" href="../../../assets/stylesheets/palette.cc9b2e1e.min.css">
@ -2516,7 +2516,7 @@ Da Sie diese Seite aufgerufen haben, nachdem Sie sich in Ihren Mailcow-Server ei
<script id="__config" type="application/json">{"base": "../../..", "features": ["navigation.top", "navigation.tracking"], "search": "../../../assets/javascripts/workers/search.2a1c317c.min.js", "translations": {"clipboard.copied": "In Zwischenablage kopiert", "clipboard.copy": "In Zwischenablage kopieren", "search.config.lang": "de", "search.config.pipeline": "trimmer, stopWordFilter", "search.config.separator": "[\\s\\-]+", "search.placeholder": "Suche", "search.result.more.one": "1 weiteres Suchergebnis auf dieser Seite", "search.result.more.other": "# weitere Suchergebnisse auf dieser Seite", "search.result.none": "Keine Suchergebnisse", "search.result.one": "1 Suchergebnis", "search.result.other": "# Suchergebnisse", "search.result.placeholder": "Suchbegriff eingeben", "search.result.term.missing": "Es fehlt", "select.version.title": "Version ausw\u00e4hlen"}}</script>
<script src="../../../assets/javascripts/bundle.748e2769.min.js"></script>
<script src="../../../assets/javascripts/bundle.c2e1ee47.min.js"></script>
<script src="../../../assets/javascripts/client.js"></script>

Datei anzeigen

@ -11,7 +11,7 @@
<link rel="canonical" href="https://mailcow.github.io/mailcow-dockerized-docs/de/i_u_m/i_u_m_deinstall/">
<link rel="icon" href="../../../assets/images/favicon.png">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.11">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.14">
@ -19,10 +19,10 @@
<link rel="stylesheet" href="../../../assets/stylesheets/main.8c5ef100.min.css">
<link rel="stylesheet" href="../../../assets/stylesheets/main.3de6f41f.min.css">
<link rel="stylesheet" href="../../../assets/stylesheets/palette.9647289d.min.css">
<link rel="stylesheet" href="../../../assets/stylesheets/palette.cc9b2e1e.min.css">
@ -2374,8 +2374,7 @@
<h1>Deinstallation</h1>
<p>Um mailcow: dockerized mit all seinen Volumes, Images und Containern zu entfernen, tun Sie dies:</p>
<div class="highlight"><pre><span></span><code>docker-compose down -v --rmi all --remove-orphans
</code></pre></div>
<p><code>docker-compose down -v --rmi all --remove-orphans</code></p>
<div class="admonition info">
<p class="admonition-title">Info</p>
<ul>
@ -2504,7 +2503,7 @@
<script id="__config" type="application/json">{"base": "../../..", "features": ["navigation.top", "navigation.tracking"], "search": "../../../assets/javascripts/workers/search.2a1c317c.min.js", "translations": {"clipboard.copied": "In Zwischenablage kopiert", "clipboard.copy": "In Zwischenablage kopieren", "search.config.lang": "de", "search.config.pipeline": "trimmer, stopWordFilter", "search.config.separator": "[\\s\\-]+", "search.placeholder": "Suche", "search.result.more.one": "1 weiteres Suchergebnis auf dieser Seite", "search.result.more.other": "# weitere Suchergebnisse auf dieser Seite", "search.result.none": "Keine Suchergebnisse", "search.result.one": "1 Suchergebnis", "search.result.other": "# Suchergebnisse", "search.result.placeholder": "Suchbegriff eingeben", "search.result.term.missing": "Es fehlt", "select.version.title": "Version ausw\u00e4hlen"}}</script>
<script src="../../../assets/javascripts/bundle.748e2769.min.js"></script>
<script src="../../../assets/javascripts/bundle.c2e1ee47.min.js"></script>
<script src="../../../assets/javascripts/client.js"></script>

Datei anzeigen

@ -11,7 +11,7 @@
<link rel="canonical" href="https://mailcow.github.io/mailcow-dockerized-docs/de/i_u_m/i_u_m_install/">
<link rel="icon" href="../../../assets/images/favicon.png">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.11">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.14">
@ -19,10 +19,10 @@
<link rel="stylesheet" href="../../../assets/stylesheets/main.8c5ef100.min.css">
<link rel="stylesheet" href="../../../assets/stylesheets/main.3de6f41f.min.css">
<link rel="stylesheet" href="../../../assets/stylesheets/palette.9647289d.min.css">
<link rel="stylesheet" href="../../../assets/stylesheets/palette.cc9b2e1e.min.css">
@ -66,6 +66,11 @@
<label class="md-overlay" for="__drawer"></label>
<div data-md-component="skip">
<a href="#nachdem-der-installationsprozess-abgeschlossen-ist-mussen-sie-eventuell-den-dienst-aktivieren-und-sicherstellen-dass-er-gestartet-ist-z-b-centos-7" class="md-skip">
Zum Inhalt
</a>
</div>
<div data-md-component="announce">
@ -362,6 +367,8 @@
<input class="md-nav__toggle md-toggle" data-md-toggle="toc" type="checkbox" id="__toc">
<a href="./" class="md-nav__link md-nav__link--active">
Installation
@ -2354,6 +2361,8 @@
</nav>
</div>
@ -2371,66 +2380,58 @@
<h1>Installation</h1>
<p>Sie benötigen Docker (eine Version &gt;= <code>20.10.2</code> ist erforderlich) und Docker Compose (eine Version <code>&lt;= 2.0</code> ist erforderlich).</p>
<p><strong>1.</strong> Erfahren Sie, wie Sie <a href="https://docs.docker.com/install/">Docker</a> und <a href="https://docs.docker.com/compose/install/">Docker Compose</a> installieren.</p>
<p>Schnelle Installation fĂĽr die meisten Betriebssysteme:</p>
<ul>
<li>
<p>Docker
<div class="highlight"><pre><span></span><code>curl -sSL https://get.docker.com/ | CHANNEL=stable sh
# Nachdem der Installationsprozess abgeschlossen ist, mĂĽssen Sie eventuell den Dienst aktivieren und sicherstellen, dass er gestartet ist (z. B. CentOS 7)
systemctl enable --now docker
</code></pre></div></p>
</li>
<li>
<p>Docker-Compose</p>
</li>
<li>Docker
```
curl -sSL <a href="https://get.docker.com/">https://get.docker.com/</a> | CHANNEL=stable sh</li>
</ul>
<h1 id="nachdem-der-installationsprozess-abgeschlossen-ist-mussen-sie-eventuell-den-dienst-aktivieren-und-sicherstellen-dass-er-gestartet-ist-z-b-centos-7">Nachdem der Installationsprozess abgeschlossen ist, mĂĽssen Sie eventuell den Dienst aktivieren und sicherstellen, dass er gestartet ist (z. B. CentOS 7)<a class="headerlink" href="#nachdem-der-installationsprozess-abgeschlossen-ist-mussen-sie-eventuell-den-dienst-aktivieren-und-sicherstellen-dass-er-gestartet-ist-z-b-centos-7" title="Permanent link">&para;</a></h1>
<p>systemctl enable --now docker
```</p>
<ul>
<li>Docker-Compose</li>
</ul>
<div class="admonition warning">
<p class="admonition-title">Warning</p>
<p><strong>mailcow benötigt die neueste Version von docker-compose v1.</strong> Es wird dringend empfohlen, die untenstehenden Befehle zu verwenden, um <code>docker-compose</code> zu installieren. Paket-Manager (z.B. <code>apt</code>, <code>yum</code>) werden <strong>wahrscheinlich</strong> nicht die richtige Version liefern.
Hinweis: Dieser Befehl lädt docker-compose aus dem offiziellen Docker-Github-Repository herunter und ist eine sichere Methode. Das Snippet ermittelt die neueste unterstützte Version von mailcow. In fast allen Fällen ist dies die letzte verfügbare Version (Ausnahmen sind kaputte Versionen oder größere Änderungen, die noch nicht von mailcow unterstützt werden).</p>
</div>
<div class="highlight"><pre><span></span><code>curl -L https://github.com/docker/compose/releases/download/$(curl -Ls https://www.servercow.de/docker-compose/latest.php)/docker-compose-$(uname -s)-$(uname -m) &gt; /usr/local/bin/docker-compose
chmod +x /usr/local/bin/docker-compose
</code></pre></div>
<p><code>curl -L https://github.com/docker/compose/releases/download/$(curl -Ls https://www.servercow.de/docker-compose/latest.php)/docker-compose-$(uname -s)-$(uname -m) &gt; /usr/local/bin/docker-compose
chmod +x /usr/local/bin/docker-compose</code></p>
<p>Bitte verwenden Sie die neueste verfĂĽgbare Docker-Engine und nicht die Engine, die mit Ihrem Distros-Repository ausgeliefert wird.</p>
<p><strong>1.1.1.</strong> Auf SELinux-aktivierten Systemen, z.B. CentOS 7:</p>
<ul>
<li>PrĂĽfen Sie, ob das Paket "container-selinux" auf Ihrem System vorhanden ist:</li>
</ul>
<div class="highlight"><pre><span></span><code>rpm -qa | grep container-selinux
</code></pre></div>
<p><code>rpm -qa | grep container-selinux</code></p>
<p>Wenn der obige Befehl eine leere oder keine Ausgabe liefert, sollten Sie es ĂĽber Ihren Paketmanager installieren.</p>
<ul>
<li>PrĂĽfen Sie, ob Docker SELinux-UnterstĂĽtzung aktiviert hat:</li>
</ul>
<div class="highlight"><pre><span></span><code>docker info | grep selinux
</code></pre></div>
<p><code>docker info | grep selinux</code></p>
<p>Wenn der obige Befehl eine leere oder keine Ausgabe liefert, erstellen oder bearbeiten Sie <code>/etc/docker/daemon.json</code> und fĂĽgen Sie <code>"selinux-enabled": true</code> hinzu. Beispielhafter Inhalt der Datei:</p>
<div class="highlight"><pre><span></span><code>{
&quot;selinux-enabled&quot;: true
}
</code></pre></div>
<p><code>{
"selinux-enabled": true
}</code></p>
<p>Starten Sie den Docker-Daemon neu und ĂĽberprĂĽfen Sie, ob SELinux nun aktiviert ist.</p>
<p>Dieser Schritt ist erforderlich, um sicherzustellen, dass die mailcows-Volumes richtig gekennzeichnet sind, wie in der Compose-Datei angegeben.
Wenn Sie daran interessiert sind, wie das funktioniert, können Sie sich die Readme-Datei von <a href="https://github.com/containers/container-selinux">https://github.com/containers/container-selinux</a> ansehen, die auf viele nützliche Informationen zu diesem Thema verweist.</p>
<p><strong>2.</strong> Klonen Sie den Master-Zweig des Repositorys und stellen Sie sicher, dass Ihre umask gleich 0022 ist. Bitte klonen Sie das Repository als root-Benutzer und kontrollieren Sie auch den Stack als root. Wir werden die Attribute - wenn nötig - ändern, während wir die Container automatisch bereitstellen und sicherstellen, dass alles gesichert ist. Das update.sh-Skript muss daher ebenfalls als root ausgeführt werden. Es kann notwendig sein, den Besitzer und andere Attribute von Dateien zu ändern, auf die Sie sonst keinen Zugriff haben. <strong>Wir geben die Berechtigungen für jede exponierte Anwendung</strong> auf und führen einen exponierten Dienst nicht als root aus! Wenn Sie den Docker-Daemon als Nicht-Root-Benutzer steuern, erhalten Sie keine zusätzliche Sicherheit. Der unprivilegierte Benutzer wird die Container ebenfalls als root spawnen. Das Verhalten des Stacks ist identisch.</p>
<div class="highlight"><pre><span></span><code>$ su
# umask
0022 # &lt;- ĂśberprĂĽfen, dass es 0022 ist
# cd /opt
# git clone https://github.com/mailcow/mailcow-dockerized
# cd mailcow-dockerized
</code></pre></div>
<p>```
$ su</p>
<h1 id="umask">umask<a class="headerlink" href="#umask" title="Permanent link">&para;</a></h1>
<p>0022 # &lt;- ĂśberprĂĽfen, dass es 0022 ist</p>
<h1 id="cd-opt">cd /opt<a class="headerlink" href="#cd-opt" title="Permanent link">&para;</a></h1>
<h1 id="git-clone-httpsgithubcommailcowmailcow-dockerized">git clone <a href="https://github.com/mailcow/mailcow-dockerized">https://github.com/mailcow/mailcow-dockerized</a><a class="headerlink" href="#git-clone-httpsgithubcommailcowmailcow-dockerized" title="Permanent link">&para;</a></h1>
<h1 id="cd-mailcow-dockerized">cd mailcow-dockerized<a class="headerlink" href="#cd-mailcow-dockerized" title="Permanent link">&para;</a></h1>
<p>```</p>
<p><strong>3.</strong> Erzeugen Sie eine Konfigurationsdatei. Verwenden Sie einen FQDN (<code>host.domain.tld</code>) als Hostname, wenn Sie gefragt werden.
<div class="highlight"><pre><span></span><code>./generate_config.sh
</code></pre></div></p>
<code>./generate_config.sh</code></p>
<p><strong>4.</strong> Ă„ndern Sie die Konfiguration, wenn Sie das wollen oder mĂĽssen.
<div class="highlight"><pre><span></span><code>nano mailcow.conf
</code></pre></div>
<code>nano mailcow.conf</code>
Wenn Sie planen, einen Reverse Proxy zu verwenden, können Sie zum Beispiel HTTPS an 127.0.0.1 auf Port 8443 und HTTP an 127.0.0.1 auf Port 8080 binden.</p>
<p>Möglicherweise müssen Sie einen vorinstallierten MTA stoppen, der Port 25/tcp blockiert. Siehe <a href="../../post_installation/firststeps-local_mta/">dieses Kapitel</a>, um zu erfahren, wie man Postfix rekonfiguriert, um nach einer erfolgreichen Installation neben mailcow laufen zu lassen.</p>
<p>Einige Updates modifizieren mailcow.conf und fügen neue Parameter hinzu. Es ist schwer, in der Dokumentation den Überblick zu behalten. Bitte überprüfen Sie deren Beschreibung und fragen Sie, wenn Sie unsicher sind, in den bekannten Kanälen nach Rat.</p>
@ -2438,20 +2439,18 @@ Wenn Sie planen, einen Reverse Proxy zu verwenden, können Sie zum Beispiel HTTP
<p><strong>Wenn Sie auf Probleme und seltsame Phänomene stoßen, überprüfen Sie bitte Ihre MTU.</strong></p>
<p>Bearbeiten Sie <code>docker-compose.yml</code> und ändern Sie die Netzwerkeinstellungen entsprechend Ihrer MTU.
FĂĽgen Sie den neuen Parameter driver_opts wie folgt hinzu:
<div class="highlight"><pre><span></span><code>networks:
<code>networks:
mailcow-network:
...
driver_opts:
com.docker.network.driver.mtu: 1450
...
</code></pre></div></p>
...</code></p>
<p><strong>4.2.</strong> Benutzer ohne ein IPv6-aktiviertes Netzwerk auf ihrem Hostsystem:</p>
<p><strong>Einschalten von IPv6. Endlich.</strong></p>
<p>Wenn Sie kein IPv6-fähiges Netzwerk auf Ihrem Host haben und Sie sich nicht um ein besseres Internet kümmern (hehe), ist es empfehlenswert, IPv6 für das mailcow-Netzwerk zu <a href="../../post_installation/firststeps-disable_ipv6/">deaktivieren</a>, um unvorhergesehene Probleme zu vermeiden.</p>
<p><strong>5.</strong> LAden Sie die Images herunter und fĂĽhren Sie die Compose-Datei aus. Der Parameter <code>-d</code> wird mailcow: dockerized starten:
<div class="highlight"><pre><span></span><code>docker-compose pull
docker-compose up -d
</code></pre></div></p>
<code>docker-compose pull
docker-compose up -d</code></p>
<p>Geschafft!</p>
<p>Sie können nun auf <strong>https://${MAILCOW_HOSTNAME}</strong> mit den Standard-Zugangsdaten <code>admin</code> + Passwort <code>moohoo</code> zugreifen.</p>
<div class="admonition info">
@ -2579,7 +2578,7 @@ docker-compose up -d
<script id="__config" type="application/json">{"base": "../../..", "features": ["navigation.top", "navigation.tracking"], "search": "../../../assets/javascripts/workers/search.2a1c317c.min.js", "translations": {"clipboard.copied": "In Zwischenablage kopiert", "clipboard.copy": "In Zwischenablage kopieren", "search.config.lang": "de", "search.config.pipeline": "trimmer, stopWordFilter", "search.config.separator": "[\\s\\-]+", "search.placeholder": "Suche", "search.result.more.one": "1 weiteres Suchergebnis auf dieser Seite", "search.result.more.other": "# weitere Suchergebnisse auf dieser Seite", "search.result.none": "Keine Suchergebnisse", "search.result.one": "1 Suchergebnis", "search.result.other": "# Suchergebnisse", "search.result.placeholder": "Suchbegriff eingeben", "search.result.term.missing": "Es fehlt", "select.version.title": "Version ausw\u00e4hlen"}}</script>
<script src="../../../assets/javascripts/bundle.748e2769.min.js"></script>
<script src="../../../assets/javascripts/bundle.c2e1ee47.min.js"></script>
<script src="../../../assets/javascripts/client.js"></script>

Datei anzeigen

@ -11,7 +11,7 @@
<link rel="canonical" href="https://mailcow.github.io/mailcow-dockerized-docs/de/i_u_m/i_u_m_migration/">
<link rel="icon" href="../../../assets/images/favicon.png">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.11">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.14">
@ -19,10 +19,10 @@
<link rel="stylesheet" href="../../../assets/stylesheets/main.8c5ef100.min.css">
<link rel="stylesheet" href="../../../assets/stylesheets/main.3de6f41f.min.css">
<link rel="stylesheet" href="../../../assets/stylesheets/palette.9647289d.min.css">
<link rel="stylesheet" href="../../../assets/stylesheets/palette.cc9b2e1e.min.css">
@ -66,6 +66,11 @@
<label class="md-overlay" for="__drawer"></label>
<div data-md-component="skip">
<a href="#nachdem-der-installationsprozess-abgeschlossen-ist-mussen-sie-den-dienst-aktivieren-und-sicherstellen-dass-er-gestartet-ist-z-b-centos-7" class="md-skip">
Zum Inhalt
</a>
</div>
<div data-md-component="announce">
@ -390,6 +395,8 @@
<input class="md-nav__toggle md-toggle" data-md-toggle="toc" type="checkbox" id="__toc">
<a href="./" class="md-nav__link md-nav__link--active">
Migration
@ -2354,6 +2361,8 @@
</nav>
</div>
@ -2371,8 +2380,6 @@
<h1>Migration</h1>
<div class="admonition warning">
<p class="admonition-title">Warning</p>
<p>Diese Anleitung geht davon aus, dass Sie beabsichtigen, einen bestehenden Mailcow-Server (Quelle) auf einen brandneuen, leeren Server (Ziel) zu migrieren. Sie kümmert sich nicht um die Erhaltung bestehender Daten auf dem Zielserver und löscht alles innerhalb von <code>/var/lib/docker/volumes</code> und somit alle Docker-Volumes, die Sie bereits eingerichtet haben.</p>
@ -2385,45 +2392,37 @@
Installieren Sie <a href="https://docs.docker.com/engine/installation/linux/">Docker</a> und <a href="https://docs.docker.com/compose/install/">Docker Compose</a> auf Ihrem neuen Server.</p>
<p>Schnelle Installation fĂĽr die meisten Betriebssysteme:</p>
<ul>
<li>
<p>Docker
<div class="highlight"><pre><span></span><code>curl -sSL https://get.docker.com/ | CHANNEL=stable sh
# Nachdem der Installationsprozess abgeschlossen ist, mĂĽssen Sie den Dienst aktivieren und sicherstellen, dass er gestartet ist (z. B. CentOS 7)
systemctl enable docker.service
</code></pre></div></p>
</li>
<li>
<p>docker-compose
<div class="highlight"><pre><span></span><code>curl -L https://github.com/docker/compose/releases/download/$(curl -Ls https://www.servercow.de/docker-compose/latest.php)/docker-compose-$(uname -s)-$(uname -m) &gt; /usr/local/bin/docker-compose
chmod +x /usr/local/bin/docker-compose
</code></pre></div></p>
</li>
<li>Docker
```
curl -sSL <a href="https://get.docker.com/">https://get.docker.com/</a> | CHANNEL=stable sh</li>
</ul>
<h1 id="nachdem-der-installationsprozess-abgeschlossen-ist-mussen-sie-den-dienst-aktivieren-und-sicherstellen-dass-er-gestartet-ist-z-b-centos-7">Nachdem der Installationsprozess abgeschlossen ist, mĂĽssen Sie den Dienst aktivieren und sicherstellen, dass er gestartet ist (z. B. CentOS 7)<a class="headerlink" href="#nachdem-der-installationsprozess-abgeschlossen-ist-mussen-sie-den-dienst-aktivieren-und-sicherstellen-dass-er-gestartet-ist-z-b-centos-7" title="Permanent link">&para;</a></h1>
<p>systemctl enable docker.service
```</p>
<ul>
<li>docker-compose
<code>curl -L https://github.com/docker/compose/releases/download/$(curl -Ls https://www.servercow.de/docker-compose/latest.php)/docker-compose-$(uname -s)-$(uname -m) &gt; /usr/local/bin/docker-compose
chmod +x /usr/local/bin/docker-compose</code></li>
</ul>
<p>Bitte verwenden Sie die neueste verfĂĽgbare Docker-Engine und nicht die Engine, die mit Ihrem Distros-Repository ausgeliefert wird.</p>
<p><strong>2.</strong> Stoppen Sie Docker und stellen Sie sicher, dass Docker gestoppt wurde:
<div class="highlight"><pre><span></span><code>systemctl stop docker.service
systemctl status docker.service
</code></pre></div></p>
<code>systemctl stop docker.service
systemctl status docker.service</code></p>
<p><strong>3.</strong> Führen Sie die folgenden Befehle auf dem Quellcomputer aus (achten Sie darauf, die abschließenden Schrägstriche im ersten Pfadparameter wie unten gezeigt hinzuzufügen!) - <strong>WARNUNG: Dieser Befehl löscht alles, was bereits unter <code>/var/lib/docker/volumes</code> auf dem Zielrechner existiert</strong>:
<div class="highlight"><pre><span></span><code>rsync -aHhP --numeric-ids --delete /opt/mailcow-dockerized/ root@target-machine.example.com:/opt/mailcow-dockerized
rsync -aHhP --numeric-ids --delete /var/lib/docker/volumes/ root@target-machine.example.com:/var/lib/docker/volumes
</code></pre></div></p>
<code>rsync -aHhP --numeric-ids --delete /opt/mailcow-dockerized/ root@target-machine.example.com:/opt/mailcow-dockerized
rsync -aHhP --numeric-ids --delete /var/lib/docker/volumes/ root@target-machine.example.com:/var/lib/docker/volumes</code></p>
<p><strong>4.</strong> Schalten Sie mailcow ab und stoppen Sie Docker auf dem Quellrechner.
<div class="highlight"><pre><span></span><code>cd /opt/mailcow-dockerized
<code>cd /opt/mailcow-dockerized
docker-compose herunterfahren
systemctl stop docker.service
</code></pre></div></p>
systemctl stop docker.service</code></p>
<p>**Wiederholen Sie Schritt 3 mit denselben Befehlen. Dies wird viel schneller gehen als beim ersten Mal.</p>
<p><strong>6.</strong> Wechseln Sie auf den Zielrechner und starten Sie Docker.
<div class="highlight"><pre><span></span><code>systemctl start docker.service
</code></pre></div></p>
<code>systemctl start docker.service</code></p>
<p><strong>7.</strong> Ziehen Sie nun die mailcow Docker-Images auf den Zielrechner.
<div class="highlight"><pre><span></span><code>cd /opt/mailcow-dockerized
docker-compose pull
</code></pre></div></p>
<code>cd /opt/mailcow-dockerized
docker-compose pull</code></p>
<p><strong>8.</strong> Starten Sie den gesamten mailcow-Stack und alles sollte fertig sein!
<div class="highlight"><pre><span></span><code>docker-compose up -d
</code></pre></div></p>
<code>docker-compose up -d</code></p>
<p><strong>9.</strong> Zum Schluss ändern Sie Ihre DNS-Einstellungen so, dass sie auf den Zielserver zeigen.</p>
<hr>
@ -2544,7 +2543,7 @@ docker-compose pull
<script id="__config" type="application/json">{"base": "../../..", "features": ["navigation.top", "navigation.tracking"], "search": "../../../assets/javascripts/workers/search.2a1c317c.min.js", "translations": {"clipboard.copied": "In Zwischenablage kopiert", "clipboard.copy": "In Zwischenablage kopieren", "search.config.lang": "de", "search.config.pipeline": "trimmer, stopWordFilter", "search.config.separator": "[\\s\\-]+", "search.placeholder": "Suche", "search.result.more.one": "1 weiteres Suchergebnis auf dieser Seite", "search.result.more.other": "# weitere Suchergebnisse auf dieser Seite", "search.result.none": "Keine Suchergebnisse", "search.result.one": "1 Suchergebnis", "search.result.other": "# Suchergebnisse", "search.result.placeholder": "Suchbegriff eingeben", "search.result.term.missing": "Es fehlt", "select.version.title": "Version ausw\u00e4hlen"}}</script>
<script src="../../../assets/javascripts/bundle.748e2769.min.js"></script>
<script src="../../../assets/javascripts/bundle.c2e1ee47.min.js"></script>
<script src="../../../assets/javascripts/client.js"></script>

Datei anzeigen

@ -11,7 +11,7 @@
<link rel="canonical" href="https://mailcow.github.io/mailcow-dockerized-docs/de/i_u_m/i_u_m_update/">
<link rel="icon" href="../../../assets/images/favicon.png">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.11">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.14">
@ -19,10 +19,10 @@
<link rel="stylesheet" href="../../../assets/stylesheets/main.8c5ef100.min.css">
<link rel="stylesheet" href="../../../assets/stylesheets/main.3de6f41f.min.css">
<link rel="stylesheet" href="../../../assets/stylesheets/palette.9647289d.min.css">
<link rel="stylesheet" href="../../../assets/stylesheets/palette.cc9b2e1e.min.css">
@ -419,6 +419,82 @@
</li>
</ul>
</nav>
</li>
<li class="md-nav__item">
<a href="#optionen-konnen-kombiniert-werden" class="md-nav__link">
Optionen können kombiniert werden
</a>
</li>
<li class="md-nav__item">
<a href="#-pruft-auf-updates-und-zeigt-anderungen-an" class="md-nav__link">
- PrĂĽft auf Updates und zeigt Ă„nderungen an
</a>
</li>
<li class="md-nav__item">
<a href="#versuchen-sie-nicht-docker-compose-zu-aktualisieren-stellen-sie-sicher-dass-sie-die-neueste-verfugbare-version-von-docker-compose-verwenden" class="md-nav__link">
Versuchen Sie nicht, docker-compose zu aktualisieren, stellen Sie sicher, dass Sie die neueste verfĂĽgbare Version von docker-compose verwenden
</a>
</li>
<li class="md-nav__item">
<a href="#-starten-sie-mailcow-nicht-nachdem-sie-ein-update-durchgefuhrt-haben" class="md-nav__link">
- Starten Sie mailcow nicht, nachdem Sie ein Update durchgefĂĽhrt haben
</a>
</li>
<li class="md-nav__item">
<a href="#-uberspringt-den-icmp-check-auf-die-offentlichen-dns-resolver-bitte-nur-nutzen-wenn-keinerlei-icmp-verbindungen-von-und-zur-mailcow-erlaubt-sind" class="md-nav__link">
- Überspringt den ICMP Check auf die öffentlichen DNS Resolver (Bitte nur nutzen, wenn keinerlei ICMP Verbindungen von und zur mailcow erlaubt sind)
</a>
</li>
<li class="md-nav__item">
<a href="#-erzwinge-update-unbeaufsichtigt-aber-nicht-unterstutzt-benutzung-auf-eigenes-risiko" class="md-nav__link">
- Erzwinge Update (unbeaufsichtigt, aber nicht unterstĂĽtzt, Benutzung auf eigenes Risiko)
</a>
</li>
<li class="md-nav__item">
<a href="#-garbage-collector-ausfuhren-um-alte-image-tags-zu-bereinigen-und-beenden" class="md-nav__link">
- Garbage Collector ausfĂĽhren, um alte Image-Tags zu bereinigen und beenden
</a>
</li>
<li class="md-nav__item">
<a href="#-update-mit-der-merge-strategie-option-ours-statt-theirs" class="md-nav__link">
- Update mit der Merge-Strategie-Option "ours" statt "theirs"
</a>
</li>
<li class="md-nav__item">
<a href="#dies-wird-konflikte-beim-zusammenfuhren-zugunsten-ihrer-lokalen-anderungen-losen-und-sollte-vermieden-werden-lokale-anderungen-werden-immer-beibehalten-es-sei-denn-wir-haben-auch-die-datei-xy-geandert" class="md-nav__link">
Dies wird Konflikte beim Zusammenführen zugunsten Ihrer lokalen Änderungen lösen und sollte vermieden werden. Lokale Änderungen werden immer beibehalten, es sei denn, wir haben auch die Datei XY geändert.
</a>
</li>
<li class="md-nav__item">
<a href="#-nicht-aktualisieren-nur-holen-von-docker-images" class="md-nav__link">
- Nicht aktualisieren, nur holen von Docker Images
</a>
<nav class="md-nav" aria-label="- Nicht aktualisieren, nur holen von Docker Images">
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="#ich-habe-vergessen-was-ich-vor-dem-ausfuhren-von-updatesh-geandert-habe" class="md-nav__link">
Ich habe vergessen, was ich vor dem Ausführen von update.sh geändert habe.
@ -433,6 +509,19 @@
</li>
</ul>
</nav>
</li>
<li class="md-nav__item">
<a href="#ersetzen-sie-die-commit-id-22cd00b5e28893ef9ddef3c2b5436453cc5223ab-durch-ihre-id" class="md-nav__link">
Ersetzen Sie die Commit-ID 22cd00b5e28893ef9ddef3c2b5436453cc5223ab durch Ihre ID
</a>
<nav class="md-nav" aria-label="Ersetzen Sie die Commit-ID 22cd00b5e28893ef9ddef3c2b5436453cc5223ab durch Ihre ID">
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="#hooks" class="md-nav__link">
Hooks
@ -440,16 +529,16 @@
</li>
</ul>
</nav>
</li>
<li class="md-nav__item">
<li class="md-nav__item">
<a href="#update-zyklus" class="md-nav__link">
Update-Zyklus
</a>
</li>
</ul>
</nav>
</li>
</ul>
@ -2451,6 +2540,82 @@
</li>
</ul>
</nav>
</li>
<li class="md-nav__item">
<a href="#optionen-konnen-kombiniert-werden" class="md-nav__link">
Optionen können kombiniert werden
</a>
</li>
<li class="md-nav__item">
<a href="#-pruft-auf-updates-und-zeigt-anderungen-an" class="md-nav__link">
- PrĂĽft auf Updates und zeigt Ă„nderungen an
</a>
</li>
<li class="md-nav__item">
<a href="#versuchen-sie-nicht-docker-compose-zu-aktualisieren-stellen-sie-sicher-dass-sie-die-neueste-verfugbare-version-von-docker-compose-verwenden" class="md-nav__link">
Versuchen Sie nicht, docker-compose zu aktualisieren, stellen Sie sicher, dass Sie die neueste verfĂĽgbare Version von docker-compose verwenden
</a>
</li>
<li class="md-nav__item">
<a href="#-starten-sie-mailcow-nicht-nachdem-sie-ein-update-durchgefuhrt-haben" class="md-nav__link">
- Starten Sie mailcow nicht, nachdem Sie ein Update durchgefĂĽhrt haben
</a>
</li>
<li class="md-nav__item">
<a href="#-uberspringt-den-icmp-check-auf-die-offentlichen-dns-resolver-bitte-nur-nutzen-wenn-keinerlei-icmp-verbindungen-von-und-zur-mailcow-erlaubt-sind" class="md-nav__link">
- Überspringt den ICMP Check auf die öffentlichen DNS Resolver (Bitte nur nutzen, wenn keinerlei ICMP Verbindungen von und zur mailcow erlaubt sind)
</a>
</li>
<li class="md-nav__item">
<a href="#-erzwinge-update-unbeaufsichtigt-aber-nicht-unterstutzt-benutzung-auf-eigenes-risiko" class="md-nav__link">
- Erzwinge Update (unbeaufsichtigt, aber nicht unterstĂĽtzt, Benutzung auf eigenes Risiko)
</a>
</li>
<li class="md-nav__item">
<a href="#-garbage-collector-ausfuhren-um-alte-image-tags-zu-bereinigen-und-beenden" class="md-nav__link">
- Garbage Collector ausfĂĽhren, um alte Image-Tags zu bereinigen und beenden
</a>
</li>
<li class="md-nav__item">
<a href="#-update-mit-der-merge-strategie-option-ours-statt-theirs" class="md-nav__link">
- Update mit der Merge-Strategie-Option "ours" statt "theirs"
</a>
</li>
<li class="md-nav__item">
<a href="#dies-wird-konflikte-beim-zusammenfuhren-zugunsten-ihrer-lokalen-anderungen-losen-und-sollte-vermieden-werden-lokale-anderungen-werden-immer-beibehalten-es-sei-denn-wir-haben-auch-die-datei-xy-geandert" class="md-nav__link">
Dies wird Konflikte beim Zusammenführen zugunsten Ihrer lokalen Änderungen lösen und sollte vermieden werden. Lokale Änderungen werden immer beibehalten, es sei denn, wir haben auch die Datei XY geändert.
</a>
</li>
<li class="md-nav__item">
<a href="#-nicht-aktualisieren-nur-holen-von-docker-images" class="md-nav__link">
- Nicht aktualisieren, nur holen von Docker Images
</a>
<nav class="md-nav" aria-label="- Nicht aktualisieren, nur holen von Docker Images">
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="#ich-habe-vergessen-was-ich-vor-dem-ausfuhren-von-updatesh-geandert-habe" class="md-nav__link">
Ich habe vergessen, was ich vor dem Ausführen von update.sh geändert habe.
@ -2465,6 +2630,19 @@
</li>
</ul>
</nav>
</li>
<li class="md-nav__item">
<a href="#ersetzen-sie-die-commit-id-22cd00b5e28893ef9ddef3c2b5436453cc5223ab-durch-ihre-id" class="md-nav__link">
Ersetzen Sie die Commit-ID 22cd00b5e28893ef9ddef3c2b5436453cc5223ab durch Ihre ID
</a>
<nav class="md-nav" aria-label="Ersetzen Sie die Commit-ID 22cd00b5e28893ef9ddef3c2b5436453cc5223ab durch Ihre ID">
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="#hooks" class="md-nav__link">
Hooks
@ -2472,16 +2650,16 @@
</li>
</ul>
</nav>
</li>
<li class="md-nav__item">
<li class="md-nav__item">
<a href="#update-zyklus" class="md-nav__link">
Update-Zyklus
</a>
</li>
</ul>
</nav>
</li>
</ul>
@ -2502,60 +2680,50 @@
<h1>Update</h1>
<h2 id="automatische-aktualisierung">Automatische Aktualisierung<a class="headerlink" href="#automatische-aktualisierung" title="Permanent link">&para;</a></h2>
<p>Ein Update-Skript in Ihrem mailcow-dockerized Verzeichnis kĂĽmmert sich um Updates.</p>
<p>Aber benutzen Sie es mit Bedacht! Wenn Sie denken, dass Sie viele Ă„nderungen am mailcow-Code vorgenommen haben, sollten Sie die manuelle Update-Anleitung unten verwenden.</p>
<p>FĂĽhren sie das Update-Skript aus:
<div class="highlight"><pre><span></span><code>./update.sh
</code></pre></div></p>
<code>./update.sh</code></p>
<p>Wenn es nötig ist, wird es Sie fragen, wie Sie fortfahren möchten.
Merge-Fehler werden gemeldet.
Einige kleinere Konflikte werden automatisch korrigiert (zugunsten des mailcow: dockerized repository code).</p>
<h3 id="optionen">Optionen<a class="headerlink" href="#optionen" title="Permanent link">&para;</a></h3>
<div class="highlight"><pre><span></span><code># Optionen können kombiniert werden
# - PrĂĽft auf Updates und zeigt Ă„nderungen an
./update.sh --check
# Versuchen Sie nicht, docker-compose zu aktualisieren, **stellen Sie sicher, dass Sie die neueste verfĂĽgbare Version von docker-compose verwenden**
./update.sh --no-update-compose
# - Starten Sie mailcow nicht, nachdem Sie ein Update durchgefĂĽhrt haben
./update.sh --skip-start
# - Überspringt den ICMP Check auf die öffentlichen DNS Resolver (Bitte nur nutzen, wenn keinerlei ICMP Verbindungen von und zur mailcow erlaubt sind)
./update.sh --skip-ping-check
# - Erzwinge Update (unbeaufsichtigt, aber nicht unterstĂĽtzt, Benutzung auf eigenes Risiko)
./update.sh --force
# - Garbage Collector ausfĂĽhren, um alte Image-Tags zu bereinigen und beenden
./update.sh --gc
# - Update mit der Merge-Strategie-Option &quot;ours&quot; statt &quot;theirs&quot;
# Dies wird **Konflikte** beim Zusammenführen zugunsten Ihrer lokalen Änderungen lösen und sollte vermieden werden. Lokale Änderungen werden immer beibehalten, es sei denn, wir haben auch die Datei XY geändert.
./update.sh --ours
# - Nicht aktualisieren, nur holen von Docker Images
./update.sh --prefetch
</code></pre></div>
<p>```</p>
<h1 id="optionen-konnen-kombiniert-werden">Optionen können kombiniert werden<a class="headerlink" href="#optionen-konnen-kombiniert-werden" title="Permanent link">&para;</a></h1>
<h1 id="-pruft-auf-updates-und-zeigt-anderungen-an">- PrĂĽft auf Updates und zeigt Ă„nderungen an<a class="headerlink" href="#-pruft-auf-updates-und-zeigt-anderungen-an" title="Permanent link">&para;</a></h1>
<p>./update.sh --check</p>
<h1 id="versuchen-sie-nicht-docker-compose-zu-aktualisieren-stellen-sie-sicher-dass-sie-die-neueste-verfugbare-version-von-docker-compose-verwenden">Versuchen Sie nicht, docker-compose zu aktualisieren, <strong>stellen Sie sicher, dass Sie die neueste verfĂĽgbare Version von docker-compose verwenden</strong><a class="headerlink" href="#versuchen-sie-nicht-docker-compose-zu-aktualisieren-stellen-sie-sicher-dass-sie-die-neueste-verfugbare-version-von-docker-compose-verwenden" title="Permanent link">&para;</a></h1>
<p>./update.sh --no-update-compose</p>
<h1 id="-starten-sie-mailcow-nicht-nachdem-sie-ein-update-durchgefuhrt-haben">- Starten Sie mailcow nicht, nachdem Sie ein Update durchgefĂĽhrt haben<a class="headerlink" href="#-starten-sie-mailcow-nicht-nachdem-sie-ein-update-durchgefuhrt-haben" title="Permanent link">&para;</a></h1>
<p>./update.sh --skip-start</p>
<h1 id="-uberspringt-den-icmp-check-auf-die-offentlichen-dns-resolver-bitte-nur-nutzen-wenn-keinerlei-icmp-verbindungen-von-und-zur-mailcow-erlaubt-sind">- Überspringt den ICMP Check auf die öffentlichen DNS Resolver (Bitte nur nutzen, wenn keinerlei ICMP Verbindungen von und zur mailcow erlaubt sind)<a class="headerlink" href="#-uberspringt-den-icmp-check-auf-die-offentlichen-dns-resolver-bitte-nur-nutzen-wenn-keinerlei-icmp-verbindungen-von-und-zur-mailcow-erlaubt-sind" title="Permanent link">&para;</a></h1>
<p>./update.sh --skip-ping-check</p>
<h1 id="-erzwinge-update-unbeaufsichtigt-aber-nicht-unterstutzt-benutzung-auf-eigenes-risiko">- Erzwinge Update (unbeaufsichtigt, aber nicht unterstĂĽtzt, Benutzung auf eigenes Risiko)<a class="headerlink" href="#-erzwinge-update-unbeaufsichtigt-aber-nicht-unterstutzt-benutzung-auf-eigenes-risiko" title="Permanent link">&para;</a></h1>
<p>./update.sh --force</p>
<h1 id="-garbage-collector-ausfuhren-um-alte-image-tags-zu-bereinigen-und-beenden">- Garbage Collector ausfĂĽhren, um alte Image-Tags zu bereinigen und beenden<a class="headerlink" href="#-garbage-collector-ausfuhren-um-alte-image-tags-zu-bereinigen-und-beenden" title="Permanent link">&para;</a></h1>
<p>./update.sh --gc</p>
<h1 id="-update-mit-der-merge-strategie-option-ours-statt-theirs">- Update mit der Merge-Strategie-Option "ours" statt "theirs"<a class="headerlink" href="#-update-mit-der-merge-strategie-option-ours-statt-theirs" title="Permanent link">&para;</a></h1>
<h1 id="dies-wird-konflikte-beim-zusammenfuhren-zugunsten-ihrer-lokalen-anderungen-losen-und-sollte-vermieden-werden-lokale-anderungen-werden-immer-beibehalten-es-sei-denn-wir-haben-auch-die-datei-xy-geandert">Dies wird <strong>Konflikte</strong> beim Zusammenführen zugunsten Ihrer lokalen Änderungen lösen und sollte vermieden werden. Lokale Änderungen werden immer beibehalten, es sei denn, wir haben auch die Datei XY geändert.<a class="headerlink" href="#dies-wird-konflikte-beim-zusammenfuhren-zugunsten-ihrer-lokalen-anderungen-losen-und-sollte-vermieden-werden-lokale-anderungen-werden-immer-beibehalten-es-sei-denn-wir-haben-auch-die-datei-xy-geandert" title="Permanent link">&para;</a></h1>
<p>./update.sh --ours</p>
<h1 id="-nicht-aktualisieren-nur-holen-von-docker-images">- Nicht aktualisieren, nur holen von Docker Images<a class="headerlink" href="#-nicht-aktualisieren-nur-holen-von-docker-images" title="Permanent link">&para;</a></h1>
<p>./update.sh --prefetch
```</p>
<h3 id="ich-habe-vergessen-was-ich-vor-dem-ausfuhren-von-updatesh-geandert-habe">Ich habe vergessen, was ich vor dem Ausführen von update.sh geändert habe.<a class="headerlink" href="#ich-habe-vergessen-was-ich-vor-dem-ausfuhren-von-updatesh-geandert-habe" title="Permanent link">&para;</a></h3>
<p>Siehe <code>git log --pretty=oneline | grep -i "before update"</code>, Sie werden eine Ausgabe ähnlich dieser haben:</p>
<div class="highlight"><pre><span></span><code>22cd00b5e28893ef9ddef3c2b5436453cc5223ab Before update on 2020-09-28_19_25_45
dacd4fb9b51e9e1c8a37d84485b92ffaf6c59353 Before update on 2020-08-07_13_31_31
</code></pre></div>
<p><code>22cd00b5e28893ef9ddef3c2b5436453cc5223ab Before update on 2020-09-28_19_25_45
dacd4fb9b51e9e1c8a37d84485b92ffaf6c59353 Before update on 2020-08-07_13_31_31</code></p>
<p>Führen Sie <code>git diff 22cd00b5e28893ef9ddef3c2b5436453cc5223ab</code> aus, um zu sehen, was sich geändert hat.</p>
<h3 id="kann-ich-ein-rollback-durchfuhren">Kann ich ein Rollback durchfĂĽhren?<a class="headerlink" href="#kann-ich-ein-rollback-durchfuhren" title="Permanent link">&para;</a></h3>
<p>Ja.</p>
<p>Siehe das obige Thema, anstelle eines Diffs fĂĽhren Sie checkout aus:</p>
<div class="highlight"><pre><span></span><code>docker-compose down
# Ersetzen Sie die Commit-ID 22cd00b5e28893ef9ddef3c2b5436453cc5223ab durch Ihre ID
git checkout 22cd00b5e28893ef9ddef3c2b5436453cc5223ab
<p>```
docker-compose down</p>
<h1 id="ersetzen-sie-die-commit-id-22cd00b5e28893ef9ddef3c2b5436453cc5223ab-durch-ihre-id">Ersetzen Sie die Commit-ID 22cd00b5e28893ef9ddef3c2b5436453cc5223ab durch Ihre ID<a class="headerlink" href="#ersetzen-sie-die-commit-id-22cd00b5e28893ef9ddef3c2b5436453cc5223ab-durch-ihre-id" title="Permanent link">&para;</a></h1>
<p>git checkout 22cd00b5e28893ef9ddef3c2b5436453cc5223ab
docker-compose pull
docker-compose up -d
</code></pre></div>
```</p>
<h3 id="hooks">Hooks<a class="headerlink" href="#hooks" title="Permanent link">&para;</a></h3>
<p>Sie können sich in den Update-Mechanismus einklinken, indem Sie Skripte namens <code>pre_commit_hook.sh</code> und <code>post_commit_hook.sh</code> zu Ihrem mailcows-Root-Verzeichnis hinzufügen. Siehe <a href="../../manual-guides/u_e-update-hooks/">hier</a> für weitere Details.</p>
<h2 id="update-zyklus">Update-Zyklus<a class="headerlink" href="#update-zyklus" title="Permanent link">&para;</a></h2>
@ -2683,7 +2851,7 @@ docker-compose up -d
<script id="__config" type="application/json">{"base": "../../..", "features": ["navigation.top", "navigation.tracking"], "search": "../../../assets/javascripts/workers/search.2a1c317c.min.js", "translations": {"clipboard.copied": "In Zwischenablage kopiert", "clipboard.copy": "In Zwischenablage kopieren", "search.config.lang": "de", "search.config.pipeline": "trimmer, stopWordFilter", "search.config.separator": "[\\s\\-]+", "search.placeholder": "Suche", "search.result.more.one": "1 weiteres Suchergebnis auf dieser Seite", "search.result.more.other": "# weitere Suchergebnisse auf dieser Seite", "search.result.none": "Keine Suchergebnisse", "search.result.one": "1 Suchergebnis", "search.result.other": "# Suchergebnisse", "search.result.placeholder": "Suchbegriff eingeben", "search.result.term.missing": "Es fehlt", "select.version.title": "Version ausw\u00e4hlen"}}</script>
<script src="../../../assets/javascripts/bundle.748e2769.min.js"></script>
<script src="../../../assets/javascripts/bundle.c2e1ee47.min.js"></script>
<script src="../../../assets/javascripts/client.js"></script>

Datei anzeigen

@ -11,7 +11,7 @@
<link rel="canonical" href="https://mailcow.github.io/mailcow-dockerized-docs/de/">
<link rel="icon" href="../assets/images/favicon.png">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.11">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.14">
@ -19,10 +19,10 @@
<link rel="stylesheet" href="../assets/stylesheets/main.8c5ef100.min.css">
<link rel="stylesheet" href="../assets/stylesheets/main.3de6f41f.min.css">
<link rel="stylesheet" href="../assets/stylesheets/palette.9647289d.min.css">
<link rel="stylesheet" href="../assets/stylesheets/palette.cc9b2e1e.min.css">
@ -2706,7 +2706,7 @@ Jeder Container repräsentiert eine einzelne Anwendung.</p>
<script id="__config" type="application/json">{"base": "..", "features": ["navigation.top", "navigation.tracking"], "search": "../assets/javascripts/workers/search.2a1c317c.min.js", "translations": {"clipboard.copied": "In Zwischenablage kopiert", "clipboard.copy": "In Zwischenablage kopieren", "search.config.lang": "de", "search.config.pipeline": "trimmer, stopWordFilter", "search.config.separator": "[\\s\\-]+", "search.placeholder": "Suche", "search.result.more.one": "1 weiteres Suchergebnis auf dieser Seite", "search.result.more.other": "# weitere Suchergebnisse auf dieser Seite", "search.result.none": "Keine Suchergebnisse", "search.result.one": "1 Suchergebnis", "search.result.other": "# Suchergebnisse", "search.result.placeholder": "Suchbegriff eingeben", "search.result.term.missing": "Es fehlt", "select.version.title": "Version ausw\u00e4hlen"}}</script>
<script src="../assets/javascripts/bundle.748e2769.min.js"></script>
<script src="../assets/javascripts/bundle.c2e1ee47.min.js"></script>
<script src="../assets/javascripts/client.js"></script>

Datei anzeigen

@ -11,7 +11,7 @@
<link rel="canonical" href="https://mailcow.github.io/mailcow-dockerized-docs/de/manual-guides/ClamAV/u_e-clamav-additional_dbs/">
<link rel="icon" href="../../../../assets/images/favicon.png">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.11">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.14">
@ -19,10 +19,10 @@
<link rel="stylesheet" href="../../../../assets/stylesheets/main.8c5ef100.min.css">
<link rel="stylesheet" href="../../../../assets/stylesheets/main.3de6f41f.min.css">
<link rel="stylesheet" href="../../../../assets/stylesheets/palette.9647289d.min.css">
<link rel="stylesheet" href="../../../../assets/stylesheets/palette.cc9b2e1e.min.css">
@ -2494,21 +2494,20 @@
<li>Sie brauchen <code>your_id</code> von den Downloadlinks. <strong>Diese sind pro User individuell</strong>.</li>
<li>
<p>FĂĽgen Sie diese wie folgt in die <code>data/conf/clamav/freshclam.conf</code> ein und ersetzen Sie den <code>your_id</code> Teil mit Ihrer ID:
<div class="highlight"><pre><span></span><code>DatabaseCustomURL https://www.securiteinfo.com/get/signatures/your_id/securiteinfo.hdb
<code>DatabaseCustomURL https://www.securiteinfo.com/get/signatures/your_id/securiteinfo.hdb
DatabaseCustomURL https://www.securiteinfo.com/get/signatures/your_id/securiteinfo.ign2
DatabaseCustomURL https://www.securiteinfo.com/get/signatures/your_id/javascript.ndb
DatabaseCustomURL https://www.securiteinfo.com/get/signatures/your_id/spam_marketing.ndb
DatabaseCustomURL https://www.securiteinfo.com/get/signatures/your_id/securiteinfohtml.hdb
DatabaseCustomURL https://www.securiteinfo.com/get/signatures/your_id/securiteinfoascii.hdb
DatabaseCustomURL https://www.securiteinfo.com/get/signatures/your_id/securiteinfopdf.hdb
</code></pre></div></p>
DatabaseCustomURL https://www.securiteinfo.com/get/signatures/your_id/securiteinfopdf.hdb</code></p>
</li>
<li>
<p>Bei den kostenlosen SecuriteInfo Datenbanken ist die Download-Geschwindigkeit auf 300 kB/s begrenzt. Ändern Sie in <code>data/conf/clamav/freshclam.conf</code> den Standardwert <code>ReceiveTimeout 20</code> auf <code>ReceiveTimeout 90</code> (Zeitangabe in Sekunden), da ansonsten einige der Datenbank-Downloads aufgrund ihrer Größe abbrechen können.</p>
</li>
<li>
<p>Passen Sie <code>data/conf/clamav/clamd.conf</code> mit den folgenden Einstellungen an:
<div class="highlight"><pre><span></span><code>DetectPUA yes
<code>DetectPUA yes
ExcludePUA PUA.Win.Packer
ExcludePUA PUA.Win.Trojan.Packed
ExcludePUA PUA.Win.Trojan.Molebox
@ -2520,12 +2519,11 @@ MaxRecursion 40
MaxEmbeddedPE 100M
MaxHTMLNormalize 50M
MaxScriptNormalize 50M
MaxZipTypeRcg 50M
</code></pre></div></p>
MaxZipTypeRcg 50M</code></p>
</li>
<li>Starten Sie den ClamAV Container neu:
<div class="highlight"><pre><span></span><code>docker-compose restart clamd-mailcow
</code></pre></div></li>
<code>bash
docker-compose restart clamd-mailcow</code></li>
</ol>
<p><strong>Bitte beachten Sie</strong>:</p>
<ul>
@ -2537,14 +2535,13 @@ MaxZipTypeRcg 50M
<h3 id="interserver-datenbanken-aktivieren">InterServer Datenbanken aktivieren<a class="headerlink" href="#interserver-datenbanken-aktivieren" title="Permanent link">&para;</a></h3>
<ol>
<li>FĂĽgen Sie folgendes in <code>data/conf/clamav/freshclam.conf</code> ein:
<div class="highlight"><pre><span></span><code>DatabaseCustomURL http://sigs.interserver.net/interserver256.hdb
<code>DatabaseCustomURL http://sigs.interserver.net/interserver256.hdb
DatabaseCustomURL http://sigs.interserver.net/interservertopline.db
DatabaseCustomURL http://sigs.interserver.net/shell.ldb
DatabaseCustomURL http://sigs.interserver.net/whitelist.fp
</code></pre></div></li>
DatabaseCustomURL http://sigs.interserver.net/whitelist.fp</code></li>
<li>Starten Sie den ClamAV Container neu:
<div class="highlight"><pre><span></span><code>docker-compose restart clamd-mailcow
</code></pre></div></li>
<code>bash
docker-compose restart clamd-mailcow</code></li>
</ol>
<hr>
@ -2665,7 +2662,7 @@ DatabaseCustomURL http://sigs.interserver.net/whitelist.fp
<script id="__config" type="application/json">{"base": "../../../..", "features": ["navigation.top", "navigation.tracking"], "search": "../../../../assets/javascripts/workers/search.2a1c317c.min.js", "translations": {"clipboard.copied": "In Zwischenablage kopiert", "clipboard.copy": "In Zwischenablage kopieren", "search.config.lang": "de", "search.config.pipeline": "trimmer, stopWordFilter", "search.config.separator": "[\\s\\-]+", "search.placeholder": "Suche", "search.result.more.one": "1 weiteres Suchergebnis auf dieser Seite", "search.result.more.other": "# weitere Suchergebnisse auf dieser Seite", "search.result.none": "Keine Suchergebnisse", "search.result.one": "1 Suchergebnis", "search.result.other": "# Suchergebnisse", "search.result.placeholder": "Suchbegriff eingeben", "search.result.term.missing": "Es fehlt", "select.version.title": "Version ausw\u00e4hlen"}}</script>
<script src="../../../../assets/javascripts/bundle.748e2769.min.js"></script>
<script src="../../../../assets/javascripts/bundle.c2e1ee47.min.js"></script>
<script src="../../../../assets/javascripts/client.js"></script>

Datei anzeigen

@ -11,7 +11,7 @@
<link rel="canonical" href="https://mailcow.github.io/mailcow-dockerized-docs/de/manual-guides/ClamAV/u_e-clamav-whitelist/">
<link rel="icon" href="../../../../assets/images/favicon.png">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.11">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.14">
@ -19,10 +19,10 @@
<link rel="stylesheet" href="../../../../assets/stylesheets/main.8c5ef100.min.css">
<link rel="stylesheet" href="../../../../assets/stylesheets/main.3de6f41f.min.css">
<link rel="stylesheet" href="../../../../assets/stylesheets/palette.9647289d.min.css">
<link rel="stylesheet" href="../../../../assets/stylesheets/palette.cc9b2e1e.min.css">
@ -1870,6 +1870,13 @@
Whitelist fĂĽr bestimmte ClamAV-Signaturen
</a>
</li>
<li class="md-nav__item">
<a href="#docker-compose-exec-redis-mailcow-binsh" class="md-nav__link">
docker-compose exec redis-mailcow /bin/sh
</a>
</li>
</ul>
@ -2402,6 +2409,13 @@
Whitelist fĂĽr bestimmte ClamAV-Signaturen
</a>
</li>
<li class="md-nav__item">
<a href="#docker-compose-exec-redis-mailcow-binsh" class="md-nav__link">
docker-compose exec redis-mailcow /bin/sh
</a>
</li>
</ul>
@ -2422,26 +2436,25 @@
<h1>Whitelist</h1>
<h2 id="whitelist-fur-bestimmte-clamav-signaturen">Whitelist fĂĽr bestimmte ClamAV-Signaturen<a class="headerlink" href="#whitelist-fur-bestimmte-clamav-signaturen" title="Permanent link">&para;</a></h2>
<p>Es kann vorkommen, dass legitime (saubere) Mails von ClamAV blockiert werden (Rspamd markiert die Mail mit <code>VIRUS_FOUND</code>). So werden beispielsweise interaktive PDF-Formularanhänge standardmäßig blockiert, da der eingebettete Javascript-Code für schädliche Zwecke verwendet werden könnte. Überprüfen Sie dies anhand der clamd-Protokolle, z.B.:</p>
<div class="highlight"><pre><span></span><code>docker-compose logs clamd-mailcow <span class="p">|</span> grep <span class="s2">&quot;FOUND&quot;</span>
</code></pre></div>
<p><code>bash
docker-compose logs clamd-mailcow | grep "FOUND"</code></p>
<p>Diese Zeile bestätigt, dass ein solcher identifiziert wurde:</p>
<div class="highlight"><pre><span></span><code>clamd-mailcow_1 | Sat Sep 28 07:43:24 2019 -&gt; instream(local): PUA.Pdf.Trojan.EmbeddedJavaScript-1(e887d2ac324ce90750768b86b63d0749:363325) FOUND
</code></pre></div>
<p><code>text
clamd-mailcow_1 | Sat Sep 28 07:43:24 2019 -&gt; instream(local): PUA.Pdf.Trojan.EmbeddedJavaScript-1(e887d2ac324ce90750768b86b63d0749:363325) FOUND</code></p>
<p>Um diese spezielle Signatur auf die Whitelist zu setzen (und den Versand dieses Dateityps im Anhang zu ermöglichen), fügen Sie sie der ClamAV-Signatur-Whitelist-Datei hinzu:</p>
<div class="highlight"><pre><span></span><code><span class="nb">echo</span> <span class="s1">&#39;PUA.Pdf.Trojan.EmbeddedJavaScript-1&#39;</span> &gt;&gt; data/conf/clamav/whitelist.ign2
</code></pre></div>
<p><code>bash
echo 'PUA.Pdf.Trojan.EmbeddedJavaScript-1' &gt;&gt; data/conf/clamav/whitelist.ign2</code></p>
<p>Dann starten Sie den clamd-mailcow Service Container in der mailcow UI oder mit docker-compose neu:</p>
<div class="highlight"><pre><span></span><code>docker-compose restart clamd-mailcow
</code></pre></div>
<p><code>bash
docker-compose restart clamd-mailcow</code></p>
<p>Bereinigen Sie zwischengespeicherte ClamAV-Ergebnisse in Redis:</p>
<div class="highlight"><pre><span></span><code># docker-compose exec redis-mailcow /bin/sh
/data # redis-cli KEYS rs_cl* | xargs redis-cli DEL
<p>```</p>
<h1 id="docker-compose-exec-redis-mailcow-binsh">docker-compose exec redis-mailcow /bin/sh<a class="headerlink" href="#docker-compose-exec-redis-mailcow-binsh" title="Permanent link">&para;</a></h1>
<p>/data # redis-cli KEYS rs_cl* | xargs redis-cli DEL
/data # exit
</code></pre></div>
```</p>
<hr>
<div class="md-source-file">
@ -2561,7 +2574,7 @@
<script id="__config" type="application/json">{"base": "../../../..", "features": ["navigation.top", "navigation.tracking"], "search": "../../../../assets/javascripts/workers/search.2a1c317c.min.js", "translations": {"clipboard.copied": "In Zwischenablage kopiert", "clipboard.copy": "In Zwischenablage kopieren", "search.config.lang": "de", "search.config.pipeline": "trimmer, stopWordFilter", "search.config.separator": "[\\s\\-]+", "search.placeholder": "Suche", "search.result.more.one": "1 weiteres Suchergebnis auf dieser Seite", "search.result.more.other": "# weitere Suchergebnisse auf dieser Seite", "search.result.none": "Keine Suchergebnisse", "search.result.one": "1 Suchergebnis", "search.result.other": "# Suchergebnisse", "search.result.placeholder": "Suchbegriff eingeben", "search.result.term.missing": "Es fehlt", "select.version.title": "Version ausw\u00e4hlen"}}</script>
<script src="../../../../assets/javascripts/bundle.748e2769.min.js"></script>
<script src="../../../../assets/javascripts/bundle.c2e1ee47.min.js"></script>
<script src="../../../../assets/javascripts/client.js"></script>

Datei anzeigen

@ -11,7 +11,7 @@
<link rel="canonical" href="https://mailcow.github.io/mailcow-dockerized-docs/de/manual-guides/Docker/u_e-docker-cust_dockerfiles/">
<link rel="icon" href="../../../../assets/images/favicon.png">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.11">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.14">
@ -19,10 +19,10 @@
<link rel="stylesheet" href="../../../../assets/stylesheets/main.8c5ef100.min.css">
<link rel="stylesheet" href="../../../../assets/stylesheets/main.3de6f41f.min.css">
<link rel="stylesheet" href="../../../../assets/stylesheets/palette.9647289d.min.css">
<link rel="stylesheet" href="../../../../assets/stylesheets/palette.cc9b2e1e.min.css">
@ -2376,14 +2376,11 @@
<h1>Dockerfiles anpassen</h1>
<p>Sie mĂĽssen die Override-Datei mit den entsprechenden Build-Tags in den mailcow: dockerized Root-Ordner (d.h. <code>/opt/mailcow-dockerized</code>) kopieren:</p>
<div class="highlight"><pre><span></span><code>cp helper-scripts/docker-compose.override.yml.d/BUILD_FLAGS/docker-compose.override.yml docker-compose.override.yml
</code></pre></div>
<p><code>cp helper-scripts/docker-compose.override.yml.d/BUILD_FLAGS/docker-compose.override.yml docker-compose.override.yml</code></p>
<p>Nehmen Sie Ihre Ă„nderungen in <code>data/Dockerfiles/$service</code> vor und erstellen Sie das Image lokal:</p>
<div class="highlight"><pre><span></span><code>docker build data/Dockerfiles/service -t mailcow/$service
</code></pre></div>
<p><code>docker build data/Dockerfiles/service -t mailcow/$service</code></p>
<p>Nun werden die geänderten Container automatisch neu erstellt:</p>
<div class="highlight"><pre><span></span><code>docker-compose up -d
</code></pre></div>
<p><code>docker-compose up -d</code></p>
<hr>
<div class="md-source-file">
@ -2503,7 +2500,7 @@
<script id="__config" type="application/json">{"base": "../../../..", "features": ["navigation.top", "navigation.tracking"], "search": "../../../../assets/javascripts/workers/search.2a1c317c.min.js", "translations": {"clipboard.copied": "In Zwischenablage kopiert", "clipboard.copy": "In Zwischenablage kopieren", "search.config.lang": "de", "search.config.pipeline": "trimmer, stopWordFilter", "search.config.separator": "[\\s\\-]+", "search.placeholder": "Suche", "search.result.more.one": "1 weiteres Suchergebnis auf dieser Seite", "search.result.more.other": "# weitere Suchergebnisse auf dieser Seite", "search.result.none": "Keine Suchergebnisse", "search.result.one": "1 Suchergebnis", "search.result.other": "# Suchergebnisse", "search.result.placeholder": "Suchbegriff eingeben", "search.result.term.missing": "Es fehlt", "select.version.title": "Version ausw\u00e4hlen"}}</script>
<script src="../../../../assets/javascripts/bundle.748e2769.min.js"></script>
<script src="../../../../assets/javascripts/bundle.c2e1ee47.min.js"></script>
<script src="../../../../assets/javascripts/client.js"></script>

Datei anzeigen

@ -11,7 +11,7 @@
<link rel="canonical" href="https://mailcow.github.io/mailcow-dockerized-docs/de/manual-guides/Docker/u_e-docker-dc_bash_compl/">
<link rel="icon" href="../../../../assets/images/favicon.png">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.11">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.14">
@ -19,10 +19,10 @@
<link rel="stylesheet" href="../../../../assets/stylesheets/main.8c5ef100.min.css">
<link rel="stylesheet" href="../../../../assets/stylesheets/main.3de6f41f.min.css">
<link rel="stylesheet" href="../../../../assets/stylesheets/palette.9647289d.min.css">
<link rel="stylesheet" href="../../../../assets/stylesheets/palette.cc9b2e1e.min.css">
@ -2376,8 +2376,7 @@
<h1>Docker Compose Bash Completion</h1>
<p>Um eine schöne Bash-Vervollständigung in Ihren Containern zu erhalten, führen Sie einfach das Folgende aus:</p>
<div class="highlight"><pre><span></span><code>curl -L https://raw.githubusercontent.com/docker/compose/$(docker-compose version --short)/contrib/completion/bash/docker-compose -o /etc/bash_completion.d/docker-compose
</code></pre></div>
<p><code>curl -L https://raw.githubusercontent.com/docker/compose/$(docker-compose version --short)/contrib/completion/bash/docker-compose -o /etc/bash_completion.d/docker-compose</code></p>
<hr>
<div class="md-source-file">
@ -2497,7 +2496,7 @@
<script id="__config" type="application/json">{"base": "../../../..", "features": ["navigation.top", "navigation.tracking"], "search": "../../../../assets/javascripts/workers/search.2a1c317c.min.js", "translations": {"clipboard.copied": "In Zwischenablage kopiert", "clipboard.copy": "In Zwischenablage kopieren", "search.config.lang": "de", "search.config.pipeline": "trimmer, stopWordFilter", "search.config.separator": "[\\s\\-]+", "search.placeholder": "Suche", "search.result.more.one": "1 weiteres Suchergebnis auf dieser Seite", "search.result.more.other": "# weitere Suchergebnisse auf dieser Seite", "search.result.none": "Keine Suchergebnisse", "search.result.one": "1 Suchergebnis", "search.result.other": "# Suchergebnisse", "search.result.placeholder": "Suchbegriff eingeben", "search.result.term.missing": "Es fehlt", "select.version.title": "Version ausw\u00e4hlen"}}</script>
<script src="../../../../assets/javascripts/bundle.748e2769.min.js"></script>
<script src="../../../../assets/javascripts/bundle.c2e1ee47.min.js"></script>
<script src="../../../../assets/javascripts/client.js"></script>

Datei anzeigen

@ -11,7 +11,7 @@
<link rel="canonical" href="https://mailcow.github.io/mailcow-dockerized-docs/de/manual-guides/Dovecot/u_e-dovecot-any_acl/">
<link rel="icon" href="../../../../assets/images/favicon.png">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.11">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.14">
@ -19,10 +19,10 @@
<link rel="stylesheet" href="../../../../assets/stylesheets/main.8c5ef100.min.css">
<link rel="stylesheet" href="../../../../assets/stylesheets/main.3de6f41f.min.css">
<link rel="stylesheet" href="../../../../assets/stylesheets/palette.9647289d.min.css">
<link rel="stylesheet" href="../../../../assets/stylesheets/palette.cc9b2e1e.min.css">
@ -2377,8 +2377,7 @@
<p>Am 17. August haben wir die Möglichkeit, mit "jedem" oder "allen authentifizierten Benutzern" zu teilen, standardmäßig deaktiviert.</p>
<p>Diese Funktion kann wieder aktiviert werden, indem <code>ACL_ANYONE</code> auf <code>allow</code> in mailcow.conf gesetzt wird:</p>
<div class="highlight"><pre><span></span><code>ACL_ANYONE=allow
</code></pre></div>
<p><code>ACL_ANYONE=allow</code></p>
<p>Wenden Sie die Ă„nderungen an, indem Sie <code>docker-compose up -d</code> ausfĂĽhren.</p>
<hr>
@ -2499,7 +2498,7 @@
<script id="__config" type="application/json">{"base": "../../../..", "features": ["navigation.top", "navigation.tracking"], "search": "../../../../assets/javascripts/workers/search.2a1c317c.min.js", "translations": {"clipboard.copied": "In Zwischenablage kopiert", "clipboard.copy": "In Zwischenablage kopieren", "search.config.lang": "de", "search.config.pipeline": "trimmer, stopWordFilter", "search.config.separator": "[\\s\\-]+", "search.placeholder": "Suche", "search.result.more.one": "1 weiteres Suchergebnis auf dieser Seite", "search.result.more.other": "# weitere Suchergebnisse auf dieser Seite", "search.result.none": "Keine Suchergebnisse", "search.result.one": "1 Suchergebnis", "search.result.other": "# Suchergebnisse", "search.result.placeholder": "Suchbegriff eingeben", "search.result.term.missing": "Es fehlt", "select.version.title": "Version ausw\u00e4hlen"}}</script>
<script src="../../../../assets/javascripts/bundle.748e2769.min.js"></script>
<script src="../../../../assets/javascripts/bundle.c2e1ee47.min.js"></script>
<script src="../../../../assets/javascripts/client.js"></script>

Datei anzeigen

@ -11,7 +11,7 @@
<link rel="canonical" href="https://mailcow.github.io/mailcow-dockerized-docs/de/manual-guides/Dovecot/u_e-dovecot-catchall_vacation/">
<link rel="icon" href="../../../../assets/images/favicon.png">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.11">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.14">
@ -19,10 +19,10 @@
<link rel="stylesheet" href="../../../../assets/stylesheets/main.8c5ef100.min.css">
<link rel="stylesheet" href="../../../../assets/stylesheets/main.3de6f41f.min.css">
<link rel="stylesheet" href="../../../../assets/stylesheets/palette.9647289d.min.css">
<link rel="stylesheet" href="../../../../assets/stylesheets/palette.cc9b2e1e.min.css">
@ -2496,7 +2496,7 @@
<script id="__config" type="application/json">{"base": "../../../..", "features": ["navigation.top", "navigation.tracking"], "search": "../../../../assets/javascripts/workers/search.2a1c317c.min.js", "translations": {"clipboard.copied": "In Zwischenablage kopiert", "clipboard.copy": "In Zwischenablage kopieren", "search.config.lang": "de", "search.config.pipeline": "trimmer, stopWordFilter", "search.config.separator": "[\\s\\-]+", "search.placeholder": "Suche", "search.result.more.one": "1 weiteres Suchergebnis auf dieser Seite", "search.result.more.other": "# weitere Suchergebnisse auf dieser Seite", "search.result.none": "Keine Suchergebnisse", "search.result.one": "1 Suchergebnis", "search.result.other": "# Suchergebnisse", "search.result.placeholder": "Suchbegriff eingeben", "search.result.term.missing": "Es fehlt", "select.version.title": "Version ausw\u00e4hlen"}}</script>
<script src="../../../../assets/javascripts/bundle.748e2769.min.js"></script>
<script src="../../../../assets/javascripts/bundle.c2e1ee47.min.js"></script>
<script src="../../../../assets/javascripts/client.js"></script>

Datei anzeigen

@ -11,7 +11,7 @@
<link rel="canonical" href="https://mailcow.github.io/mailcow-dockerized-docs/de/manual-guides/Dovecot/u_e-dovecot-expunge/">
<link rel="icon" href="../../../../assets/images/favicon.png">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.11">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.14">
@ -19,10 +19,10 @@
<link rel="stylesheet" href="../../../../assets/stylesheets/main.8c5ef100.min.css">
<link rel="stylesheet" href="../../../../assets/stylesheets/main.3de6f41f.min.css">
<link rel="stylesheet" href="../../../../assets/stylesheets/palette.9647289d.min.css">
<link rel="stylesheet" href="../../../../assets/stylesheets/palette.cc9b2e1e.min.css">
@ -1592,6 +1592,33 @@
</li>
</ul>
</nav>
</li>
<li class="md-nav__item">
<a href="#binbash" class="md-nav__link">
!/bin/bash
</a>
</li>
<li class="md-nav__item">
<a href="#pfad-zu-mailcow-dockerized-zb-optmailcow-dockerized" class="md-nav__link">
Pfad zu mailcow-dockerized, z.B. /opt/mailcow-dockerized
</a>
</li>
<li class="md-nav__item">
<a href="#jeden-tag-um-0400-uhr-morgens-ausfuhren" class="md-nav__link">
Jeden Tag um 04:00 Uhr morgens ausfĂĽhren.
</a>
<nav class="md-nav" aria-label="Jeden Tag um 04:00 Uhr morgens ausfĂĽhren.">
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="#uber-docker-job-scheduler" class="md-nav__link">
ĂĽber Docker Job Scheduler
@ -2446,6 +2473,33 @@
</li>
</ul>
</nav>
</li>
<li class="md-nav__item">
<a href="#binbash" class="md-nav__link">
!/bin/bash
</a>
</li>
<li class="md-nav__item">
<a href="#pfad-zu-mailcow-dockerized-zb-optmailcow-dockerized" class="md-nav__link">
Pfad zu mailcow-dockerized, z.B. /opt/mailcow-dockerized
</a>
</li>
<li class="md-nav__item">
<a href="#jeden-tag-um-0400-uhr-morgens-ausfuhren" class="md-nav__link">
Jeden Tag um 04:00 Uhr morgens ausfĂĽhren.
</a>
<nav class="md-nav" aria-label="Jeden Tag um 04:00 Uhr morgens ausfĂĽhren.">
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="#uber-docker-job-scheduler" class="md-nav__link">
ĂĽber Docker Job Scheduler
@ -2476,23 +2530,17 @@
<h1>Löschen der Mails eines Benutzers</h1>
<p>Wenn Sie alte Mails aus den Ordnern <code>.Junk</code> oder <code>.Trash</code> löschen wollen oder vielleicht alle gelesenen Mails, die älter als eine bestimmte Zeitspanne sind, können Sie das dovecot-Tool doveadm <a href="https://wiki.dovecot.org/Tools/Doveadm/Expunge">man doveadm-expunge</a> verwenden.</p>
<h2 id="der-manuelle-weg">Der manuelle Weg<a class="headerlink" href="#der-manuelle-weg" title="Permanent link">&para;</a></h2>
<p>Dann wollen wir mal loslegen:</p>
<p>Löschen Sie die Mails eines Benutzers im Junk-Ordner, die <strong>gelesen</strong> und <strong>älter</strong> als 4 Stunden sind</p>
<div class="highlight"><pre><span></span><code>docker-compose exec dovecot-mailcow doveadm expunge -u &#39;mailbox@example.com&#39; mailbox &#39;Junk&#39; SEEN not SINCE 4h
</code></pre></div>
<p><code>docker-compose exec dovecot-mailcow doveadm expunge -u 'mailbox@example.com' mailbox 'Junk' SEEN not SINCE 4h</code></p>
<p>Lösche <strong>alle</strong> Mails des Benutzers im Junk-Ordner, die <strong>älter</strong> als 7 Tage sind</p>
<div class="highlight"><pre><span></span><code>docker-compose exec dovecot-mailcow doveadm expunge -A mailbox &#39;Junk&#39; savedbefore 7d
</code></pre></div>
<p><code>docker-compose exec dovecot-mailcow doveadm expunge -A mailbox 'Junk' savedbefore 7d</code></p>
<p>Löscht <strong>alle</strong> Mails (aller Benutzer) in <strong>allen</strong> Ordnern, die <strong>älter</strong> als 52 Wochen sind (internes Datum der Mail, nicht das Datum, an dem sie auf dem System gespeichert wurde =&gt; <code>before</code> statt <code>savedbefore</code>). Nützlich zum Löschen sehr alter Mails in allen Benutzern und Ordnern (daher besonders nützlich für GDPR-Compliance).</p>
<div class="highlight"><pre><span></span><code>docker-compose exec dovecot-mailcow doveadm expunge -A mailbox % before 52w
</code></pre></div>
<p><code>docker-compose exec dovecot-mailcow doveadm expunge -A mailbox % before 52w</code></p>
<p>Löschen von Mails in einem benutzerdefinierten Ordner <strong>innerhalb</strong> des Posteingangs eines Benutzers, die <strong>nicht</strong> gekennzeichnet und <strong>älter</strong> als 2 Wochen sind</p>
<div class="highlight"><pre><span></span><code>docker-compose exec dovecot-mailcow doveadm expunge -u &#39;mailbox@example.com&#39; mailbox &#39;INBOX/custom-folder&#39; not FLAGGED not SINCE 2w
</code></pre></div>
<p><code>docker-compose exec dovecot-mailcow doveadm expunge -u 'mailbox@example.com' mailbox 'INBOX/custom-folder' not FLAGGED not SINCE 2w</code></p>
<div class="admonition info">
<p class="admonition-title">Info</p>
<p>Für mögliche <a href="https://wiki.dovecot.org/Tools/Doveadm/SearchQuery#section_date_specification">Zeitspannen</a> oder <a href="https://wiki.dovecot.org/Tools/Doveadm/SearchQuery#section_search_keys">SearchQuery</a> schauen Sie bitte in <a href="https://wiki.dovecot.org/Tools/Doveadm/SearchQuery">man doveadm-search-query</a></p>
@ -2500,44 +2548,42 @@
<h2 id="job-scheduler">Job-Scheduler<a class="headerlink" href="#job-scheduler" title="Permanent link">&para;</a></h2>
<h3 id="uber-das-host-system-cron">ĂĽber das Host-System cron<a class="headerlink" href="#uber-das-host-system-cron" title="Permanent link">&para;</a></h3>
<p>Wenn Sie eine solche Aufgabe automatisieren wollen, können Sie einen Cron-Job auf Ihrem Rechner erstellen, der ein Skript wie das folgende aufruft:</p>
<div class="highlight"><pre><span></span><code>#!/bin/bash
# Pfad zu mailcow-dockerized, z.B. /opt/mailcow-dockerized
cd /pfad/zu/ihrem/mailcow-dockerized
/usr/local/bin/docker-compose exec -T dovecot-mailcow doveadm expunge -A mailbox &#39;Junk&#39; savedbefore 2w
/usr/local/bin/docker-compose exec -T dovecot-mailcow doveadm expunge -A mailbox &#39;Junk&#39; SEEN not SINCE 12h
<p>```</p>
<h1 id="binbash">!/bin/bash<a class="headerlink" href="#binbash" title="Permanent link">&para;</a></h1>
<h1 id="pfad-zu-mailcow-dockerized-zb-optmailcow-dockerized">Pfad zu mailcow-dockerized, z.B. /opt/mailcow-dockerized<a class="headerlink" href="#pfad-zu-mailcow-dockerized-zb-optmailcow-dockerized" title="Permanent link">&para;</a></h1>
<p>cd /pfad/zu/ihrem/mailcow-dockerized</p>
<p>/usr/local/bin/docker-compose exec -T dovecot-mailcow doveadm expunge -A mailbox 'Junk' savedbefore 2w
/usr/local/bin/docker-compose exec -T dovecot-mailcow doveadm expunge -A mailbox 'Junk' SEEN not SINCE 12h
[...]
</code></pre></div>
```</p>
<p>Um einen Cronjob zu erstellen, können Sie <code>crontab -e</code> ausführen und etwas wie das Folgende einfügen, um ein Skript auszuführen:</p>
<div class="highlight"><pre><span></span><code># Jeden Tag um 04:00 Uhr morgens ausfĂĽhren.
0 4 * * * /pfad/zu/ihr/expunge_mailboxes.sh
</code></pre></div>
<p>```</p>
<h1 id="jeden-tag-um-0400-uhr-morgens-ausfuhren">Jeden Tag um 04:00 Uhr morgens ausfĂĽhren.<a class="headerlink" href="#jeden-tag-um-0400-uhr-morgens-ausfuhren" title="Permanent link">&para;</a></h1>
<p>0 4 * * * /pfad/zu/ihr/expunge_mailboxes.sh
```</p>
<h3 id="uber-docker-job-scheduler">ĂĽber Docker Job Scheduler<a class="headerlink" href="#uber-docker-job-scheduler" title="Permanent link">&para;</a></h3>
<p>Um dies mit einem Docker-Job-Scheduler zu archivieren, verwenden Sie diese docker-compose.override.yml mit Ihrer Mailcow: </p>
<div class="highlight"><pre><span></span><code>version: &#39;2.1&#39;
services:
ofelia:
<p>```
version: '2.1'</p>
<p>services:</p>
<p>ofelia:
image: mcuadros/ofelia:latest
restart: always
command: daemon --docker
volumes:
- /var/run/docker.sock:/var/run/docker.sock:ro
network_mode: none
dovecot-mailcow:
- /var/run/docker.sock:/var/run/docker.sock:ro <br />
network_mode: none</p>
<p>dovecot-mailcow:
labels:
- &quot;ofelia.enabled=true&quot;
- &quot;ofelia.job-exec.dovecot-expunge-trash.schedule=0 4 * * *&quot;
- &quot;ofelia.job-exec.dovecot-expunge-trash.command=doveadm expunge -A mailbox &#39;Junk&#39; savedbefore 2w&quot;
- &quot;ofelia.job-exec.dovecot-expunge-trash.tty=false&quot;
</code></pre></div>
- "ofelia.enabled=true"
- "ofelia.job-exec.dovecot-expunge-trash.schedule=0 4 * * *"
- "ofelia.job-exec.dovecot-expunge-trash.command=doveadm expunge -A mailbox 'Junk' savedbefore 2w"
- "ofelia.job-exec.dovecot-expunge-trash.tty=false"</p>
<p>```</p>
<p>Der Job-Controller braucht nur Zugriff auf den Docker Control Socket, um das Verhalten von "exec" zu emulieren. Dann fügen wir unserem Dovecot-Container ein paar Labels hinzu, um den Job-Scheduler zu aktivieren und ihm in einem Cron-kompatiblen Scheduling-Format mitzuteilen, wann er laufen soll. Wenn Sie Probleme mit dem Scheduling-String haben, können Sie <a href="https://crontab.guru/">crontab guru</a> verwenden.
Diese docker-compose.override.yml löscht jeden Tag um 4 Uhr morgens alle Mails, die älter als 2 Wochen sind, aus dem Ordner "Junk". Um zu sehen, ob alles richtig gelaufen ist, können Sie nicht nur in Ihrer Mailbox nachsehen, sondern auch im Docker-Log von Ofelia, ob es etwa so aussieht:</p>
<div class="highlight"><pre><span></span><code>common.go:124 â–¶ NOTICE [Job &quot;dovecot-expunge-trash&quot; (8759567efa66)] Started - doveadm expunge -A mailbox &#39;Junk&#39; savedbefore 2w,
common.go:124 â–¶ NOTICE [Job &quot;dovecot-expunge-trash&quot; (8759567efa66)] Finished in &quot;285.032291ms&quot;, failed: false, skipped: false, error: none,
</code></pre></div>
<p><code>common.go:124 â–¶ NOTICE [Job "dovecot-expunge-trash" (8759567efa66)] Started - doveadm expunge -A mailbox 'Junk' savedbefore 2w,
common.go:124 â–¶ NOTICE [Job "dovecot-expunge-trash" (8759567efa66)] Finished in "285.032291ms", failed: false, skipped: false, error: none,</code></p>
<p>Wenn der Vorgang fehlgeschlagen ist, wird dies angegeben und die Ausgabe von doveadm im Protokoll aufgefĂĽhrt, um Ihnen die Fehlersuche zu erleichtern.</p>
<p>Falls Sie weitere Jobs hinzufügen wollen, stellen Sie sicher, dass Sie den "dovecot-expunge-trash"-Teil nach "ofelia.job-exec." in etwas anderes ändern, er definiert den Namen des Jobs. Die Syntax der Labels finden Sie unter <a href="https://github.com/mcuadros/ofelia">mcuadros/ofelia</a>.</p>
@ -2659,7 +2705,7 @@ common.go:124 â–¶ NOTICE [Job &quot;dovecot-expunge-trash&quot; (8759567efa66)]
<script id="__config" type="application/json">{"base": "../../../..", "features": ["navigation.top", "navigation.tracking"], "search": "../../../../assets/javascripts/workers/search.2a1c317c.min.js", "translations": {"clipboard.copied": "In Zwischenablage kopiert", "clipboard.copy": "In Zwischenablage kopieren", "search.config.lang": "de", "search.config.pipeline": "trimmer, stopWordFilter", "search.config.separator": "[\\s\\-]+", "search.placeholder": "Suche", "search.result.more.one": "1 weiteres Suchergebnis auf dieser Seite", "search.result.more.other": "# weitere Suchergebnisse auf dieser Seite", "search.result.none": "Keine Suchergebnisse", "search.result.one": "1 Suchergebnis", "search.result.other": "# Suchergebnisse", "search.result.placeholder": "Suchbegriff eingeben", "search.result.term.missing": "Es fehlt", "select.version.title": "Version ausw\u00e4hlen"}}</script>
<script src="../../../../assets/javascripts/bundle.748e2769.min.js"></script>
<script src="../../../../assets/javascripts/bundle.c2e1ee47.min.js"></script>
<script src="../../../../assets/javascripts/client.js"></script>

Datei anzeigen

@ -11,7 +11,7 @@
<link rel="canonical" href="https://mailcow.github.io/mailcow-dockerized-docs/de/manual-guides/Dovecot/u_e-dovecot-extra_conf/">
<link rel="icon" href="../../../../assets/images/favicon.png">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.11">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.14">
@ -19,10 +19,10 @@
<link rel="stylesheet" href="../../../../assets/stylesheets/main.8c5ef100.min.css">
<link rel="stylesheet" href="../../../../assets/stylesheets/main.3de6f41f.min.css">
<link rel="stylesheet" href="../../../../assets/stylesheets/palette.9647289d.min.css">
<link rel="stylesheet" href="../../../../assets/stylesheets/palette.cc9b2e1e.min.css">
@ -2377,8 +2377,7 @@
<p>Erstellen Sie eine Datei <code>data/conf/dovecot/extra.conf</code> - falls nicht vorhanden - und fügen Sie Ihren zusätzlichen Inhalt hier ein.</p>
<p>Starten Sie <code>dovecot-mailcow</code> neu, um Ihre Ă„nderungen zu ĂĽbernehmen:</p>
<div class="highlight"><pre><span></span><code>docker-compose restart dovecot-mailcow
</code></pre></div>
<p><code>docker-compose restart dovecot-mailcow</code></p>
<hr>
<div class="md-source-file">
@ -2498,7 +2497,7 @@
<script id="__config" type="application/json">{"base": "../../../..", "features": ["navigation.top", "navigation.tracking"], "search": "../../../../assets/javascripts/workers/search.2a1c317c.min.js", "translations": {"clipboard.copied": "In Zwischenablage kopiert", "clipboard.copy": "In Zwischenablage kopieren", "search.config.lang": "de", "search.config.pipeline": "trimmer, stopWordFilter", "search.config.separator": "[\\s\\-]+", "search.placeholder": "Suche", "search.result.more.one": "1 weiteres Suchergebnis auf dieser Seite", "search.result.more.other": "# weitere Suchergebnisse auf dieser Seite", "search.result.none": "Keine Suchergebnisse", "search.result.one": "1 Suchergebnis", "search.result.other": "# Suchergebnisse", "search.result.placeholder": "Suchbegriff eingeben", "search.result.term.missing": "Es fehlt", "select.version.title": "Version ausw\u00e4hlen"}}</script>
<script src="../../../../assets/javascripts/bundle.748e2769.min.js"></script>
<script src="../../../../assets/javascripts/bundle.c2e1ee47.min.js"></script>
<script src="../../../../assets/javascripts/client.js"></script>

Datei anzeigen

@ -11,7 +11,7 @@
<link rel="canonical" href="https://mailcow.github.io/mailcow-dockerized-docs/de/manual-guides/Dovecot/u_e-dovecot-fts/">
<link rel="icon" href="../../../../assets/images/favicon.png">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.11">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.14">
@ -19,10 +19,10 @@
<link rel="stylesheet" href="../../../../assets/stylesheets/main.8c5ef100.min.css">
<link rel="stylesheet" href="../../../../assets/stylesheets/main.3de6f41f.min.css">
<link rel="stylesheet" href="../../../../assets/stylesheets/palette.9647289d.min.css">
<link rel="stylesheet" href="../../../../assets/stylesheets/palette.cc9b2e1e.min.css">
@ -1599,6 +1599,40 @@
</li>
</ul>
</nav>
</li>
<li class="md-nav__item">
<a href="#einzelbenutzer" class="md-nav__link">
Einzelbenutzer
</a>
</li>
<li class="md-nav__item">
<a href="#alle-benutzer" class="md-nav__link">
alle Benutzer
</a>
</li>
<li class="md-nav__item">
<a href="#einzelner-benutzer" class="md-nav__link">
einzelner Benutzer
</a>
</li>
<li class="md-nav__item">
<a href="#alle-benutzer-aber-offensichtlich-langsamer-und-gefahrlicher" class="md-nav__link">
alle Benutzer, aber offensichtlich langsamer und gefährlicher
</a>
<nav class="md-nav" aria-label="alle Benutzer, aber offensichtlich langsamer und gefährlicher">
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="#loschen-der-mailbox-daten" class="md-nav__link">
Löschen der Mailbox-Daten
@ -2432,6 +2466,40 @@
</li>
</ul>
</nav>
</li>
<li class="md-nav__item">
<a href="#einzelbenutzer" class="md-nav__link">
Einzelbenutzer
</a>
</li>
<li class="md-nav__item">
<a href="#alle-benutzer" class="md-nav__link">
alle Benutzer
</a>
</li>
<li class="md-nav__item">
<a href="#einzelner-benutzer" class="md-nav__link">
einzelner Benutzer
</a>
</li>
<li class="md-nav__item">
<a href="#alle-benutzer-aber-offensichtlich-langsamer-und-gefahrlicher" class="md-nav__link">
alle Benutzer, aber offensichtlich langsamer und gefährlicher
</a>
<nav class="md-nav" aria-label="alle Benutzer, aber offensichtlich langsamer und gefährlicher">
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="#loschen-der-mailbox-daten" class="md-nav__link">
Löschen der Mailbox-Daten
@ -2462,8 +2530,6 @@
<h1>FTS (Solr)</h1>
<h2 id="fts-solr">FTS Solr<a class="headerlink" href="#fts-solr" title="Permanent link">&para;</a></h2>
<p>Solr wird für Setups mit Speicher &gt;= 3,5 GiB verwendet, um eine Volltextsuche in Dovecot zu ermöglichen.</p>
<p>Bitte beachten Sie, dass Anwendungen wie Solr <em>vielleicht</em> von Zeit zu Zeit gewartet werden mĂĽssen.</p>
@ -2471,19 +2537,21 @@
<p>Die Standard-Heap-Größe (1024 M) ist in mailcow.conf definiert.</p>
<p>Da wir in Docker laufen und unsere Container mit dem "restart: always" Flag erstellen, wird eine oom Situation zumindest nur einen Neustart des Containers auslösen.</p>
<h3 id="fts-bezogene-dovecot-befehle">FTS-bezogene Dovecot-Befehle<a class="headerlink" href="#fts-bezogene-dovecot-befehle" title="Permanent link">&para;</a></h3>
<p><div class="highlight"><pre><span></span><code># Einzelbenutzer
docker-compose exec dovecot-mailcow doveadm fts rescan -u user@domain
# alle Benutzer
docker-compose exec dovecot-mailcow doveadm fts rescan -A
</code></pre></div>
<p>```</p>
<h1 id="einzelbenutzer">Einzelbenutzer<a class="headerlink" href="#einzelbenutzer" title="Permanent link">&para;</a></h1>
<p>docker-compose exec dovecot-mailcow doveadm fts rescan -u user@domain</p>
<h1 id="alle-benutzer">alle Benutzer<a class="headerlink" href="#alle-benutzer" title="Permanent link">&para;</a></h1>
<p>docker-compose exec dovecot-mailcow doveadm fts rescan -A</p>
<p>```
Dovecot Wiki: "Scannt, welche Mails im Volltextsuchindex vorhanden sind und vergleicht diese mit den tatsächlich in den Postfächern vorhandenen Mails. Dies entfernt Mails aus dem Index, die bereits gelöscht wurden und stellt sicher, dass der nächste doveadm-Index alle fehlenden Mails (falls vorhanden) indiziert."</p>
<p>Dies indiziert <strong>nicht</strong> eine Mailbox neu. Es repariert im Grunde einen gegebenen Index.</p>
<p>Wenn Sie die Daten sofort neu indizieren wollen, können Sie den folgenden Befehl ausführen, wobei '*' auch eine Postfachmaske wie 'Sent' sein kann. Sie müssen diese Befehle nicht ausführen, aber es wird die Dinge ein wenig beschleunigen:</p>
<div class="highlight"><pre><span></span><code># einzelner Benutzer
docker-compose exec dovecot-mailcow doveadm index -u user@domain &#39;*&#39;
# alle Benutzer, aber offensichtlich langsamer und gefährlicher
docker-compose exec dovecot-mailcow doveadm index -A &#39;*&#39;
</code></pre></div>
<p>```</p>
<h1 id="einzelner-benutzer">einzelner Benutzer<a class="headerlink" href="#einzelner-benutzer" title="Permanent link">&para;</a></h1>
<p>docker-compose exec dovecot-mailcow doveadm index -u user@domain '*'</p>
<h1 id="alle-benutzer-aber-offensichtlich-langsamer-und-gefahrlicher">alle Benutzer, aber offensichtlich langsamer und gefährlicher<a class="headerlink" href="#alle-benutzer-aber-offensichtlich-langsamer-und-gefahrlicher" title="Permanent link">&para;</a></h1>
<p>docker-compose exec dovecot-mailcow doveadm index -A '*'
```</p>
<p>Dies <strong>wird</strong> einige Zeit in Anspruch nehmen, abhängig von Ihrer Maschine und Solr kann oom ausführen, überwachen Sie es!</p>
<p>Da die Neuindizierung sehr sinnvoll ist, haben wir sie nicht in die mailcow UI integriert. Sie mĂĽssen sich um eventuelle Fehler beim Re-Indizieren einer Mailbox kĂĽmmern.</p>
<h3 id="loschen-der-mailbox-daten">Löschen der Mailbox-Daten<a class="headerlink" href="#loschen-der-mailbox-daten" title="Permanent link">&para;</a></h3>
@ -2607,7 +2675,7 @@ docker-compose exec dovecot-mailcow doveadm index -A &#39;*&#39;
<script id="__config" type="application/json">{"base": "../../../..", "features": ["navigation.top", "navigation.tracking"], "search": "../../../../assets/javascripts/workers/search.2a1c317c.min.js", "translations": {"clipboard.copied": "In Zwischenablage kopiert", "clipboard.copy": "In Zwischenablage kopieren", "search.config.lang": "de", "search.config.pipeline": "trimmer, stopWordFilter", "search.config.separator": "[\\s\\-]+", "search.placeholder": "Suche", "search.result.more.one": "1 weiteres Suchergebnis auf dieser Seite", "search.result.more.other": "# weitere Suchergebnisse auf dieser Seite", "search.result.none": "Keine Suchergebnisse", "search.result.one": "1 Suchergebnis", "search.result.other": "# Suchergebnisse", "search.result.placeholder": "Suchbegriff eingeben", "search.result.term.missing": "Es fehlt", "select.version.title": "Version ausw\u00e4hlen"}}</script>
<script src="../../../../assets/javascripts/bundle.748e2769.min.js"></script>
<script src="../../../../assets/javascripts/bundle.c2e1ee47.min.js"></script>
<script src="../../../../assets/javascripts/client.js"></script>

Datei anzeigen

@ -11,7 +11,7 @@
<link rel="canonical" href="https://mailcow.github.io/mailcow-dockerized-docs/de/manual-guides/Dovecot/u_e-dovecot-idle_interval/">
<link rel="icon" href="../../../../assets/images/favicon.png">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.11">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.14">
@ -19,10 +19,10 @@
<link rel="stylesheet" href="../../../../assets/stylesheets/main.8c5ef100.min.css">
<link rel="stylesheet" href="../../../../assets/stylesheets/main.3de6f41f.min.css">
<link rel="stylesheet" href="../../../../assets/stylesheets/palette.9647289d.min.css">
<link rel="stylesheet" href="../../../../assets/stylesheets/palette.cc9b2e1e.min.css">
@ -2490,8 +2490,7 @@
<h3 id="konfiguration-andern">Konfiguration ändern<a class="headerlink" href="#konfiguration-andern" title="Permanent link">&para;</a></h3>
<p>Erstellen Sie eine neue Datei <code>data/conf/dovecot/extra.conf</code> (oder bearbeiten Sie sie, falls sie bereits existiert).
Fügen Sie die Einstellung ein, gefolgt von dem neuen Wert. Um zum Beispiel das Intervall auf 5 Minuten zu setzen, können Sie Folgendes eingeben:</p>
<div class="highlight"><pre><span></span><code>imap_idle_notify_interval = 5 mins
</code></pre></div>
<p><code>imap_idle_notify_interval = 5 mins</code></p>
<p>29 Minuten ist der maximale Wert, den der <a href="https://tools.ietf.org/html/rfc2177">entsprechende RFC</a> erlaubt.</p>
<div class="admonition warning">
<p class="admonition-title">Warning</p>
@ -2499,13 +2498,11 @@ FĂĽgen Sie die Einstellung ein, gefolgt von dem neuen Wert. Um zum Beispiel das
</div>
<h3 id="dovecot-neu-laden">Dovecot neu laden<a class="headerlink" href="#dovecot-neu-laden" title="Permanent link">&para;</a></h3>
<p>Nun laden Sie Dovecot neu:</p>
<div class="highlight"><pre><span></span><code>docker-compose exec dovecot-mailcow dovecot reload
</code></pre></div>
<p><code>docker-compose exec dovecot-mailcow dovecot reload</code></p>
<div class="admonition info">
<p class="admonition-title">Info</p>
<p>Sie können den Wert dieser Einstellung überprüfen mit
<div class="highlight"><pre><span></span><code>docker-compose exec dovecot-mailcow dovecot -a | grep &quot;imap_idle_notify_interval&quot;
</code></pre></div>
<code>docker-compose exec dovecot-mailcow dovecot -a | grep "imap_idle_notify_interval"</code>
Wenn Sie den Wert nicht geändert haben, sollte er auf 2m stehen. Wenn Sie ihn geändert haben, sollten Sie den neuen Wert sehen.</p>
</div>
@ -2627,7 +2624,7 @@ Wenn Sie den Wert nicht geändert haben, sollte er auf 2m stehen. Wenn Sie ihn g
<script id="__config" type="application/json">{"base": "../../../..", "features": ["navigation.top", "navigation.tracking"], "search": "../../../../assets/javascripts/workers/search.2a1c317c.min.js", "translations": {"clipboard.copied": "In Zwischenablage kopiert", "clipboard.copy": "In Zwischenablage kopieren", "search.config.lang": "de", "search.config.pipeline": "trimmer, stopWordFilter", "search.config.separator": "[\\s\\-]+", "search.placeholder": "Suche", "search.result.more.one": "1 weiteres Suchergebnis auf dieser Seite", "search.result.more.other": "# weitere Suchergebnisse auf dieser Seite", "search.result.none": "Keine Suchergebnisse", "search.result.one": "1 Suchergebnis", "search.result.other": "# Suchergebnisse", "search.result.placeholder": "Suchbegriff eingeben", "search.result.term.missing": "Es fehlt", "select.version.title": "Version ausw\u00e4hlen"}}</script>
<script src="../../../../assets/javascripts/bundle.748e2769.min.js"></script>
<script src="../../../../assets/javascripts/bundle.c2e1ee47.min.js"></script>
<script src="../../../../assets/javascripts/client.js"></script>

Datei anzeigen

@ -11,7 +11,7 @@
<link rel="canonical" href="https://mailcow.github.io/mailcow-dockerized-docs/de/manual-guides/Dovecot/u_e-dovecot-mail-crypt/">
<link rel="icon" href="../../../../assets/images/favicon.png">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.11">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.14">
@ -19,10 +19,10 @@
<link rel="stylesheet" href="../../../../assets/stylesheets/main.8c5ef100.min.css">
<link rel="stylesheet" href="../../../../assets/stylesheets/main.3de6f41f.min.css">
<link rel="stylesheet" href="../../../../assets/stylesheets/palette.9647289d.min.css">
<link rel="stylesheet" href="../../../../assets/stylesheets/palette.cc9b2e1e.min.css">
@ -66,6 +66,11 @@
<label class="md-overlay" for="__drawer"></label>
<div data-md-component="skip">
<a href="#entschlusseln-sie-varvmail" class="md-skip">
Zum Inhalt
</a>
</div>
<div data-md-component="announce">
@ -1584,6 +1589,8 @@
<input class="md-nav__toggle md-toggle" data-md-toggle="toc" type="checkbox" id="__toc">
<a href="./" class="md-nav__link md-nav__link--active">
Mail crypt
@ -2356,6 +2363,8 @@
</nav>
</div>
@ -2373,37 +2382,34 @@
<h1>Mail crypt</h1>
<p>Die Mails werden komprimiert (lz4) und verschlĂĽsselt gespeichert. Das SchlĂĽsselpaar ist in crypt-vol-1 zu finden.</p>
<p>Wenn Sie vorhandene maildir-Dateien entschlüsseln/verschlüsseln wollen, können Sie das folgende Skript auf eigene Gefahr verwenden:</p>
<p>Rufen Sie Dovecot auf, indem Sie <code>docker-compose exec dovecot-mailcow /bin/bash</code> im mailcow-dockerisierten Verzeichnis ausfĂĽhren.</p>
<div class="highlight"><pre><span></span><code># EntschlĂĽsseln Sie /var/vmail
find /var/vmail/ -type f -regextype egrep -regex &#39;.*S=.*W=.*&#39; | while read -r file; do
if [[ $(head -c7 &quot;$file&quot;) == &quot;CRYPTED&quot; ]]; then
<p>```</p>
<h1 id="entschlusseln-sie-varvmail">EntschlĂĽsseln Sie /var/vmail<a class="headerlink" href="#entschlusseln-sie-varvmail" title="Permanent link">&para;</a></h1>
<p>find /var/vmail/ -type f -regextype egrep -regex '.<em>S=.</em>W=.*' | while read -r file; do
if [[ $(head -c7 "$file") == "CRYPTED" ]]; then
doveadm fs get compress lz4:0:crypt:private_key_path=/mail_crypt/ecprivkey.pem:public_key_path=/mail_crypt/ecpubkey.pem:posix:prefix=/ \
&quot;$file&quot; &gt; &quot;/tmp/$(basename &quot;$file&quot;)&quot;
if [[ -s &quot;/tmp/$(basename &quot;$file&quot;)&quot; ]]; then
chmod 600 &quot;/tmp/$(basename &quot;$file&quot;)&quot;
chown 5000:5000 &quot;/tmp/$(basename &quot;$file&quot;)&quot;
mv &quot;/tmp/$(basename &quot;$file&quot;)&quot; &quot;$file&quot;
"$file" &gt; "/tmp/$(basename "$file")"
if [[ -s "/tmp/$(basename "$file")" ]]; then
chmod 600 "/tmp/$(basename "$file")"
chown 5000:5000 "/tmp/$(basename "$file")"
mv "/tmp/$(basename "$file")" "$file"
else
rm &quot;/tmp/$(basename &quot;$file&quot;)&quot;
rm "/tmp/$(basename "$file")"
fi
fi
done
# VerschlĂĽsseln von /var/vmail
find /var/vmail/ -type f -regextype egrep -regex &#39;.*S=.*W=.*&#39; | while read -r file; do
if [[ $(head -c7 &quot;$file&quot;) != &quot;CRYPTED&quot; ]]; then
done</p>
<h1 id="verschlusseln-von-varvmail">VerschlĂĽsseln von /var/vmail<a class="headerlink" href="#verschlusseln-von-varvmail" title="Permanent link">&para;</a></h1>
<p>find /var/vmail/ -type f -regextype egrep -regex '.<em>S=.</em>W=.*' | while read -r file; do
if [[ $(head -c7 "$file") != "CRYPTED" ]]; then
doveadm fs put crypt private_key_path=/mail_crypt/ecprivkey.pem:public_key_path=/mail_crypt/ecpubkey.pem:posix:prefix=/ \
&quot;$file&quot; &quot;$file&quot;
chmod 600 &quot;$file&quot;
chown 5000:5000 &quot;$file&quot;
"$file" "$file"
chmod 600 "$file"
chown 5000:5000 "$file"
fi
done
</code></pre></div>
```</p>
<hr>
<div class="md-source-file">
@ -2523,7 +2529,7 @@ done
<script id="__config" type="application/json">{"base": "../../../..", "features": ["navigation.top", "navigation.tracking"], "search": "../../../../assets/javascripts/workers/search.2a1c317c.min.js", "translations": {"clipboard.copied": "In Zwischenablage kopiert", "clipboard.copy": "In Zwischenablage kopieren", "search.config.lang": "de", "search.config.pipeline": "trimmer, stopWordFilter", "search.config.separator": "[\\s\\-]+", "search.placeholder": "Suche", "search.result.more.one": "1 weiteres Suchergebnis auf dieser Seite", "search.result.more.other": "# weitere Suchergebnisse auf dieser Seite", "search.result.none": "Keine Suchergebnisse", "search.result.one": "1 Suchergebnis", "search.result.other": "# Suchergebnisse", "search.result.placeholder": "Suchbegriff eingeben", "search.result.term.missing": "Es fehlt", "select.version.title": "Version ausw\u00e4hlen"}}</script>
<script src="../../../../assets/javascripts/bundle.748e2769.min.js"></script>
<script src="../../../../assets/javascripts/bundle.c2e1ee47.min.js"></script>
<script src="../../../../assets/javascripts/client.js"></script>

Datei anzeigen

@ -11,7 +11,7 @@
<link rel="canonical" href="https://mailcow.github.io/mailcow-dockerized-docs/de/manual-guides/Dovecot/u_e-dovecot-more/">
<link rel="icon" href="../../../../assets/images/favicon.png">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.11">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.14">
@ -19,10 +19,10 @@
<link rel="stylesheet" href="../../../../assets/stylesheets/main.8c5ef100.min.css">
<link rel="stylesheet" href="../../../../assets/stylesheets/main.3de6f41f.min.css">
<link rel="stylesheet" href="../../../../assets/stylesheets/palette.9647289d.min.css">
<link rel="stylesheet" href="../../../../assets/stylesheets/palette.cc9b2e1e.min.css">
@ -2442,25 +2442,19 @@
<h2 id="doveadm-quota">doveadm quota<a class="headerlink" href="#doveadm-quota" title="Permanent link">&para;</a></h2>
<p>Die Befehle <code>quota get</code> und <code>quota recalc</code><sup id="fnref:1"><a class="footnote-ref" href="#fn:1">1</a></sup> werden verwendet, um die Quota-Nutzung des aktuellen Benutzers anzuzeigen oder neu zu berechnen. Die angezeigten Werte sind in <em>Kilobytes</em>.</p>
<p>Um den aktuellen Quota-Status fĂĽr einen Benutzer / eine Mailbox aufzulisten, tun Sie folgendes:</p>
<div class="highlight"><pre><span></span><code>doveadm quota get -u &#39;mailbox@example.org&#39;
</code></pre></div>
<p><code>doveadm quota get -u 'mailbox@example.org'</code></p>
<p>Um den Quota-Speicherwert fĂĽr <strong>alle</strong> Benutzer aufzulisten, tun Sie folgendes:</p>
<div class="highlight"><pre><span></span><code>doveadm quota get -A |grep &quot;STORAGE&quot;
</code></pre></div>
<p><code>doveadm quota get -A |grep "STORAGE"</code></p>
<p>Berechnen Sie die Quota-Nutzung eines einzelnen Benutzers neu:</p>
<div class="highlight"><pre><span></span><code>doveadm quota recalc -u &#39;mailbox@example.org&#39;
</code></pre></div>
<p><code>doveadm quota recalc -u 'mailbox@example.org'</code></p>
<h2 id="doveadm-search">doveadm search<a class="headerlink" href="#doveadm-search" title="Permanent link">&para;</a></h2>
<p>Der Befehl <code>doveadm search</code><sup id="fnref:2"><a class="footnote-ref" href="#fn:2">2</a></sup> wird verwendet, um Nachrichten zu finden, die Ihrer Anfrage entsprechen. Er kann den Benutzernamen, die Mailbox-GUID / -UID und die Nachrichten-GUIDs / -UIDs zurĂĽckgeben.</p>
<p>Um die Anzahl der Nachrichten im <strong>.Trash</strong> Ordner eines Benutzers zu sehen:</p>
<div class="highlight"><pre><span></span><code>doveadm search -A mailbox &#39;Trash&#39; | awk &#39;{print $1}&#39; | sort | uniq -c
</code></pre></div>
<p><code>doveadm search -A mailbox 'Trash' | awk '{print $1}' | sort | uniq -c</code></p>
<p>Alle Nachrichten im <strong>Postfach</strong> eines Benutzers anzeigen, die älter als 90 Tage sind:</p>
<div class="highlight"><pre><span></span><code>doveadm search -u &#39;mailbox@example.org&#39; mailbox &#39;INBOX&#39; savedbefore 90d
</code></pre></div>
<p><code>doveadm search -u 'mailbox@example.org' mailbox 'INBOX' savedbefore 90d</code></p>
<p>Zeige <strong>alle Nachrichten</strong> in <strong>beliebigen Ordnern</strong>, die <strong>älter</strong> sind als 30 Tage für <code>mailbox@example.org</code>:</p>
<div class="highlight"><pre><span></span><code>doveadm search -u &#39;mailbox@example.org&#39; mailbox &quot;*&quot; savedbefore 30d
</code></pre></div>
<p><code>doveadm search -u 'mailbox@example.org' mailbox "*" savedbefore 30d</code></p>
<div class="footnote">
<hr />
<ol>
@ -2591,7 +2585,7 @@
<script id="__config" type="application/json">{"base": "../../../..", "features": ["navigation.top", "navigation.tracking"], "search": "../../../../assets/javascripts/workers/search.2a1c317c.min.js", "translations": {"clipboard.copied": "In Zwischenablage kopiert", "clipboard.copy": "In Zwischenablage kopieren", "search.config.lang": "de", "search.config.pipeline": "trimmer, stopWordFilter", "search.config.separator": "[\\s\\-]+", "search.placeholder": "Suche", "search.result.more.one": "1 weiteres Suchergebnis auf dieser Seite", "search.result.more.other": "# weitere Suchergebnisse auf dieser Seite", "search.result.none": "Keine Suchergebnisse", "search.result.one": "1 Suchergebnis", "search.result.other": "# Suchergebnisse", "search.result.placeholder": "Suchbegriff eingeben", "search.result.term.missing": "Es fehlt", "select.version.title": "Version ausw\u00e4hlen"}}</script>
<script src="../../../../assets/javascripts/bundle.748e2769.min.js"></script>
<script src="../../../../assets/javascripts/bundle.c2e1ee47.min.js"></script>
<script src="../../../../assets/javascripts/client.js"></script>

Datei anzeigen

@ -11,7 +11,7 @@
<link rel="canonical" href="https://mailcow.github.io/mailcow-dockerized-docs/de/manual-guides/Dovecot/u_e-dovecot-public_folder/">
<link rel="icon" href="../../../../assets/images/favicon.png">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.11">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.14">
@ -19,10 +19,10 @@
<link rel="stylesheet" href="../../../../assets/stylesheets/main.8c5ef100.min.css">
<link rel="stylesheet" href="../../../../assets/stylesheets/main.3de6f41f.min.css">
<link rel="stylesheet" href="../../../../assets/stylesheets/palette.9647289d.min.css">
<link rel="stylesheet" href="../../../../assets/stylesheets/palette.cc9b2e1e.min.css">
@ -2426,28 +2426,25 @@
<p>Erstellen Sie einen neuen öffentlichen Namespace "Public" und eine Mailbox "Develcow" innerhalb dieses Namespaces:</p>
<p>Bearbeiten oder erstellen Sie <code>data/conf/dovecot/extra.conf</code>, fĂĽgen Sie hinzu:</p>
<div class="highlight"><pre><span></span><code>namespace {
<p><code>namespace {
type = public
separator = /
prefix = Public/
location = maildir:/var/vmail/public:INDEXPVT=~/public
subscriptions = yes
mailbox &quot;Develcow&quot; {
mailbox "Develcow" {
auto = subscribe
}
}
</code></pre></div>
}</code></p>
<p><code>:INDEXPVT=~/public</code> kann weggelassen werden, wenn die Flags, die pro Benutzer gesehen werden, nicht gewĂĽnscht sind.</p>
<p>Die neue Mailbox im öffentlichen Namensraum wird von den Benutzern automatisch abonniert.</p>
<p>Um allen authentifizierten Benutzern vollen Zugriff auf das neue Postfach (nicht auf den gesamten Namespace) zu gewähren, führen Sie aus:</p>
<div class="highlight"><pre><span></span><code>docker-compose exec dovecot-mailcow doveadm acl set -A &quot;Public/Develcow&quot; &quot;authenticated&quot; lookup read write write-seen write-deleted insert post delete expunge create
</code></pre></div>
<p><code>docker-compose exec dovecot-mailcow doveadm acl set -A "Public/Develcow" "authenticated" lookup read write write-seen write-deleted insert post delete expunge create</code></p>
<p>Passen Sie den Befehl an Ihre Bedürfnisse an, wenn Sie detailliertere Rechte pro Benutzer vergeben möchten (verwenden Sie z.B. <code>-u user@domain</code> anstelle von <code>-A</code>).</p>
<h2 id="erlaube-authentifizierten-benutzern-den-zugriff-auf-den-gesamten-offentlichen-namespace">Erlaube authentifizierten Benutzern den Zugriff auf den gesamten öffentlichen Namespace<a class="headerlink" href="#erlaube-authentifizierten-benutzern-den-zugriff-auf-den-gesamten-offentlichen-namespace" title="Permanent link">&para;</a></h2>
<p>Um allen authentifizierten Benutzern vollen Zugriff auf den gesamten öffentlichen Namespace und seine Unterordner zu gewähren, erstellen Sie eine neue Datei <code>dovecot-acl</code> im Namespace-Stammverzeichnis:</p>
<p>Ă–ffnen/bearbeiten/erstellen Sie <code>/var/lib/docker/volumes/mailcowdockerized_vmail-vol-1/_data/public/dovecot-acl</code> (passen Sie den Pfad entsprechend an), um die globale ACL-Datei mit dem folgenden Inhalt zu erstellen:</p>
<div class="highlight"><pre><span></span><code>authenticated kxeilprwts
</code></pre></div>
<p><code>authenticated kxeilprwts</code></p>
<p>kxeilprwts" ist gleichbedeutend mit "lookup read write write-seen write-deleted insert post delete expunge create".</p>
<p>Sie können <code>doveadm acl set -u user@domain "Public/Develcow" user=user@domain lookup read</code> verwenden, um den Zugriff für einen einzelnen Benutzer zu beschränken. Sie können es auch umdrehen und den Zugriff für alle Benutzer auf "lr" beschränken und nur einigen Benutzern vollen Zugriff gewähren.</p>
<p>Siehe <a href="https://doc.dovecot.org/settings/plugin/acl/">Dovecot ACL</a> fĂĽr weitere Informationen ĂĽber ACL.</p>
@ -2570,7 +2567,7 @@
<script id="__config" type="application/json">{"base": "../../../..", "features": ["navigation.top", "navigation.tracking"], "search": "../../../../assets/javascripts/workers/search.2a1c317c.min.js", "translations": {"clipboard.copied": "In Zwischenablage kopiert", "clipboard.copy": "In Zwischenablage kopieren", "search.config.lang": "de", "search.config.pipeline": "trimmer, stopWordFilter", "search.config.separator": "[\\s\\-]+", "search.placeholder": "Suche", "search.result.more.one": "1 weiteres Suchergebnis auf dieser Seite", "search.result.more.other": "# weitere Suchergebnisse auf dieser Seite", "search.result.none": "Keine Suchergebnisse", "search.result.one": "1 Suchergebnis", "search.result.other": "# Suchergebnisse", "search.result.placeholder": "Suchbegriff eingeben", "search.result.term.missing": "Es fehlt", "select.version.title": "Version ausw\u00e4hlen"}}</script>
<script src="../../../../assets/javascripts/bundle.748e2769.min.js"></script>
<script src="../../../../assets/javascripts/bundle.c2e1ee47.min.js"></script>
<script src="../../../../assets/javascripts/client.js"></script>

Datei anzeigen

@ -11,7 +11,7 @@
<link rel="canonical" href="https://mailcow.github.io/mailcow-dockerized-docs/de/manual-guides/Dovecot/u_e-dovecot-static_master/">
<link rel="icon" href="../../../../assets/images/favicon.png">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.11">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.14">
@ -19,10 +19,10 @@
<link rel="stylesheet" href="../../../../assets/stylesheets/main.8c5ef100.min.css">
<link rel="stylesheet" href="../../../../assets/stylesheets/main.3de6f41f.min.css">
<link rel="stylesheet" href="../../../../assets/stylesheets/palette.9647289d.min.css">
<link rel="stylesheet" href="../../../../assets/stylesheets/palette.cc9b2e1e.min.css">
@ -2379,9 +2379,8 @@
<p><strong>Das wird empfohlen und sollte nicht geändert werden.</strong></p>
<p>Wenn der Benutzer trotzdem statisch sein soll, geben Sie bitte zwei Variablen in <code>mailcow.conf</code> an.</p>
<p><strong>Beide</strong> Parameter dĂĽrfen nicht leer sein!</p>
<div class="highlight"><pre><span></span><code>DOVECOT_MASTER_USER=mymasteruser
DOVECOT_MASTER_PASS=mysecretpass
</code></pre></div>
<p><code>DOVECOT_MASTER_USER=mymasteruser
DOVECOT_MASTER_PASS=mysecretpass</code></p>
<p>FĂĽhren Sie <code>docker-compose up -d</code> aus, um Ihre Ă„nderungen zu ĂĽbernehmen.</p>
<p>Der statische Master-Benutzername wird zu <code>DOVECOT_MASTER_USER@mailcow.local</code> erweitert.</p>
<p>Um sich als <code>test@example.org</code> anzumelden, wĂĽrde dies <code>test@example.org*mymasteruser@mailcow.local</code> mit dem oben angegebenen Passwort entsprechen.</p>
@ -2506,7 +2505,7 @@ Es wird kein Hauptbenutzer benötigt.</p>
<script id="__config" type="application/json">{"base": "../../../..", "features": ["navigation.top", "navigation.tracking"], "search": "../../../../assets/javascripts/workers/search.2a1c317c.min.js", "translations": {"clipboard.copied": "In Zwischenablage kopiert", "clipboard.copy": "In Zwischenablage kopieren", "search.config.lang": "de", "search.config.pipeline": "trimmer, stopWordFilter", "search.config.separator": "[\\s\\-]+", "search.placeholder": "Suche", "search.result.more.one": "1 weiteres Suchergebnis auf dieser Seite", "search.result.more.other": "# weitere Suchergebnisse auf dieser Seite", "search.result.none": "Keine Suchergebnisse", "search.result.one": "1 Suchergebnis", "search.result.other": "# Suchergebnisse", "search.result.placeholder": "Suchbegriff eingeben", "search.result.term.missing": "Es fehlt", "select.version.title": "Version ausw\u00e4hlen"}}</script>
<script src="../../../../assets/javascripts/bundle.748e2769.min.js"></script>
<script src="../../../../assets/javascripts/bundle.c2e1ee47.min.js"></script>
<script src="../../../../assets/javascripts/client.js"></script>

Datei anzeigen

@ -11,7 +11,7 @@
<link rel="canonical" href="https://mailcow.github.io/mailcow-dockerized-docs/de/manual-guides/Dovecot/u_e-dovecot-vmail-volume/">
<link rel="icon" href="../../../../assets/images/favicon.png">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.11">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.14">
@ -19,10 +19,10 @@
<link rel="stylesheet" href="../../../../assets/stylesheets/main.8c5ef100.min.css">
<link rel="stylesheet" href="../../../../assets/stylesheets/main.3de6f41f.min.css">
<link rel="stylesheet" href="../../../../assets/stylesheets/palette.9647289d.min.css">
<link rel="stylesheet" href="../../../../assets/stylesheets/palette.cc9b2e1e.min.css">
@ -2470,41 +2470,39 @@
<p>Neuere Docker-Versionen scheinen sich über bestehende Volumes zu beschweren. Man kann dies vorübergehend beheben, indem man das bestehende Volume entfernt und mailcow mit der Override-Datei startet. Aber es scheint nach einem Neustart problematisch zu sein (muss bestätigt werden).</p>
</div>
<p>Ein einfacher, schmutziger, aber stabiler Workaround ist es, mailcow zu stoppen (<code>docker-compose down</code>), <code>/var/lib/docker/volumes/mailcowdockerized_vmail-vol-1/_data</code> zu entfernen und einen neuen Link zu Ihrem entfernten Dateisystem zu erstellen, zum Beispiel:</p>
<div class="highlight"><pre><span></span><code>mv /var/lib/docker/volumes/mailcowdockerized_vmail-vol-1/_data /var/lib/docker/volumes/mailcowdockerized_vmail-vol-1/_data_backup
ln -s /mnt/volume-xy/vmail_data /var/lib/docker/volumes/mailcowdockerized_vmail-vol-1/_data
</code></pre></div>
<p><code>mv /var/lib/docker/volumes/mailcowdockerized_vmail-vol-1/_data /var/lib/docker/volumes/mailcowdockerized_vmail-vol-1/_data_backup
ln -s /mnt/volume-xy/vmail_data /var/lib/docker/volumes/mailcowdockerized_vmail-vol-1/_data</code></p>
<p>Starten Sie anschlieĂźend mailcow.</p>
<hr />
<h2 id="der-alte-weg">Der "alte" Weg<a class="headerlink" href="#der-alte-weg" title="Permanent link">&para;</a></h2>
<p>Wenn man einen anderen Ordner für das vmail-Volume verwenden möchte, kann man eine <code>docker-compose.override.yml</code> Datei erstellen und den folgenden Inhalt hinzufügen:</p>
<div class="highlight"><pre><span></span><code>version: &#39;2.1&#39;
<p><code>version: '2.1'
volumes:
vmail-vol-1:
driver_opts:
type: none
device: /data/mailcow/vmail
o: bind
</code></pre></div>
o: bind</code></p>
<h3 id="verschieben-eines-bestehenden-vmail-ordners">Verschieben eines bestehenden vmail-Ordners:<a class="headerlink" href="#verschieben-eines-bestehenden-vmail-ordners" title="Permanent link">&para;</a></h3>
<ul>
<li>Finden Sie den aktuellen vmail-Ordner anhand seines "Mountpoint"-Attributs: <code>docker volume inspect mailcowdockerized_vmail-vol-1</code></li>
</ul>
<div class="highlight"><pre><span></span><code>[
<p><code>hl_lines="10"
[
{
&quot;CreatedAt&quot;: &quot;2019-06-16T22:08:34+02:00&quot;,
&quot;Driver&quot;: &quot;local&quot;,
&quot;Labels&quot;: {
&quot;com.docker.compose.project&quot;: &quot;mailcowdockerized&quot;,
&quot;com.docker.compose.version&quot;: &quot;1.23.2&quot;,
&quot;com.docker.compose.volume&quot;: &quot;vmail-vol-1&quot;
"CreatedAt": "2019-06-16T22:08:34+02:00",
"Driver": "local",
"Labels": {
"com.docker.compose.project": "mailcowdockerized",
"com.docker.compose.version": "1.23.2",
"com.docker.compose.volume": "vmail-vol-1"
},
<span class="hll"> &quot;Mountpoint&quot;: &quot;/var/lib/docker/volumes/mailcowdockerized_vmail-vol-1/_data&quot;,
</span> &quot;Name&quot;: &quot;mailcowdockerized_vmail-vol-1&quot;,
&quot;Options&quot;: null,
&quot;Scope&quot;: &quot;local&quot;
"Mountpoint": "/var/lib/docker/volumes/mailcowdockerized_vmail-vol-1/_data",
"Name": "mailcowdockerized_vmail-vol-1",
"Options": null,
"Scope": "local"
}
]
</code></pre></div>
]</code></p>
<ul>
<li>Kopieren Sie den Inhalt des <code>Mountpoint</code>-Ordners an den neuen Speicherort (z.B. <code>/data/mailcow/vmail</code>) mit <code>cp -a</code>, <code>rsync -a</code> oder einem ähnlichen, nicht strikten Kopierbefehl</li>
<li>Stoppen Sie mailcow durch AusfĂĽhren von <code>docker-compose down</code> aus Ihrem mailcow-Stammverzeichnis (z.B. <code>/opt/mailcow-dockerized</code>)</li>
@ -2631,7 +2629,7 @@ volumes:
<script id="__config" type="application/json">{"base": "../../../..", "features": ["navigation.top", "navigation.tracking"], "search": "../../../../assets/javascripts/workers/search.2a1c317c.min.js", "translations": {"clipboard.copied": "In Zwischenablage kopiert", "clipboard.copy": "In Zwischenablage kopieren", "search.config.lang": "de", "search.config.pipeline": "trimmer, stopWordFilter", "search.config.separator": "[\\s\\-]+", "search.placeholder": "Suche", "search.result.more.one": "1 weiteres Suchergebnis auf dieser Seite", "search.result.more.other": "# weitere Suchergebnisse auf dieser Seite", "search.result.none": "Keine Suchergebnisse", "search.result.one": "1 Suchergebnis", "search.result.other": "# Suchergebnisse", "search.result.placeholder": "Suchbegriff eingeben", "search.result.term.missing": "Es fehlt", "select.version.title": "Version ausw\u00e4hlen"}}</script>
<script src="../../../../assets/javascripts/bundle.748e2769.min.js"></script>
<script src="../../../../assets/javascripts/bundle.c2e1ee47.min.js"></script>
<script src="../../../../assets/javascripts/client.js"></script>

Datei anzeigen

@ -11,7 +11,7 @@
<link rel="canonical" href="https://mailcow.github.io/mailcow-dockerized-docs/de/manual-guides/Nginx/u_e-nginx_custom/">
<link rel="icon" href="../../../../assets/images/favicon.png">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.11">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.14">
@ -19,10 +19,10 @@
<link rel="stylesheet" href="../../../../assets/stylesheets/main.8c5ef100.min.css">
<link rel="stylesheet" href="../../../../assets/stylesheets/main.3de6f41f.min.css">
<link rel="stylesheet" href="../../../../assets/stylesheets/palette.9647289d.min.css">
<link rel="stylesheet" href="../../../../assets/stylesheets/palette.cc9b2e1e.min.css">
@ -2472,9 +2472,9 @@
<h2 id="neue-website">Neue Website<a class="headerlink" href="#neue-website" title="Permanent link">&para;</a></h2>
<p>Um persistente (ĂĽber Updates) Sites zu erstellen, die von mailcow: dockerized gehostet werden, muss eine neue Site-Konfiguration in <code>data/conf/nginx/</code> platziert werden:</p>
<p>Eine gute Vorlage, um damit zu beginnen:</p>
<div class="highlight"><pre><span></span><code>nano data/conf/nginx/my_custom_site.conf
</code></pre></div>
<div class="highlight"><pre><span></span><code>server {
<p><code>nano data/conf/nginx/my_custom_site.conf</code></p>
<p>``` hl_lines="16"
server {
ssl_certificate /etc/ssl/mail/cert.pem;
ssl_certificate_key /etc/ssl/mail/key.pem;
ssl_protocols TLSv1.2 TLSv1.3;
@ -2489,29 +2489,27 @@
# Location: data/web
root /web;
# Location: data/web/mysite.com
<span class="hll"> #root /web/mysite.com
</span> include /etc/nginx/conf.d/listen_plain.active;
#root /web/mysite.com
include /etc/nginx/conf.d/listen_plain.active;
include /etc/nginx/conf.d/listen_ssl.active;
server_name mysite.example.org;
server_tokens off;
# This allows acme to be validated even with a different web root
server_tokens off;</p>
<p># This allows acme to be validated even with a different web root
location ^~ /.well-known/acme-challenge/ {
default_type &quot;text/plain&quot;;
default_type "text/plain";
rewrite /.well-known/acme-challenge/(.*) /$1 break;
root /web/.well-known/acme-challenge/;
}
if ($scheme = http) {
}</p>
<p>if ($scheme = http) {
return 301 https://$server_name$request_uri;
}
}
</code></pre></div>
```</p>
<h2 id="neue-website-mit-proxy-zu-einem-entfernten-location">Neue Website mit Proxy zu einem entfernten Location<a class="headerlink" href="#neue-website-mit-proxy-zu-einem-entfernten-location" title="Permanent link">&para;</a></h2>
<p>Ein weiteres Beispiel mit einer Reverse-Proxy-Konfiguration:</p>
<div class="highlight"><pre><span></span><code>nano data/conf/nginx/my_custom_site.conf
</code></pre></div>
<div class="highlight"><pre><span></span><code>server {
<p><code>nano data/conf/nginx/my_custom_site.conf</code></p>
<p>``` hl_lines="16 28"
server {
ssl_certificate /etc/ssl/mail/cert.pem;
ssl_certificate_key /etc/ssl/mail/key.pem;
ssl_protocols TLSv1.2 TLSv1.3;
@ -2526,20 +2524,17 @@
root /web;
include /etc/nginx/conf.d/listen_plain.active;
include /etc/nginx/conf.d/listen_ssl.active;
<span class="hll"> server_name example.domain.tld;
</span> server_tokens off;
location ^~ /.well-known/acme-challenge/ {
server_name example.domain.tld;
server_tokens off;</p>
<p>location ^~ /.well-known/acme-challenge/ {
allow all;
default_type &quot;text/plain&quot;;
}
if ($scheme = http) {
default_type "text/plain";
}</p>
<p>if ($scheme = http) {
return 301 https://$host$request_uri;
}
<span class="hll"> location / {
</span> proxy_pass http://service:3000/;
}</p>
<p>location / {
proxy_pass <a href="http://service:3000/">http://service:3000/</a>;
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;
@ -2547,18 +2542,16 @@
client_max_body_size 0;
}
}
</code></pre></div>
```</p>
<h2 id="konfig-erweiterung-in-mailcows-nginx">Konfig-Erweiterung in mailcows Nginx<a class="headerlink" href="#konfig-erweiterung-in-mailcows-nginx" title="Permanent link">&para;</a></h2>
<p>Der Dateiname, der für eine neue Site verwendet wird, ist nicht wichtig, solange der Dateiname eine .conf-Erweiterung trägt.</p>
<p>Es ist auch möglich, die Konfiguration der Standarddatei <code>site.conf</code> Datei zu erweitern:</p>
<div class="highlight"><pre><span></span><code>nano data/conf/nginx/site.my_content.custom
</code></pre></div>
<p><code>nano data/conf/nginx/site.my_content.custom</code></p>
<p>Dieser Dateiname muss keine ".conf"-Erweiterung haben, sondern folgt dem Muster <code>site.*.custom</code>, wobei <code>*</code> ein eigener Name ist.</p>
<p>Wenn PHP in eine benutzerdefinierte Site eingebunden werden soll, verwenden Sie bitte den PHP-FPM-Listener auf phpfpm:9002 oder erstellen Sie einen neuen Listener in <code>data/conf/phpfpm/php-fpm.d/pools.conf</code>.</p>
<p>Starten Sie Nginx neu (und PHP-FPM, falls ein neuer Listener erstellt wurde):</p>
<div class="highlight"><pre><span></span><code>docker-compose restart nginx-mailcow
docker-compose restart php-fpm-mailcow
</code></pre></div>
<p><code>docker-compose restart nginx-mailcow
docker-compose restart php-fpm-mailcow</code></p>
<hr>
<div class="md-source-file">
@ -2678,7 +2671,7 @@ docker-compose restart php-fpm-mailcow
<script id="__config" type="application/json">{"base": "../../../..", "features": ["navigation.top", "navigation.tracking"], "search": "../../../../assets/javascripts/workers/search.2a1c317c.min.js", "translations": {"clipboard.copied": "In Zwischenablage kopiert", "clipboard.copy": "In Zwischenablage kopieren", "search.config.lang": "de", "search.config.pipeline": "trimmer, stopWordFilter", "search.config.separator": "[\\s\\-]+", "search.placeholder": "Suche", "search.result.more.one": "1 weiteres Suchergebnis auf dieser Seite", "search.result.more.other": "# weitere Suchergebnisse auf dieser Seite", "search.result.none": "Keine Suchergebnisse", "search.result.one": "1 Suchergebnis", "search.result.other": "# Suchergebnisse", "search.result.placeholder": "Suchbegriff eingeben", "search.result.term.missing": "Es fehlt", "select.version.title": "Version ausw\u00e4hlen"}}</script>
<script src="../../../../assets/javascripts/bundle.748e2769.min.js"></script>
<script src="../../../../assets/javascripts/bundle.c2e1ee47.min.js"></script>
<script src="../../../../assets/javascripts/client.js"></script>

Datei anzeigen

@ -11,7 +11,7 @@
<link rel="canonical" href="https://mailcow.github.io/mailcow-dockerized-docs/de/manual-guides/Nginx/u_e-nginx_webmail-site/">
<link rel="icon" href="../../../../assets/images/favicon.png">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.11">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.14">
@ -19,10 +19,10 @@
<link rel="stylesheet" href="../../../../assets/stylesheets/main.8c5ef100.min.css">
<link rel="stylesheet" href="../../../../assets/stylesheets/main.3de6f41f.min.css">
<link rel="stylesheet" href="../../../../assets/stylesheets/palette.9647289d.min.css">
<link rel="stylesheet" href="../../../../assets/stylesheets/palette.cc9b2e1e.min.css">
@ -2378,7 +2378,8 @@
<p><strong>WICHTIG</strong>: Diese Anleitung gilt nur fĂĽr Konfigurationen, bei denen SNI nicht aktiviert ist. Wenn SNI aktiviert ist, muss der Zertifikatspfad angepasst werden. Etwas wie <code>ssl_certificate,key /etc/ssl/mail/webmail.example.org/cert.pem,key.pem;</code> wird genĂĽgen. <strong>Aber</strong>: Das Zertifikat sollte <strong>zuerst</strong> bezogen werden und erst wenn das Zertifikat existiert, sollte eine Site Config erstellt werden. Nginx wird nicht starten, wenn es das Zertifikat und den SchlĂĽssel nicht finden kann.</p>
<p>Um eine Subdomain <code>webmail.example.org</code> zu erstellen und sie auf SOGo umzuleiten, mĂĽssen Sie eine <strong>neue</strong> Nginx-Site erstellen. Achten Sie dabei auf "CHANGE_TO_MAILCOW_HOSTNAME"!</p>
<p><strong>nano data/conf/nginx/webmail.conf</strong></p>
<div class="highlight"><pre><span></span><code>server {
<p>``` hl_lines="9 17"
server {
ssl_certificate /etc/ssl/mail/cert.pem;
ssl_certificate_key /etc/ssl/mail/key.pem;
index index.php index.html;
@ -2386,23 +2387,21 @@
root /web;
include /etc/nginx/conf.d/listen_plain.active;
include /etc/nginx/conf.d/listen_ssl.active;
<span class="hll"> server_name webmail.example.org;
</span> server_tokens off;
server_name webmail.example.org;
server_tokens off;
location ^~ /.well-known/acme-challenge/ {
allow all;
default_type &quot;text/plain&quot;;
default_type "text/plain";
}</p>
<p>location / {
return 301 <a href="https://CHANGE_TO_MAILCOW_HOSTNAME/SOGo">https://CHANGE_TO_MAILCOW_HOSTNAME/SOGo</a>;
}
location / {
<span class="hll"> return 301 https://CHANGE_TO_MAILCOW_HOSTNAME/SOGo;
</span> }
}
</code></pre></div>
```</p>
<p>Speichern Sie und starten Sie Nginx neu: <code>docker-compose restart nginx-mailcow</code>.</p>
<p>Ă–ffnen Sie nun <code>mailcow.conf</code> und suchen Sie <code>ADDITIONAL_SAN</code>.
FĂĽgen Sie <code>webmail.example.org</code> zu diesem Array hinzu, verwenden Sie keine AnfĂĽhrungszeichen!</p>
<div class="highlight"><pre><span></span><code>ADDITIONAL_SAN=webmail.example.org
</code></pre></div>
<p><code>ADDITIONAL_SAN=webmail.example.org</code></p>
<p>Führen Sie <code>docker-compose up -d</code> aus. Siehe "acme-mailcow" und "nginx-mailcow" Logs, wenn etwas fehlschlägt.</p>
<hr>
@ -2523,7 +2522,7 @@ FĂĽgen Sie <code>webmail.example.org</code> zu diesem Array hinzu, verwenden Sie
<script id="__config" type="application/json">{"base": "../../../..", "features": ["navigation.top", "navigation.tracking"], "search": "../../../../assets/javascripts/workers/search.2a1c317c.min.js", "translations": {"clipboard.copied": "In Zwischenablage kopiert", "clipboard.copy": "In Zwischenablage kopieren", "search.config.lang": "de", "search.config.pipeline": "trimmer, stopWordFilter", "search.config.separator": "[\\s\\-]+", "search.placeholder": "Suche", "search.result.more.one": "1 weiteres Suchergebnis auf dieser Seite", "search.result.more.other": "# weitere Suchergebnisse auf dieser Seite", "search.result.none": "Keine Suchergebnisse", "search.result.one": "1 Suchergebnis", "search.result.other": "# Suchergebnisse", "search.result.placeholder": "Suchbegriff eingeben", "search.result.term.missing": "Es fehlt", "select.version.title": "Version ausw\u00e4hlen"}}</script>
<script src="../../../../assets/javascripts/bundle.748e2769.min.js"></script>
<script src="../../../../assets/javascripts/bundle.c2e1ee47.min.js"></script>
<script src="../../../../assets/javascripts/client.js"></script>

Datei anzeigen

@ -11,7 +11,7 @@
<link rel="canonical" href="https://mailcow.github.io/mailcow-dockerized-docs/de/manual-guides/Postfix/u_e-postfix-attachment_size/">
<link rel="icon" href="../../../../assets/images/favicon.png">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.11">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.14">
@ -19,10 +19,10 @@
<link rel="stylesheet" href="../../../../assets/stylesheets/main.8c5ef100.min.css">
<link rel="stylesheet" href="../../../../assets/stylesheets/main.3de6f41f.min.css">
<link rel="stylesheet" href="../../../../assets/stylesheets/palette.9647289d.min.css">
<link rel="stylesheet" href="../../../../assets/stylesheets/palette.cc9b2e1e.min.css">
@ -2377,8 +2377,7 @@
<p>Ă–ffnen Sie <code>data/conf/postfix/extra.cf</code> und setzen Sie das <code>message_size_limit</code> entsprechend in Bytes. Siehe <code>main.cf</code> fĂĽr den Standardwert.</p>
<p>Starten Sie Postfix neu:</p>
<div class="highlight"><pre><span></span><code>docker-compose restart postfix-mailcow
</code></pre></div>
<p><code>docker-compose restart postfix-mailcow</code></p>
<hr>
<div class="md-source-file">
@ -2498,7 +2497,7 @@
<script id="__config" type="application/json">{"base": "../../../..", "features": ["navigation.top", "navigation.tracking"], "search": "../../../../assets/javascripts/workers/search.2a1c317c.min.js", "translations": {"clipboard.copied": "In Zwischenablage kopiert", "clipboard.copy": "In Zwischenablage kopieren", "search.config.lang": "de", "search.config.pipeline": "trimmer, stopWordFilter", "search.config.separator": "[\\s\\-]+", "search.placeholder": "Suche", "search.result.more.one": "1 weiteres Suchergebnis auf dieser Seite", "search.result.more.other": "# weitere Suchergebnisse auf dieser Seite", "search.result.none": "Keine Suchergebnisse", "search.result.one": "1 Suchergebnis", "search.result.other": "# Suchergebnisse", "search.result.placeholder": "Suchbegriff eingeben", "search.result.term.missing": "Es fehlt", "select.version.title": "Version ausw\u00e4hlen"}}</script>
<script src="../../../../assets/javascripts/bundle.748e2769.min.js"></script>
<script src="../../../../assets/javascripts/bundle.c2e1ee47.min.js"></script>
<script src="../../../../assets/javascripts/client.js"></script>

Datei anzeigen

@ -11,7 +11,7 @@
<link rel="canonical" href="https://mailcow.github.io/mailcow-dockerized-docs/de/manual-guides/Postfix/u_e-postfix-custom_transport/">
<link rel="icon" href="../../../../assets/images/favicon.png">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.11">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.14">
@ -19,10 +19,10 @@
<link rel="stylesheet" href="../../../../assets/stylesheets/main.8c5ef100.min.css">
<link rel="stylesheet" href="../../../../assets/stylesheets/main.3de6f41f.min.css">
<link rel="stylesheet" href="../../../../assets/stylesheets/palette.9647289d.min.css">
<link rel="stylesheet" href="../../../../assets/stylesheets/palette.cc9b2e1e.min.css">
@ -2497,7 +2497,7 @@
<script id="__config" type="application/json">{"base": "../../../..", "features": ["navigation.top", "navigation.tracking"], "search": "../../../../assets/javascripts/workers/search.2a1c317c.min.js", "translations": {"clipboard.copied": "In Zwischenablage kopiert", "clipboard.copy": "In Zwischenablage kopieren", "search.config.lang": "de", "search.config.pipeline": "trimmer, stopWordFilter", "search.config.separator": "[\\s\\-]+", "search.placeholder": "Suche", "search.result.more.one": "1 weiteres Suchergebnis auf dieser Seite", "search.result.more.other": "# weitere Suchergebnisse auf dieser Seite", "search.result.none": "Keine Suchergebnisse", "search.result.one": "1 Suchergebnis", "search.result.other": "# Suchergebnisse", "search.result.placeholder": "Suchbegriff eingeben", "search.result.term.missing": "Es fehlt", "select.version.title": "Version ausw\u00e4hlen"}}</script>
<script src="../../../../assets/javascripts/bundle.748e2769.min.js"></script>
<script src="../../../../assets/javascripts/bundle.c2e1ee47.min.js"></script>
<script src="../../../../assets/javascripts/client.js"></script>

Datei anzeigen

@ -11,7 +11,7 @@
<link rel="canonical" href="https://mailcow.github.io/mailcow-dockerized-docs/de/manual-guides/Postfix/u_e-postfix-disable_sender_verification/">
<link rel="icon" href="../../../../assets/images/favicon.png">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.11">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.14">
@ -19,10 +19,10 @@
<link rel="stylesheet" href="../../../../assets/stylesheets/main.8c5ef100.min.css">
<link rel="stylesheet" href="../../../../assets/stylesheets/main.3de6f41f.min.css">
<link rel="stylesheet" href="../../../../assets/stylesheets/palette.9647289d.min.css">
<link rel="stylesheet" href="../../../../assets/stylesheets/palette.cc9b2e1e.min.css">
@ -2444,14 +2444,11 @@
<h2 id="veraltete-anleitung-nicht-fur-neuere-mailcows-verwenden">Veraltete Anleitung (NICHT FĂśR NEUERE MAILCOWS VERWENDEN!)<a class="headerlink" href="#veraltete-anleitung-nicht-fur-neuere-mailcows-verwenden" title="Permanent link">&para;</a></h2>
<p>Diese Option ist keine Best-Practice und sollte nur verwendet werden, wenn es keine andere Möglichkeit gibt, das zu erreichen, was Sie erreichen wollen.</p>
<p>Erstellen Sie einfach eine Datei <code>data/conf/postfix/check_sasl_access</code> und tragen Sie den folgenden Inhalt ein. Dieser Benutzer muss in Ihrer Installation existieren und muss sich vor dem Versenden von Mails authentifizieren.
<div class="highlight"><pre><span></span><code>user-to-allow-everything@example.com OK
</code></pre></div></p>
<code>user-to-allow-everything@example.com OK</code></p>
<p>Ă–ffnen Sie <code>data/conf/postfix/main.cf</code> und suchen Sie <code>smtpd_sender_restrictions</code>. FĂĽgen Sie <code>check_sasl_access hash:/opt/postfix/conf/check_sasl_access</code> wie folgt ein:
<div class="highlight"><pre><span></span><code>smtpd_sender_restrictions = check_sasl_access hash:/opt/postfix/conf/check_sasl_access reject_authenticated_sender_login_mismatch [...]
</code></pre></div></p>
<code>smtpd_sender_restrictions = check_sasl_access hash:/opt/postfix/conf/check_sasl_access reject_authenticated_sender_login_mismatch [...]</code></p>
<p>Postmap auf check_sasl_access ausfĂĽhren:</p>
<div class="highlight"><pre><span></span><code>docker-compose exec postfix-mailcow postmap /opt/postfix/conf/check_sasl_access
</code></pre></div>
<p><code>docker-compose exec postfix-mailcow postmap /opt/postfix/conf/check_sasl_access</code></p>
<p>Starten Sie den Postfix-Container neu.</p>
<hr>
@ -2572,7 +2569,7 @@
<script id="__config" type="application/json">{"base": "../../../..", "features": ["navigation.top", "navigation.tracking"], "search": "../../../../assets/javascripts/workers/search.2a1c317c.min.js", "translations": {"clipboard.copied": "In Zwischenablage kopiert", "clipboard.copy": "In Zwischenablage kopieren", "search.config.lang": "de", "search.config.pipeline": "trimmer, stopWordFilter", "search.config.separator": "[\\s\\-]+", "search.placeholder": "Suche", "search.result.more.one": "1 weiteres Suchergebnis auf dieser Seite", "search.result.more.other": "# weitere Suchergebnisse auf dieser Seite", "search.result.none": "Keine Suchergebnisse", "search.result.one": "1 Suchergebnis", "search.result.other": "# Suchergebnisse", "search.result.placeholder": "Suchbegriff eingeben", "search.result.term.missing": "Es fehlt", "select.version.title": "Version ausw\u00e4hlen"}}</script>
<script src="../../../../assets/javascripts/bundle.748e2769.min.js"></script>
<script src="../../../../assets/javascripts/bundle.c2e1ee47.min.js"></script>
<script src="../../../../assets/javascripts/client.js"></script>

Datei anzeigen

@ -11,7 +11,7 @@
<link rel="canonical" href="https://mailcow.github.io/mailcow-dockerized-docs/de/manual-guides/Postfix/u_e-postfix-extra_cf/">
<link rel="icon" href="../../../../assets/images/favicon.png">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.11">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.14">
@ -19,10 +19,10 @@
<link rel="stylesheet" href="../../../../assets/stylesheets/main.8c5ef100.min.css">
<link rel="stylesheet" href="../../../../assets/stylesheets/main.3de6f41f.min.css">
<link rel="stylesheet" href="../../../../assets/stylesheets/palette.9647289d.min.css">
<link rel="stylesheet" href="../../../../assets/stylesheets/palette.cc9b2e1e.min.css">
@ -2379,8 +2379,7 @@
<p>Postfix wird sich einmal nach dem Start von postfix-mailcow ĂĽber doppelte Werte beschweren, dies ist beabsichtigt.</p>
<p>Syslog-ng wurde so konfiguriert, dass es diese Warnungen ausblendet, während Postfix läuft, um die Log-Dateien nicht jedes Mal mit unnötigen Informationen zu spammen, wenn ein Dienst benutzt wird.</p>
<p>Starten Sie <code>postfix-mailcow</code> neu, um Ihre Ă„nderungen zu ĂĽbernehmen:</p>
<div class="highlight"><pre><span></span><code>docker-compose restart postfix-mailcow
</code></pre></div>
<p><code>docker-compose restart postfix-mailcow</code></p>
<hr>
<div class="md-source-file">
@ -2500,7 +2499,7 @@
<script id="__config" type="application/json">{"base": "../../../..", "features": ["navigation.top", "navigation.tracking"], "search": "../../../../assets/javascripts/workers/search.2a1c317c.min.js", "translations": {"clipboard.copied": "In Zwischenablage kopiert", "clipboard.copy": "In Zwischenablage kopieren", "search.config.lang": "de", "search.config.pipeline": "trimmer, stopWordFilter", "search.config.separator": "[\\s\\-]+", "search.placeholder": "Suche", "search.result.more.one": "1 weiteres Suchergebnis auf dieser Seite", "search.result.more.other": "# weitere Suchergebnisse auf dieser Seite", "search.result.none": "Keine Suchergebnisse", "search.result.one": "1 Suchergebnis", "search.result.other": "# Suchergebnisse", "search.result.placeholder": "Suchbegriff eingeben", "search.result.term.missing": "Es fehlt", "select.version.title": "Version ausw\u00e4hlen"}}</script>
<script src="../../../../assets/javascripts/bundle.748e2769.min.js"></script>
<script src="../../../../assets/javascripts/bundle.c2e1ee47.min.js"></script>
<script src="../../../../assets/javascripts/client.js"></script>

Datei anzeigen

@ -11,7 +11,7 @@
<link rel="canonical" href="https://mailcow.github.io/mailcow-dockerized-docs/de/manual-guides/Postfix/u_e-postfix-pflogsumm/">
<link rel="icon" href="../../../../assets/images/favicon.png">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.11">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.14">
@ -19,10 +19,10 @@
<link rel="stylesheet" href="../../../../assets/stylesheets/main.8c5ef100.min.css">
<link rel="stylesheet" href="../../../../assets/stylesheets/main.3de6f41f.min.css">
<link rel="stylesheet" href="../../../../assets/stylesheets/palette.9647289d.min.css">
<link rel="stylesheet" href="../../../../assets/stylesheets/palette.cc9b2e1e.min.css">
@ -2376,13 +2376,11 @@
<h1>Statistik mit pflogsumm</h1>
<p>Um pflogsumm mit dem Standard-Logging-Treiber zu verwenden, mĂĽssen wir postfix-mailcow ĂĽber docker logs abfragen und die Ausgabe zu pflogsumm leiten:</p>
<div class="highlight"><pre><span></span><code>docker logs --since 24h $(docker ps -qf name=postfix-mailcow) | pflogsumm
</code></pre></div>
<p><code>docker logs --since 24h $(docker ps -qf name=postfix-mailcow) | pflogsumm</code></p>
<p>Die obige Log-Ausgabe ist auf die letzten 24 Stunden beschränkt.</p>
<p>Es ist auch möglich, einen täglichen pflogsumm-Bericht über cron zu erstellen. Erstellen Sie die Datei /etc/cron.d/pflogsumm mit dem folgenden Inhalt:</p>
<div class="highlight"><pre><span></span><code>SHELL=/bin/bash
59 23 * * * root docker logs --since 24h $(docker ps -qf name=postfix-mailcow) | /usr/sbin/pflogsumm -d today | mail -s &quot;Postfix Report of $(date)&quot; postmaster@example.net
</code></pre></div>
<p><code>SHELL=/bin/bash
59 23 * * * root docker logs --since 24h $(docker ps -qf name=postfix-mailcow) | /usr/sbin/pflogsumm -d today | mail -s "Postfix Report of $(date)" postmaster@example.net</code></p>
<p>Um zu funktionieren muss ein lokaler Postfix auf dem Server installiert werden, welcher an den Postfix der mailcow relayed.</p>
<p>Genauere Informationen lassen sich unter Sektion <a href="https://mailcow.github.io/mailcow-dockerized-docs/de/post_installation/firststeps-local_mta/">Post-Installationsaufgaben -&gt; Lokaler MTA auf Dockerhost</a> finden.</p>
<p>Basierend auf den Postfix-Logs der letzten 24 Stunden sendet dieses Beispiel dann jeden Tag um 23:59:00 Uhr einen pflogsumm-Bericht an <a href="&#109;&#97;&#105;&#108;&#116;&#111;&#58;&#112;&#111;&#115;&#116;&#109;&#97;&#115;&#116;&#101;&#114;&#64;&#101;&#120;&#97;&#109;&#112;&#108;&#101;&#46;&#110;&#101;&#116;">&#112;&#111;&#115;&#116;&#109;&#97;&#115;&#116;&#101;&#114;&#64;&#101;&#120;&#97;&#109;&#112;&#108;&#101;&#46;&#110;&#101;&#116;</a>.</p>
@ -2505,7 +2503,7 @@
<script id="__config" type="application/json">{"base": "../../../..", "features": ["navigation.top", "navigation.tracking"], "search": "../../../../assets/javascripts/workers/search.2a1c317c.min.js", "translations": {"clipboard.copied": "In Zwischenablage kopiert", "clipboard.copy": "In Zwischenablage kopieren", "search.config.lang": "de", "search.config.pipeline": "trimmer, stopWordFilter", "search.config.separator": "[\\s\\-]+", "search.placeholder": "Suche", "search.result.more.one": "1 weiteres Suchergebnis auf dieser Seite", "search.result.more.other": "# weitere Suchergebnisse auf dieser Seite", "search.result.none": "Keine Suchergebnisse", "search.result.one": "1 Suchergebnis", "search.result.other": "# Suchergebnisse", "search.result.placeholder": "Suchbegriff eingeben", "search.result.term.missing": "Es fehlt", "select.version.title": "Version ausw\u00e4hlen"}}</script>
<script src="../../../../assets/javascripts/bundle.748e2769.min.js"></script>
<script src="../../../../assets/javascripts/bundle.c2e1ee47.min.js"></script>
<script src="../../../../assets/javascripts/client.js"></script>

Datei anzeigen

@ -11,7 +11,7 @@
<link rel="canonical" href="https://mailcow.github.io/mailcow-dockerized-docs/de/manual-guides/Postfix/u_e-postfix-postscreen_whitelist/">
<link rel="icon" href="../../../../assets/images/favicon.png">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.11">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.14">
@ -19,10 +19,10 @@
<link rel="stylesheet" href="../../../../assets/stylesheets/main.8c5ef100.min.css">
<link rel="stylesheet" href="../../../../assets/stylesheets/main.3de6f41f.min.css">
<link rel="stylesheet" href="../../../../assets/stylesheets/palette.9647289d.min.css">
<link rel="stylesheet" href="../../../../assets/stylesheets/palette.cc9b2e1e.min.css">
@ -66,6 +66,11 @@
<label class="md-overlay" for="__drawer"></label>
<div data-md-component="skip">
<a href="#regeln-werden-in-der-angegebenen-reihenfolge-ausgewertet" class="md-skip">
Zum Inhalt
</a>
</div>
<div data-md-component="announce">
@ -1420,6 +1425,8 @@
<input class="md-nav__toggle md-toggle" data-md-toggle="toc" type="checkbox" id="__toc">
<a href="./" class="md-nav__link md-nav__link--active">
IP in Postscreen auf die Whitelist setzen
@ -2356,6 +2363,8 @@
</nav>
</div>
@ -2373,19 +2382,18 @@
<h1>IP in Postscreen auf die Whitelist setzen</h1>
<p>IPs können in der Datei <code>data/conf/postfix/custom_postscreen_whitelist.cidr</code> aus dem Postscreen und damit <em>auch</em> aus den RBL-Prüfungen entfernt werden.</p>
<p>Postscreen führt mehrere Prüfungen durch, um bösartige Absender zu identifizieren. In den meisten Fällen möchten Sie eine IP-Adresse auf die Whitelist setzen, um sie von der Suche nach einer schwarzen Liste auszuschließen.</p>
<p>Das Format der Datei ist wie folgt</p>
<p><code>CIDR ACTION</code></p>
<p>Dabei steht CIDR fĂĽr eine einzelne IP-Adresse oder einen IP-Bereich in CIDR-Notation und action entweder fĂĽr "permit" oder "reject".</p>
<p>Beispiel:</p>
<div class="highlight"><pre><span></span><code># Regeln werden in der angegebenen Reihenfolge ausgewertet.
# Schwarze Liste 192.168.* auĂźer 192.168.0.1.
192.168.0.1 permit
<p>```</p>
<h1 id="regeln-werden-in-der-angegebenen-reihenfolge-ausgewertet">Regeln werden in der angegebenen Reihenfolge ausgewertet.<a class="headerlink" href="#regeln-werden-in-der-angegebenen-reihenfolge-ausgewertet" title="Permanent link">&para;</a></h1>
<h1 id="schwarze-liste-192168-auer-19216801">Schwarze Liste 192.168.* auĂźer 192.168.0.1.<a class="headerlink" href="#schwarze-liste-192168-auer-19216801" title="Permanent link">&para;</a></h1>
<p>192.168.0.1 permit
192.168.0.0/16 reject
</code></pre></div>
```</p>
<p>Die Datei wird spontan neu geladen, ein Neustart von Postfix ist nicht erforderlich.</p>
<hr>
@ -2506,7 +2514,7 @@
<script id="__config" type="application/json">{"base": "../../../..", "features": ["navigation.top", "navigation.tracking"], "search": "../../../../assets/javascripts/workers/search.2a1c317c.min.js", "translations": {"clipboard.copied": "In Zwischenablage kopiert", "clipboard.copy": "In Zwischenablage kopieren", "search.config.lang": "de", "search.config.pipeline": "trimmer, stopWordFilter", "search.config.separator": "[\\s\\-]+", "search.placeholder": "Suche", "search.result.more.one": "1 weiteres Suchergebnis auf dieser Seite", "search.result.more.other": "# weitere Suchergebnisse auf dieser Seite", "search.result.none": "Keine Suchergebnisse", "search.result.one": "1 Suchergebnis", "search.result.other": "# Suchergebnisse", "search.result.placeholder": "Suchbegriff eingeben", "search.result.term.missing": "Es fehlt", "select.version.title": "Version ausw\u00e4hlen"}}</script>
<script src="../../../../assets/javascripts/bundle.748e2769.min.js"></script>
<script src="../../../../assets/javascripts/bundle.c2e1ee47.min.js"></script>
<script src="../../../../assets/javascripts/client.js"></script>

Datei anzeigen

@ -11,7 +11,7 @@
<link rel="canonical" href="https://mailcow.github.io/mailcow-dockerized-docs/de/manual-guides/Postfix/u_e-postfix-relayhost/">
<link rel="icon" href="../../../../assets/images/favicon.png">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.11">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.14">
@ -19,10 +19,10 @@
<link rel="stylesheet" href="../../../../assets/stylesheets/main.8c5ef100.min.css">
<link rel="stylesheet" href="../../../../assets/stylesheets/main.3de6f41f.min.css">
<link rel="stylesheet" href="../../../../assets/stylesheets/palette.9647289d.min.css">
<link rel="stylesheet" href="../../../../assets/stylesheets/palette.cc9b2e1e.min.css">
@ -2606,7 +2606,7 @@ Beachten Sie, dass die Anmeldedaten im Klartext gespeichert werden.</p>
<script id="__config" type="application/json">{"base": "../../../..", "features": ["navigation.top", "navigation.tracking"], "search": "../../../../assets/javascripts/workers/search.2a1c317c.min.js", "translations": {"clipboard.copied": "In Zwischenablage kopiert", "clipboard.copy": "In Zwischenablage kopieren", "search.config.lang": "de", "search.config.pipeline": "trimmer, stopWordFilter", "search.config.separator": "[\\s\\-]+", "search.placeholder": "Suche", "search.result.more.one": "1 weiteres Suchergebnis auf dieser Seite", "search.result.more.other": "# weitere Suchergebnisse auf dieser Seite", "search.result.none": "Keine Suchergebnisse", "search.result.one": "1 Suchergebnis", "search.result.other": "# Suchergebnisse", "search.result.placeholder": "Suchbegriff eingeben", "search.result.term.missing": "Es fehlt", "select.version.title": "Version ausw\u00e4hlen"}}</script>
<script src="../../../../assets/javascripts/bundle.748e2769.min.js"></script>
<script src="../../../../assets/javascripts/bundle.c2e1ee47.min.js"></script>
<script src="../../../../assets/javascripts/client.js"></script>

Datei anzeigen

@ -11,7 +11,7 @@
<link rel="canonical" href="https://mailcow.github.io/mailcow-dockerized-docs/de/manual-guides/Postfix/u_e-postfix-trust_networks/">
<link rel="icon" href="../../../../assets/images/favicon.png">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.11">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.14">
@ -19,10 +19,10 @@
<link rel="stylesheet" href="../../../../assets/stylesheets/main.8c5ef100.min.css">
<link rel="stylesheet" href="../../../../assets/stylesheets/main.3de6f41f.min.css">
<link rel="stylesheet" href="../../../../assets/stylesheets/palette.9647289d.min.css">
<link rel="stylesheet" href="../../../../assets/stylesheets/palette.cc9b2e1e.min.css">
@ -2475,15 +2475,13 @@
<h3 id="ipv4-hostssubnetze">IPv4-Hosts/Subnetze<a class="headerlink" href="#ipv4-hostssubnetze" title="Permanent link">&para;</a></h3>
<p>Um das Subnetz <code>192.168.2.0/24</code> zu den vertrauenswürdigen Netzwerken hinzuzufügen, können Sie die folgende Konfiguration verwenden, abhängig von Ihren IPV4_NETWORK und IPV6_NETWORK Bereichen:</p>
<p>Bearbeiten Sie <code>data/conf/postfix/extra.cf</code>:</p>
<div class="highlight"><pre><span></span><code>mynetworks = 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128 [fe80::]/10 172.22.1.0/24 [fd4d:6169:6c63:6f77::]/64 192.168.2.0/24
</code></pre></div>
<p><code>mynetworks = 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128 [fe80::]/10 172.22.1.0/24 [fd4d:6169:6c63:6f77::]/64 192.168.2.0/24</code></p>
<p>FĂĽhren Sie <code>docker-compose restart postfix-mailcow</code> aus, um Ihre neuen Einstellungen zu ĂĽbernehmen.</p>
<h3 id="ipv6-hostssubnets">IPv6-Hosts/Subnets<a class="headerlink" href="#ipv6-hostssubnets" title="Permanent link">&para;</a></h3>
<p>Das Hinzufügen von IPv6-Hosts erfolgt auf die gleiche Weise wie bei IPv4, allerdings muss das Subnetz in eckige Klammern <code>[]</code> gesetzt und die Netzmaske angehängt werden.</p>
<p>Um das Subnetz 2001:db8::/32 zu den vertrauenswürdigen Netzwerken hinzuzufügen, können Sie die folgende Konfiguration verwenden, abhängig von Ihren IPV4_NETWORK- und IPV6_NETWORK-Bereichen:</p>
<p>Bearbeiten Sie <code>data/conf/postfix/extra.cf</code>:</p>
<div class="highlight"><pre><span></span><code>mynetworks = 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128 [fe80::]/10 172.22.1.0/24 [fd4d:6169:6c63:6f77::]/64 [2001:db8::]/32
</code></pre></div>
<p><code>mynetworks = 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128 [fe80::]/10 172.22.1.0/24 [fd4d:6169:6c63:6f77::]/64 [2001:db8::]/32</code></p>
<p>FĂĽhren Sie <code>docker-compose restart postfix-mailcow</code> aus, um Ihre neuen Einstellungen zu ĂĽbernehmen.</p>
<div class="admonition info">
<p class="admonition-title">Info</p>
@ -2608,7 +2606,7 @@
<script id="__config" type="application/json">{"base": "../../../..", "features": ["navigation.top", "navigation.tracking"], "search": "../../../../assets/javascripts/workers/search.2a1c317c.min.js", "translations": {"clipboard.copied": "In Zwischenablage kopiert", "clipboard.copy": "In Zwischenablage kopieren", "search.config.lang": "de", "search.config.pipeline": "trimmer, stopWordFilter", "search.config.separator": "[\\s\\-]+", "search.placeholder": "Suche", "search.result.more.one": "1 weiteres Suchergebnis auf dieser Seite", "search.result.more.other": "# weitere Suchergebnisse auf dieser Seite", "search.result.none": "Keine Suchergebnisse", "search.result.one": "1 Suchergebnis", "search.result.other": "# Suchergebnisse", "search.result.placeholder": "Suchbegriff eingeben", "search.result.term.missing": "Es fehlt", "select.version.title": "Version ausw\u00e4hlen"}}</script>
<script src="../../../../assets/javascripts/bundle.748e2769.min.js"></script>
<script src="../../../../assets/javascripts/bundle.c2e1ee47.min.js"></script>
<script src="../../../../assets/javascripts/client.js"></script>

Datei anzeigen

@ -11,7 +11,7 @@
<link rel="canonical" href="https://mailcow.github.io/mailcow-dockerized-docs/de/manual-guides/Redis/u_e-redis/">
<link rel="icon" href="../../../../assets/images/favicon.png">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.11">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.14">
@ -19,10 +19,10 @@
<link rel="stylesheet" href="../../../../assets/stylesheets/main.8c5ef100.min.css">
<link rel="stylesheet" href="../../../../assets/stylesheets/main.3de6f41f.min.css">
<link rel="stylesheet" href="../../../../assets/stylesheets/palette.9647289d.min.css">
<link rel="stylesheet" href="../../../../assets/stylesheets/palette.cc9b2e1e.min.css">
@ -1832,6 +1832,24 @@
</li>
</ul>
</nav>
</li>
</ul>
</nav>
</li>
<li class="md-nav__item">
<a href="#docker-compose-exec-redis-mailcow-redis-cli" class="md-nav__link">
docker-compose exec redis-mailcow redis-cli
</a>
<nav class="md-nav" aria-label="docker-compose exec redis-mailcow redis-cli">
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="#schlussel-keys" class="md-nav__link">
SCHLĂśSSEL (Keys)
@ -1849,11 +1867,6 @@
</ul>
</nav>
</li>
</ul>
</nav>
</li>
</ul>
@ -2458,6 +2471,24 @@
</li>
</ul>
</nav>
</li>
</ul>
</nav>
</li>
<li class="md-nav__item">
<a href="#docker-compose-exec-redis-mailcow-redis-cli" class="md-nav__link">
docker-compose exec redis-mailcow redis-cli
</a>
<nav class="md-nav" aria-label="docker-compose exec redis-mailcow redis-cli">
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="#schlussel-keys" class="md-nav__link">
SCHLĂśSSEL (Keys)
@ -2475,11 +2506,6 @@
</ul>
</nav>
</li>
</ul>
</nav>
</li>
</ul>
@ -2500,33 +2526,29 @@
<h1>Redis</h1>
<p>Redis wird als Key-Value-Speicher fĂĽr die Einstellungen und Daten von rspamd und (einige von) mailcow verwendet. Wenn Sie mit Redis nicht vertraut sind, lesen Sie bitte die <a href="https://redis.io/topics/introduction">EinfĂĽhrung in Redis</a> und besuchen Sie gegebenenfalls diese <a href="http://try.redis.io/">wunderbare Anleitung</a>, um zu erfahren, wie man Redis benutzt.</p>
<h2 id="client">Client<a class="headerlink" href="#client" title="Permanent link">&para;</a></h2>
<p>Um sich mit dem redis cli zu verbinden, fĂĽhren Sie aus:</p>
<div class="highlight"><pre><span></span><code>docker-compose exec redis-mailcow redis-cli
</code></pre></div>
<p><code>docker-compose exec redis-mailcow redis-cli</code></p>
<h3 id="fehlersuche">Fehlersuche<a class="headerlink" href="#fehlersuche" title="Permanent link">&para;</a></h3>
<p>Hier sind einige nĂĽtzliche Befehle fĂĽr den redis-cli zur Fehlersuche:</p>
<h5 id="monitor">MONITOR<a class="headerlink" href="#monitor" title="Permanent link">&para;</a></h5>
<p>Ăśberwacht alle vom Server empfangenen Anfragen in Echtzeit:</p>
<div class="highlight"><pre><span></span><code># docker-compose exec redis-mailcow redis-cli
127.0.0.1:6379&gt; ĂĽberwachen
<p>```</p>
<h1 id="docker-compose-exec-redis-mailcow-redis-cli">docker-compose exec redis-mailcow redis-cli<a class="headerlink" href="#docker-compose-exec-redis-mailcow-redis-cli" title="Permanent link">&para;</a></h1>
<p>127.0.0.1:6379&gt; ĂĽberwachen
OK
1494077286.401963 [0 172.22.1.253:41228] &quot;SMEMBERS&quot; &quot;BAYES_SPAM_keys&quot;
1494077288.292970 [0 172.22.1.253:41229] &quot;SMEMBERS&quot; &quot;BAYES_SPAM_keys&quot;
1494077286.401963 [0 172.22.1.253:41228] "SMEMBERS" "BAYES_SPAM_keys"
1494077288.292970 [0 172.22.1.253:41229] "SMEMBERS" "BAYES_SPAM_keys"
[...]
</code></pre></div>
```</p>
<h5 id="schlussel-keys">SCHLĂśSSEL (Keys)<a class="headerlink" href="#schlussel-keys" title="Permanent link">&para;</a></h5>
<p>Ermittelt alle SchlĂĽssel, die dem Muster entsprechen:</p>
<div class="highlight"><pre><span></span><code>KEYS *
</code></pre></div>
<p><code>KEYS *</code></p>
<h5 id="ping">PING<a class="headerlink" href="#ping" title="Permanent link">&para;</a></h5>
<p>Testen Sie eine Verbindung:</p>
<div class="highlight"><pre><span></span><code>127.0.0.1:6379&gt; PING
PONG
</code></pre></div>
<p><code>127.0.0.1:6379&gt; PING
PONG</code></p>
<p>Wenn Sie mehr wissen wollen, hier ist ein <a href="https://www.cheatography.com/tasjaevan/cheat-sheets/redis/">Cheat-Sheet</a>.</p>
<hr>
@ -2647,7 +2669,7 @@ PONG
<script id="__config" type="application/json">{"base": "../../../..", "features": ["navigation.top", "navigation.tracking"], "search": "../../../../assets/javascripts/workers/search.2a1c317c.min.js", "translations": {"clipboard.copied": "In Zwischenablage kopiert", "clipboard.copy": "In Zwischenablage kopieren", "search.config.lang": "de", "search.config.pipeline": "trimmer, stopWordFilter", "search.config.separator": "[\\s\\-]+", "search.placeholder": "Suche", "search.result.more.one": "1 weiteres Suchergebnis auf dieser Seite", "search.result.more.other": "# weitere Suchergebnisse auf dieser Seite", "search.result.none": "Keine Suchergebnisse", "search.result.one": "1 Suchergebnis", "search.result.other": "# Suchergebnisse", "search.result.placeholder": "Suchbegriff eingeben", "search.result.term.missing": "Es fehlt", "select.version.title": "Version ausw\u00e4hlen"}}</script>
<script src="../../../../assets/javascripts/bundle.748e2769.min.js"></script>
<script src="../../../../assets/javascripts/bundle.c2e1ee47.min.js"></script>
<script src="../../../../assets/javascripts/client.js"></script>

Datei anzeigen

@ -11,7 +11,7 @@
<link rel="canonical" href="https://mailcow.github.io/mailcow-dockerized-docs/de/manual-guides/Rspamd/u_e-rspamd/">
<link rel="icon" href="../../../../assets/images/favicon.png">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.11">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.14">
@ -19,10 +19,10 @@
<link rel="stylesheet" href="../../../../assets/stylesheets/main.8c5ef100.min.css">
<link rel="stylesheet" href="../../../../assets/stylesheets/main.3de6f41f.min.css">
<link rel="stylesheet" href="../../../../assets/stylesheets/palette.9647289d.min.css">
<link rel="stylesheet" href="../../../../assets/stylesheets/palette.cc9b2e1e.min.css">
@ -1844,52 +1844,146 @@
</li>
<li class="md-nav__item">
<a href="#ham" class="md-nav__link">
Ham
</a>
</li>
<li class="md-nav__item">
<a href="#spam" class="md-nav__link">
Spam
</a>
<nav class="md-nav" aria-label="Spam">
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="#gelernte-daten-zurucksetzen-bayes-neural" class="md-nav__link">
Gelernte Daten zurĂĽcksetzen (Bayes, Neural)
</a>
</li>
</ul>
</nav>
</li>
<li class="md-nav__item">
<a href="#es-ist-besser-redis-zu-stoppen-bevor-sie-die-datei-kopieren" class="md-nav__link">
Es ist besser, Redis zu stoppen, bevor Sie die Datei kopieren.
</a>
</li>
<li class="md-nav__item">
<a href="#wir-mussen-zuerst-das-redis-cli-eingeben" class="md-nav__link">
Wir mĂĽssen zuerst das redis-cli eingeben:
</a>
</li>
<li class="md-nav__item">
<a href="#in-redis-cli" class="md-nav__link">
In redis-cli:
</a>
<nav class="md-nav" aria-label="In redis-cli:">
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="#cli-werkzeuge" class="md-nav__link">
CLI-Werkzeuge
</a>
</li>
<li class="md-nav__item">
<li class="md-nav__item">
<a href="#greylisting-deaktivieren" class="md-nav__link">
Greylisting deaktivieren
</a>
</li>
<li class="md-nav__item">
<a href="#spamfilter-schwellenwerte-global" class="md-nav__link">
Spamfilter-Schwellenwerte (global)
</a>
</li>
</ul>
</nav>
</li>
<li class="md-nav__item">
<a href="#oder" class="md-nav__link">
oder:
</a>
</li>
<li class="md-nav__item">
<a href="#docker-compose-exec-mysql-mailcow-mysql-umailcow-pdbpass-mailcow-e-delete-from-filterconf-where-option-highspamlevel-or-option-lowspamlevel-and-object-amp111amp110amp108amp121amp45amp116amp104amp105amp115amp45amp109amp97amp105amp108amp98amp111amp120amp64amp101amp120amp97amp109amp112amp108amp101amp46amp111amp114amp103" class="md-nav__link">
docker-compose exec mysql-mailcow mysql -umailcow -p$DBPASS mailcow -e "delete from filterconf where option = 'highspamlevel' or option = 'lowspamlevel' and object = 'amp#111;amp#110;amp#108;amp#121;amp#45;amp#116;amp#104;amp#105;amp#115;amp#45;amp#109;amp#97;amp#105;amp#108;amp#98;amp#111;amp#120;amp#64;amp#101;amp#120;amp#97;amp#109;amp#112;amp#108;amp#101;amp#46;amp#111;amp#114;amp#103;';"
</a>
<nav class="md-nav" aria-label="docker-compose exec mysql-mailcow mysql -umailcow -p$DBPASS mailcow -e "delete from filterconf where option = 'highspamlevel' or option = 'lowspamlevel' and object = 'amp#111;amp#110;amp#108;amp#121;amp#45;amp#116;amp#104;amp#105;amp#115;amp#45;amp#109;amp#97;amp#105;amp#108;amp#98;amp#111;amp#120;amp#64;amp#101;amp#120;amp#97;amp#109;amp#112;amp#108;amp#101;amp#46;amp#111;amp#114;amp#103;';"">
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="#benutzerdefinierte-ablehnungsnachrichten" class="md-nav__link">
Benutzerdefinierte Ablehnungsnachrichten
</a>
</li>
<li class="md-nav__item">
<li class="md-nav__item">
<a href="#verwerfen-statt-zuruckweisen" class="md-nav__link">
Verwerfen statt zurĂĽckweisen
</a>
</li>
<li class="md-nav__item">
<li class="md-nav__item">
<a href="#losche-alle-ratelimit-schlussel" class="md-nav__link">
Lösche alle Ratelimit-Schlüssel
</a>
</li>
</ul>
</nav>
</li>
<li class="md-nav__item">
<a href="#unlink-verfugbar-in-redis-4-loscht-im-hintergrund" class="md-nav__link">
Unlink (verfügbar in Redis &gt;=4.) löscht im Hintergrund
</a>
<nav class="md-nav" aria-label="Unlink (verfügbar in Redis &gt;=4.) löscht im Hintergrund">
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="#erneutes-senden-von-quarantane-benachrichtigungen-auslosen" class="md-nav__link">
Erneutes Senden von Quarantäne-Benachrichtigungen auslösen
</a>
</li>
<li class="md-nav__item">
<li class="md-nav__item">
<a href="#speicherung-der-historie-erhohen" class="md-nav__link">
Speicherung der Historie erhöhen
</a>
</li>
</ul>
</nav>
</li>
</ul>
@ -2478,52 +2572,146 @@
</li>
<li class="md-nav__item">
<a href="#ham" class="md-nav__link">
Ham
</a>
</li>
<li class="md-nav__item">
<a href="#spam" class="md-nav__link">
Spam
</a>
<nav class="md-nav" aria-label="Spam">
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="#gelernte-daten-zurucksetzen-bayes-neural" class="md-nav__link">
Gelernte Daten zurĂĽcksetzen (Bayes, Neural)
</a>
</li>
</ul>
</nav>
</li>
<li class="md-nav__item">
<a href="#es-ist-besser-redis-zu-stoppen-bevor-sie-die-datei-kopieren" class="md-nav__link">
Es ist besser, Redis zu stoppen, bevor Sie die Datei kopieren.
</a>
</li>
<li class="md-nav__item">
<a href="#wir-mussen-zuerst-das-redis-cli-eingeben" class="md-nav__link">
Wir mĂĽssen zuerst das redis-cli eingeben:
</a>
</li>
<li class="md-nav__item">
<a href="#in-redis-cli" class="md-nav__link">
In redis-cli:
</a>
<nav class="md-nav" aria-label="In redis-cli:">
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="#cli-werkzeuge" class="md-nav__link">
CLI-Werkzeuge
</a>
</li>
<li class="md-nav__item">
<li class="md-nav__item">
<a href="#greylisting-deaktivieren" class="md-nav__link">
Greylisting deaktivieren
</a>
</li>
<li class="md-nav__item">
<a href="#spamfilter-schwellenwerte-global" class="md-nav__link">
Spamfilter-Schwellenwerte (global)
</a>
</li>
</ul>
</nav>
</li>
<li class="md-nav__item">
<a href="#oder" class="md-nav__link">
oder:
</a>
</li>
<li class="md-nav__item">
<a href="#docker-compose-exec-mysql-mailcow-mysql-umailcow-pdbpass-mailcow-e-delete-from-filterconf-where-option-highspamlevel-or-option-lowspamlevel-and-object-amp111amp110amp108amp121amp45amp116amp104amp105amp115amp45amp109amp97amp105amp108amp98amp111amp120amp64amp101amp120amp97amp109amp112amp108amp101amp46amp111amp114amp103" class="md-nav__link">
docker-compose exec mysql-mailcow mysql -umailcow -p$DBPASS mailcow -e "delete from filterconf where option = 'highspamlevel' or option = 'lowspamlevel' and object = 'amp#111;amp#110;amp#108;amp#121;amp#45;amp#116;amp#104;amp#105;amp#115;amp#45;amp#109;amp#97;amp#105;amp#108;amp#98;amp#111;amp#120;amp#64;amp#101;amp#120;amp#97;amp#109;amp#112;amp#108;amp#101;amp#46;amp#111;amp#114;amp#103;';"
</a>
<nav class="md-nav" aria-label="docker-compose exec mysql-mailcow mysql -umailcow -p$DBPASS mailcow -e "delete from filterconf where option = 'highspamlevel' or option = 'lowspamlevel' and object = 'amp#111;amp#110;amp#108;amp#121;amp#45;amp#116;amp#104;amp#105;amp#115;amp#45;amp#109;amp#97;amp#105;amp#108;amp#98;amp#111;amp#120;amp#64;amp#101;amp#120;amp#97;amp#109;amp#112;amp#108;amp#101;amp#46;amp#111;amp#114;amp#103;';"">
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="#benutzerdefinierte-ablehnungsnachrichten" class="md-nav__link">
Benutzerdefinierte Ablehnungsnachrichten
</a>
</li>
<li class="md-nav__item">
<li class="md-nav__item">
<a href="#verwerfen-statt-zuruckweisen" class="md-nav__link">
Verwerfen statt zurĂĽckweisen
</a>
</li>
<li class="md-nav__item">
<li class="md-nav__item">
<a href="#losche-alle-ratelimit-schlussel" class="md-nav__link">
Lösche alle Ratelimit-Schlüssel
</a>
</li>
</ul>
</nav>
</li>
<li class="md-nav__item">
<a href="#unlink-verfugbar-in-redis-4-loscht-im-hintergrund" class="md-nav__link">
Unlink (verfügbar in Redis &gt;=4.) löscht im Hintergrund
</a>
<nav class="md-nav" aria-label="Unlink (verfügbar in Redis &gt;=4.) löscht im Hintergrund">
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="#erneutes-senden-von-quarantane-benachrichtigungen-auslosen" class="md-nav__link">
Erneutes Senden von Quarantäne-Benachrichtigungen auslösen
</a>
</li>
<li class="md-nav__item">
<li class="md-nav__item">
<a href="#speicherung-der-historie-erhohen" class="md-nav__link">
Speicherung der Historie erhöhen
</a>
</li>
</ul>
</nav>
</li>
</ul>
@ -2544,8 +2732,6 @@
<h1>Rspamd</h1>
<p>Rspamd wird für die AV-Verarbeitung, DKIM-Signierung und SPAM-Verarbeitung verwendet. Es ist ein leistungsfähiges und schnelles Filtersystem. Für eine ausführlichere Dokumentation über Rspamd besuchen Sie bitte die [Rspamd Dokumentation] (<a href="https://rspamd.com/doc/index.html">https://rspamd.com/doc/index.html</a>).</p>
<h2 id="spam-ham-lernen">Spam &amp; Ham lernen<a class="headerlink" href="#spam-ham-lernen" title="Permanent link">&para;</a></h2>
<p>Rspamd lernt, ob es sich um Spam oder Ham handelt, wenn Sie eine Nachricht in oder aus dem Junk-Ordner in ein anderes Postfach als den Papierkorb verschieben.
@ -2556,78 +2742,73 @@ Dies wird durch die Verwendung des Sieve-Plugins "sieve_imapsieve" und Parser-Sk
<p>Sie können auch die Web-UI von Rspamd verwenden, um Ham und/oder Spam zu lernen oder bestimmte Einstellungen von Rspamd anzupassen.</p>
<h3 id="spam-oder-ham-aus-bestehendem-verzeichnis-lernen">Spam oder Ham aus bestehendem Verzeichnis lernen<a class="headerlink" href="#spam-oder-ham-aus-bestehendem-verzeichnis-lernen" title="Permanent link">&para;</a></h3>
<p>Sie können einen Einzeiler verwenden, um Mails im Klartextformat (unkomprimiert) zu lernen:</p>
<div class="highlight"><pre><span></span><code><span class="c1"># Ham</span>
<span class="k">for</span> file <span class="k">in</span> /my/folder/cur/*<span class="p">;</span> <span class="k">do</span> docker <span class="nb">exec</span> -i <span class="k">$(</span>docker-compose ps -q rspamd-mailcow<span class="k">)</span> rspamc learn_ham &lt; <span class="nv">$file</span><span class="p">;</span> <span class="k">done</span>
<span class="c1"># Spam</span>
<span class="k">for</span> file <span class="k">in</span> /my/folder/.Junk/cur/*<span class="p">;</span> <span class="k">do</span> docker <span class="nb">exec</span> -i <span class="k">$(</span>docker-compose ps -q rspamd-mailcow<span class="k">)</span> rspamc learn_spam &lt; <span class="nv">$file</span><span class="p">;</span> <span class="k">done</span>
</code></pre></div>
<p>```bash</p>
<h1 id="ham">Ham<a class="headerlink" href="#ham" title="Permanent link">&para;</a></h1>
<p>for file in /my/folder/cur/*; do docker exec -i $(docker-compose ps -q rspamd-mailcow) rspamc learn_ham &lt; $file; done</p>
<h1 id="spam">Spam<a class="headerlink" href="#spam" title="Permanent link">&para;</a></h1>
<p>for file in /my/folder/.Junk/cur/*; do docker exec -i $(docker-compose ps -q rspamd-mailcow) rspamc learn_spam &lt; $file; done
```</p>
<p>Erwägen Sie, einen lokalen Ordner als neues Volume an <code>rspamd-mailcow</code> in <code>docker-compose.yml</code> anzuhängen und die gegebenen Dateien innerhalb des Containers zu lernen. Dies kann als Workaround verwendet werden, um komprimierte Daten mit zcat zu parsen. Beispiel:</p>
<p>``bash
for file in /data/old_mail/.Junk/cur/*; do rspamc learn_spam &lt; zcat $file; done
<div class="highlight"><pre><span></span><code>### Gelernte Daten zurĂĽcksetzen (Bayes, Neural)
Sie müssen die Schlüssel in Redis löschen, um die gelernten Daten zurückzusetzen, also erstellen Sie jetzt eine Kopie Ihrer Redis-Datenbank:
**Backup Datenbank**
```bash
# Es ist besser, Redis zu stoppen, bevor Sie die Datei kopieren.
cp /var/lib/docker/volumes/mailcowdockerized_redis-vol-1/_data/dump.rdb /root/
</code></pre></div></p>
```</p>
<h3 id="gelernte-daten-zurucksetzen-bayes-neural">Gelernte Daten zurĂĽcksetzen (Bayes, Neural)<a class="headerlink" href="#gelernte-daten-zurucksetzen-bayes-neural" title="Permanent link">&para;</a></h3>
<p>Sie müssen die Schlüssel in Redis löschen, um die gelernten Daten zurückzusetzen, also erstellen Sie jetzt eine Kopie Ihrer Redis-Datenbank:</p>
<p><strong>Backup Datenbank</strong></p>
<p>```bash</p>
<h1 id="es-ist-besser-redis-zu-stoppen-bevor-sie-die-datei-kopieren">Es ist besser, Redis zu stoppen, bevor Sie die Datei kopieren.<a class="headerlink" href="#es-ist-besser-redis-zu-stoppen-bevor-sie-die-datei-kopieren" title="Permanent link">&para;</a></h1>
<p>cp /var/lib/docker/volumes/mailcowdockerized_redis-vol-1/_data/dump.rdb /root/
```</p>
<p><strong>Bayes-Daten zurĂĽcksetzen</strong></p>
<div class="highlight"><pre><span></span><code>docker-compose <span class="nb">exec</span> redis-mailcow sh -c <span class="s1">&#39;redis-cli --scan --pattern BAYES_* | xargs redis-cli del&#39;</span>
docker-compose <span class="nb">exec</span> redis-mailcow sh -c <span class="s1">&#39;redis-cli --scan --pattern RS* | xargs redis-cli del&#39;</span>
</code></pre></div>
<p><code>bash
docker-compose exec redis-mailcow sh -c 'redis-cli --scan --pattern BAYES_* | xargs redis-cli del'
docker-compose exec redis-mailcow sh -c 'redis-cli --scan --pattern RS* | xargs redis-cli del'</code></p>
<p><strong>Neurale Daten zurĂĽcksetzen</strong></p>
<div class="highlight"><pre><span></span><code>docker-compose <span class="nb">exec</span> redis-mailcow sh -c <span class="s1">&#39;redis-cli --scan --pattern rn_* | xargs redis-cli del&#39;</span>
</code></pre></div>
<p><code>bash
docker-compose exec redis-mailcow sh -c 'redis-cli --scan --pattern rn_* | xargs redis-cli del'</code></p>
<p><strong>Fuzzy-Daten zurĂĽcksetzen</strong></p>
<div class="highlight"><pre><span></span><code><span class="c1"># Wir mĂĽssen zuerst das redis-cli eingeben:</span>
docker-compose <span class="nb">exec</span> redis-mailcow redis-cli
<span class="c1"># In redis-cli:</span>
<span class="m">127</span>.0.0.1:6379&gt; EVAL <span class="s2">&quot;for i, name in ipairs(redis.call(&#39;KEYS&#39;, ARGV[1])) do redis.call(&#39;DEL&#39;, name); end&quot;</span> <span class="m">0</span> fuzzy*
</code></pre></div>
<p>```bash</p>
<h1 id="wir-mussen-zuerst-das-redis-cli-eingeben">Wir mĂĽssen zuerst das redis-cli eingeben:<a class="headerlink" href="#wir-mussen-zuerst-das-redis-cli-eingeben" title="Permanent link">&para;</a></h1>
<p>docker-compose exec redis-mailcow redis-cli</p>
<h1 id="in-redis-cli">In redis-cli:<a class="headerlink" href="#in-redis-cli" title="Permanent link">&para;</a></h1>
<p>127.0.0.1:6379&gt; EVAL "for i, name in ipairs(redis.call('KEYS', ARGV[1])) do redis.call('DEL', name); end" 0 fuzzy*
```</p>
<p><strong>Info</strong></p>
<p>Wenn redis-cli sich beschwert ĂĽber...</p>
<div class="highlight"><pre><span></span><code>(error) ERR wrong number of arguments for &#39;del&#39; command
</code></pre></div>
<p><code>Text
(error) ERR wrong number of arguments for 'del' command</code></p>
<p>...das Schlüsselmuster nicht gefunden wurde und somit keine Daten zum Löschen vorhanden sind - ist es in Ordnung.</p>
<h2 id="cli-werkzeuge">CLI-Werkzeuge<a class="headerlink" href="#cli-werkzeuge" title="Permanent link">&para;</a></h2>
<p>``bash
docker-compose exec rspamd-mailcow rspamc --help
docker-compose exec rspamd-mailcow rspamadm --help
<div class="highlight"><pre><span></span><code>## Greylisting deaktivieren
Nur Nachrichten mit einer höheren Punktzahl werden als Greylisting betrachtet (soft rejected). Es ist schlechte Praxis, Greylisting zu deaktivieren.
Sie können Greylisting serverweit durch Editieren deaktivieren:
`{mailcow-dir}/data/conf/rspamd/local.d/greylist.conf`
FĂĽgen Sie die Zeile hinzu:
```cpp
enabled = false;
</code></pre></div></p>
```</p>
<h2 id="greylisting-deaktivieren">Greylisting deaktivieren<a class="headerlink" href="#greylisting-deaktivieren" title="Permanent link">&para;</a></h2>
<p>Nur Nachrichten mit einer höheren Punktzahl werden als Greylisting betrachtet (soft rejected). Es ist schlechte Praxis, Greylisting zu deaktivieren.</p>
<p>Sie können Greylisting serverweit durch Editieren deaktivieren:</p>
<p><code>{mailcow-dir}/data/conf/rspamd/local.d/greylist.conf</code></p>
<p>FĂĽgen Sie die Zeile hinzu:</p>
<p><code>cpp
enabled = false;</code></p>
<p>Speichern Sie die Datei und starten Sie "rspamd-mailcow" neu: <code>docker-compose restart rspamd-mailcow</code></p>
<h2 id="spamfilter-schwellenwerte-global">Spamfilter-Schwellenwerte (global)<a class="headerlink" href="#spamfilter-schwellenwerte-global" title="Permanent link">&para;</a></h2>
<p>Jeder Benutzer kann <a href="../../mailcow-UI/u_e-mailcow_ui-spamfilter/">seine Spam-Bewertung</a> individuell ändern. Um eine neue <strong>serverweite</strong> Grenze zu definieren, editieren Sie <code>data/conf/rspamd/local.d/actions.conf</code>:</p>
<div class="highlight"><pre><span></span><code><span class="n">reject</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="mi">15</span><span class="p">;</span><span class="w"></span>
<span class="n">add_header</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="mi">8</span><span class="p">;</span><span class="w"></span>
<span class="n">greylist</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="mi">7</span><span class="p">;</span><span class="w"></span>
</code></pre></div>
<p><code>cpp
reject = 15;
add_header = 8;
greylist = 7;</code></p>
<p>Speichern Sie die Datei und starten Sie "rspamd-mailcow" neu: <code>docker-compose restart rspamd-mailcow</code></p>
<p>Bestehende Einstellungen der Benutzer werden nicht ĂĽberschrieben!</p>
<p>Um benutzerdefinierte Schwellenwerte zurĂĽckzusetzen, fĂĽhren Sie aus:</p>
<div class="highlight"><pre><span></span><code>source mailcow.conf
docker-compose exec mysql-mailcow mysql -umailcow -p$DBPASS mailcow -e &quot;delete from filterconf where option = &#39;highspamlevel&#39; or option = &#39;lowspamlevel&#39;;&quot;
# oder:
# docker-compose exec mysql-mailcow mysql -umailcow -p$DBPASS mailcow -e &quot;delete from filterconf where option = &#39;highspamlevel&#39; or option = &#39;lowspamlevel&#39; and object = &#39;only-this-mailbox@example.org&#39;;&quot;
</code></pre></div>
<p>```
source mailcow.conf
docker-compose exec mysql-mailcow mysql -umailcow -p$DBPASS mailcow -e "delete from filterconf where option = 'highspamlevel' or option = 'lowspamlevel';"</p>
<h1 id="oder">oder:<a class="headerlink" href="#oder" title="Permanent link">&para;</a></h1>
<h1 id="docker-compose-exec-mysql-mailcow-mysql-umailcow-pdbpass-mailcow-e-delete-from-filterconf-where-option-highspamlevel-or-option-lowspamlevel-and-object-amp111amp110amp108amp121amp45amp116amp104amp105amp115amp45amp109amp97amp105amp108amp98amp111amp120amp64amp101amp120amp97amp109amp112amp108amp101amp46amp111amp114amp103">docker-compose exec mysql-mailcow mysql -umailcow -p$DBPASS mailcow -e "delete from filterconf where option = 'highspamlevel' or option = 'lowspamlevel' and object = '<a href="&#109;&#97;&#105;&#108;&#116;&#111;&#58;&#111;&#110;&#108;&#121;&#45;&#116;&#104;&#105;&#115;&#45;&#109;&#97;&#105;&#108;&#98;&#111;&#120;&#64;&#101;&#120;&#97;&#109;&#112;&#108;&#101;&#46;&#111;&#114;&#103;">&#111;&#110;&#108;&#121;&#45;&#116;&#104;&#105;&#115;&#45;&#109;&#97;&#105;&#108;&#98;&#111;&#120;&#64;&#101;&#120;&#97;&#109;&#112;&#108;&#101;&#46;&#111;&#114;&#103;</a>';"<a class="headerlink" href="#docker-compose-exec-mysql-mailcow-mysql-umailcow-pdbpass-mailcow-e-delete-from-filterconf-where-option-highspamlevel-or-option-lowspamlevel-and-object-amp111amp110amp108amp121amp45amp116amp104amp105amp115amp45amp109amp97amp105amp108amp98amp111amp120amp64amp101amp120amp97amp109amp112amp108amp101amp46amp111amp114amp103" title="Permanent link">&para;</a></h1>
<p>```</p>
<h2 id="benutzerdefinierte-ablehnungsnachrichten">Benutzerdefinierte Ablehnungsnachrichten<a class="headerlink" href="#benutzerdefinierte-ablehnungsnachrichten" title="Permanent link">&para;</a></h2>
<p>Die Standard-Spam-Reject-Meldung kann durch Hinzufügen einer neuen Datei <code>data/conf/rspamd/override.d/worker-proxy.custom.inc</code> mit dem folgenden Inhalt geändert werden:</p>
<div class="highlight"><pre><span></span><code>reject_message = &quot;Meine eigene Ablehnungsnachricht&quot;;
</code></pre></div>
<p><code>reject_message = "Meine eigene Ablehnungsnachricht";</code></p>
<p>Speichern Sie die Datei und starten Sie Rspamd neu: <code>docker-compose restart rspamd-mailcow</code>.</p>
<p>Waehrend das oben genannte fuer abgelehnte Mails mit einem hohen Spam-Score funktioniert, ignorieren Prefilter-Aktionen diese Einstellung. FĂĽr diese Karten muss das Multimap-Modul in Rspamd angepasst werden:</p>
<ol>
@ -2638,48 +2819,45 @@ docker-compose exec mysql-mailcow mysql -umailcow -p$DBPASS mailcow -e &quot;del
<p>FĂĽgen Sie Ihre eigene Nachricht als neue Zeile hinzu:</p>
</li>
</ol>
<div class="highlight"><pre><span></span><code>GLOBAL_RCPT_BL {
Typ = &quot;rcpt&quot;;
map = &quot;${LOCAL_CONFDIR}/custom/global_rcpt_blacklist.map&quot;;
<p><code>GLOBAL_RCPT_BL {
Typ = "rcpt";
map = "${LOCAL_CONFDIR}/custom/global_rcpt_blacklist.map";
regexp = true;
prefilter = true;
action = &quot;reject&quot;;
message = &quot;Der Versand von E-Mails an diesen Empfänger ist durch postmaster@your.domain verboten&quot;;
}
</code></pre></div>
action = "reject";
message = "Der Versand von E-Mails an diesen Empfänger ist durch postmaster@your.domain verboten";
}</code></p>
<ol>
<li>Speichern Sie die Datei und starten Sie Rspamd neu: <code>docker-compose restart rspamd-mailcow</code>.</li>
</ol>
<h2 id="verwerfen-statt-zuruckweisen">Verwerfen statt zurĂĽckweisen<a class="headerlink" href="#verwerfen-statt-zuruckweisen" title="Permanent link">&para;</a></h2>
<p>Wenn Sie eine Nachricht stillschweigend verwerfen wollen, erstellen oder bearbeiten Sie die Datei <code>data/conf/rspamd/override.d/worker-proxy.custom.inc</code> und fĂĽgen Sie den folgenden Inhalt hinzu:</p>
<div class="highlight"><pre><span></span><code>discard_on_reject = true;
</code></pre></div>
<p><code>discard_on_reject = true;</code></p>
<p>Starten Sie Rspamd neu:</p>
<div class="highlight"><pre><span></span><code>docker-compose restart rspamd-mailcow
</code></pre></div>
<p><code>bash
docker-compose restart rspamd-mailcow</code></p>
<h2 id="losche-alle-ratelimit-schlussel">Lösche alle Ratelimit-Schlüssel<a class="headerlink" href="#losche-alle-ratelimit-schlussel" title="Permanent link">&para;</a></h2>
<p>Wenn Sie das UI nicht verwenden wollen und stattdessen alle Schlüssel in der Redis-Datenbank löschen wollen, können Sie redis-cli für diese Aufgabe verwenden:</p>
<div class="highlight"><pre><span></span><code>docker-compose exec redis-mailcow sh
# Unlink (verfügbar in Redis &gt;=4.) löscht im Hintergrund
redis-cli --scan --pattern RL* | xargs redis-cli unlink
</code></pre></div>
<p>```
docker-compose exec redis-mailcow sh</p>
<h1 id="unlink-verfugbar-in-redis-4-loscht-im-hintergrund">Unlink (verfügbar in Redis &gt;=4.) löscht im Hintergrund<a class="headerlink" href="#unlink-verfugbar-in-redis-4-loscht-im-hintergrund" title="Permanent link">&para;</a></h1>
<p>redis-cli --scan --pattern RL* | xargs redis-cli unlink
```</p>
<p>Starten Sie Rspamd neu:</p>
<div class="highlight"><pre><span></span><code>docker-compose <span class="nb">exec</span> redis-mailcow sh
</code></pre></div>
<p><code>bash
docker-compose exec redis-mailcow sh</code></p>
<h2 id="erneutes-senden-von-quarantane-benachrichtigungen-auslosen">Erneutes Senden von Quarantäne-Benachrichtigungen auslösen<a class="headerlink" href="#erneutes-senden-von-quarantane-benachrichtigungen-auslosen" title="Permanent link">&para;</a></h2>
<p>Sollte nur zur Fehlersuche verwendet werden!</p>
<div class="highlight"><pre><span></span><code>docker-compose exec dovecot-mailcow bash
mysql -umailcow -p$DBPASS mailcow -e &quot;update quarantine set notified = 0;&quot;
<p><code>docker-compose exec dovecot-mailcow bash
mysql -umailcow -p$DBPASS mailcow -e "update quarantine set notified = 0;"
redis-cli -h redis DEL Q_LAST_NOTIFIED
quarantine_notify.py
</code></pre></div>
quarantine_notify.py</code></p>
<h2 id="speicherung-der-historie-erhohen">Speicherung der Historie erhöhen<a class="headerlink" href="#speicherung-der-historie-erhohen" title="Permanent link">&para;</a></h2>
<p>Standardmäßig speichert Rspamd 1000 Elemente in der Historie.</p>
<p>Die Historie wird komprimiert gespeichert.</p>
<p>Es wird empfohlen, hier keinen unverhältnismäßig hohen Wert zu verwenden, probieren Sie etwas in der Größenordnung von 5000 oder 10000 und sehen Sie, wie Ihr Server damit umgeht:</p>
<p>Bearbeiten Sie <code>data/conf/rspamd/local.d/history_redis.conf</code>:</p>
<div class="highlight"><pre><span></span><code>nrows = 1000; # Ă„ndern Sie diesen Wert
</code></pre></div>
<p><code>nrows = 1000; # Ă„ndern Sie diesen Wert</code></p>
<p>Starten Sie anschlieĂźend Rspamd neu: <code>docker-compose restart rspamd-mailcow</code></p>
<hr>
@ -2800,7 +2978,7 @@ quarantine_notify.py
<script id="__config" type="application/json">{"base": "../../../..", "features": ["navigation.top", "navigation.tracking"], "search": "../../../../assets/javascripts/workers/search.2a1c317c.min.js", "translations": {"clipboard.copied": "In Zwischenablage kopiert", "clipboard.copy": "In Zwischenablage kopieren", "search.config.lang": "de", "search.config.pipeline": "trimmer, stopWordFilter", "search.config.separator": "[\\s\\-]+", "search.placeholder": "Suche", "search.result.more.one": "1 weiteres Suchergebnis auf dieser Seite", "search.result.more.other": "# weitere Suchergebnisse auf dieser Seite", "search.result.none": "Keine Suchergebnisse", "search.result.one": "1 Suchergebnis", "search.result.other": "# Suchergebnisse", "search.result.placeholder": "Suchbegriff eingeben", "search.result.term.missing": "Es fehlt", "select.version.title": "Version ausw\u00e4hlen"}}</script>
<script src="../../../../assets/javascripts/bundle.748e2769.min.js"></script>
<script src="../../../../assets/javascripts/bundle.c2e1ee47.min.js"></script>
<script src="../../../../assets/javascripts/client.js"></script>

Datei anzeigen

@ -11,7 +11,7 @@
<link rel="canonical" href="https://mailcow.github.io/mailcow-dockerized-docs/de/manual-guides/SOGo/u_e-sogo/">
<link rel="icon" href="../../../../assets/images/favicon.png">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.11">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.14">
@ -19,10 +19,10 @@
<link rel="stylesheet" href="../../../../assets/stylesheets/main.8c5ef100.min.css">
<link rel="stylesheet" href="../../../../assets/stylesheets/main.3de6f41f.min.css">
<link rel="stylesheet" href="../../../../assets/stylesheets/palette.9647289d.min.css">
<link rel="stylesheet" href="../../../../assets/stylesheets/palette.cc9b2e1e.min.css">
@ -2519,53 +2519,51 @@ Nachdem Sie <code>data/conf/sogo/custom-theme.js</code> modifiziert und Ă„nderun
<li>öffnen Sie die Entwicklerkonsole des Browsers, normalerweise ist die Tastenkombination F12</li>
<li>nur wenn Sie Firefox benutzen: schreiben Sie mit der Hand in die Entwicklerkonsole <code>allow pasting</code> und drĂĽcken Sie Enter</li>
<li>fĂĽgen Sie den Java-Script-Schnipsel in die Entwicklungskonsole ein:
<div class="highlight"><pre><span></span><code>copy([].slice.call(document.styleSheets)
<code>copy([].slice.call(document.styleSheets)
.map(e =&gt; e.ownerNode)
.filter(e =&gt; e.hasAttribute(&#39;md-theme-style&#39;))
.filter(e =&gt; e.hasAttribute('md-theme-style'))
.map(e =&gt; e.textInhalt)
.join(&#39;\n&#39;)
)
</code></pre></div></li>
.join('\n')
)</code></li>
<li>Ă–ffnen Sie den Texteditor und fĂĽgen Sie die Daten aus der Zwischenablage ein (Strg+V), Sie sollten ein minimiertes CSS erhalten, speichern Sie es</li>
<li>kopieren Sie die CSS-Datei auf den Mailcow-Server <code>data/conf/sogo/custom-theme.css</code></li>
<li>editiere <code>data/conf/sogo/sogo.conf</code> und setze <code>SOGoUIxDebugEnabled = NO;</code></li>
<li>Anhängen/Erstellen von <code>docker-compose.override.yml</code> mit:
<div class="highlight"><pre><span></span><code>Version: &#39;2.1&#39;
Dienste:
```
Version: '2.1'</li>
</ol>
<p>Dienste:
sogo-mailcow:
volumes:
- ./data/conf/sogo/custom-theme.css:/usr/lib/GNUstep/SOGo/WebServerResources/css/theme-default.css:z
</code></pre></div></li>
<li>fĂĽhren Sie <code>docker-compose up -d</code> aus</li>
<li>AusfĂĽhren von <code>docker-compose restart memcached-mailcow</code></li>
</ol>
<code>``
11. fĂĽhren Sie</code>docker-compose up -d<code>aus
12. AusfĂĽhren von</code>docker-compose restart memcached-mailcow`</p>
<h2 id="zurucksetzen-auf-das-sogo-standardthema">ZurĂĽcksetzen auf das SOGo Standardthema<a class="headerlink" href="#zurucksetzen-auf-das-sogo-standardthema" title="Permanent link">&para;</a></h2>
<ol>
<li>checken Sie <code>data/conf/sogo/custom-theme.js</code> aus, indem Sie <code>git fetch ; git checkout origin/master data/conf/sogo/custom-theme.js data/conf/sogo/custom-theme.js</code> ausfĂĽhren</li>
<li>Suchen Sie in <code>data/conf/sogo/custom-theme.js</code>:
<div class="highlight"><pre><span></span><code>// Neue Paletten auf das Standardthema anwenden, einige Farbtöne neu zuordnen
$mdThemingProvider.theme(&#39;default&#39;)
.primaryPalette(&#39;green-cow&#39;, {
&#39;default&#39;: &#39;400&#39;, // Hintergrundfarbe der oberen Symbolleisten
hue-1&#39;: &#39;400&#39;,
&#39;hue-2&#39;: &#39;600&#39;, // Hintergrundfarbe der Seitenleiste
&#39;hue-3&#39;: &#39;A700&#39;
<code>// Neue Paletten auf das Standardthema anwenden, einige Farbtöne neu zuordnen
$mdThemingProvider.theme('default')
.primaryPalette('green-cow', {
'default': '400', // Hintergrundfarbe der oberen Symbolleisten
hue-1': '400',
'hue-2': '600', // Hintergrundfarbe der Seitenleiste
'hue-3': 'A700'
})
.accentPalette(&#39;green&#39;, {
&#39;default&#39;: &#39;600&#39;, // Hintergrundfarbe der Fab-Schaltflächen und des Anmeldebildschirms
hue-1&#39;: &#39;300&#39;, // Hintergrundfarbe der Symbolleiste der mittleren Liste
hue-2&#39;: &#39;300&#39;, // Hervorhebungsfarbe für ausgewählte Nachrichten und den aktuellen Tageskalender
hue-3&#39;: &#39;A700&#39;
.accentPalette('green', {
'default': '600', // Hintergrundfarbe der Fab-Schaltflächen und des Anmeldebildschirms
hue-1': '300', // Hintergrundfarbe der Symbolleiste der mittleren Liste
hue-2': '300', // Hervorhebungsfarbe für ausgewählte Nachrichten und den aktuellen Tageskalender
hue-3': 'A700'
})
.backgroundPalette(&#39;frost-grey&#39;);
</code></pre></div>
.backgroundPalette('frost-grey');</code>
und ersetzen Sie es durch:
<div class="highlight"><pre><span></span><code> $mdThemingProvider.theme(&#39;default&#39;);
</code></pre></div></li>
<code>$mdThemingProvider.theme('default');</code></li>
<li>Entfernen Sie aus <code>docker-compose.override.yml</code> Volume Mount in <code>sogo-mailcow</code>:
<div class="highlight"><pre><span></span><code>- ./data/conf/sogo/custom-theme.css:/usr/lib/GNUstep/SOGo/WebServerResources/css/theme-default.css:z
</code></pre></div></li>
```</li>
<li>./data/conf/sogo/custom-theme.css:/usr/lib/GNUstep/SOGo/WebServerResources/css/theme-default.css:z
```</li>
<li>fĂĽhren Sie <code>docker-compose up -d</code> aus</li>
<li>Starten Sie <code>docker-compose restart memcached-mailcow</code>.</li>
</ol>
@ -2581,16 +2579,14 @@ Nachdem Sie diese Datei ersetzt haben, mĂĽssen Sie SOGo und Memcached Container
<p>Domains sind normalerweise voneinander isoliert.</p>
<p>Sie können das ändern, indem Sie <code>data/conf/sogo/sogo.conf</code> modifizieren:</p>
<p>Suche...
<div class="highlight"><pre><span></span><code> // SOGoDomainsVisibility = (
<code>// SOGoDomainsVisibility = (
// (domain1.tld, domain5.tld),
// (domain3.tld, domain2.tld)
// );
</code></pre></div>
// );</code>
...und ersetzen Sie diese durch - zum Beispiel:</p>
<div class="highlight"><pre><span></span><code> SOGoDomainsVisibility = (
<p><code>SOGoDomainsVisibility = (
(beispiel.org, beispiel.com, beispiel.net)
);
</code></pre></div>
);</code></p>
<p>SOGo neu starten: <code>docker-compose restart sogo-mailcow</code></p>
<h2 id="deaktivieren-sie-die-passwortanderung">Deaktivieren Sie die Passwortänderung<a class="headerlink" href="#deaktivieren-sie-die-passwortanderung" title="Permanent link">&para;</a></h2>
<p>Bearbeiten Sie <code>data/conf/sogo/sogo.conf</code> und <strong>ändern</strong> Sie <code>SOGoPasswordChangeEnabled</code> auf <code>NO</code>. Bitte fügen Sie keinen neuen Parameter hinzu.</p>
@ -2716,7 +2712,7 @@ Nachdem Sie diese Datei ersetzt haben, mĂĽssen Sie SOGo und Memcached Container
<script id="__config" type="application/json">{"base": "../../../..", "features": ["navigation.top", "navigation.tracking"], "search": "../../../../assets/javascripts/workers/search.2a1c317c.min.js", "translations": {"clipboard.copied": "In Zwischenablage kopiert", "clipboard.copy": "In Zwischenablage kopieren", "search.config.lang": "de", "search.config.pipeline": "trimmer, stopWordFilter", "search.config.separator": "[\\s\\-]+", "search.placeholder": "Suche", "search.result.more.one": "1 weiteres Suchergebnis auf dieser Seite", "search.result.more.other": "# weitere Suchergebnisse auf dieser Seite", "search.result.none": "Keine Suchergebnisse", "search.result.one": "1 Suchergebnis", "search.result.other": "# Suchergebnisse", "search.result.placeholder": "Suchbegriff eingeben", "search.result.term.missing": "Es fehlt", "select.version.title": "Version ausw\u00e4hlen"}}</script>
<script src="../../../../assets/javascripts/bundle.748e2769.min.js"></script>
<script src="../../../../assets/javascripts/bundle.c2e1ee47.min.js"></script>
<script src="../../../../assets/javascripts/client.js"></script>

Datei anzeigen

@ -11,7 +11,7 @@
<link rel="canonical" href="https://mailcow.github.io/mailcow-dockerized-docs/de/manual-guides/Unbound/u_e-unbound-fwd/">
<link rel="icon" href="../../../../assets/images/favicon.png">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.11">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.14">
@ -19,10 +19,10 @@
<link rel="stylesheet" href="../../../../assets/stylesheets/main.8c5ef100.min.css">
<link rel="stylesheet" href="../../../../assets/stylesheets/main.3de6f41f.min.css">
<link rel="stylesheet" href="../../../../assets/stylesheets/palette.9647289d.min.css">
<link rel="stylesheet" href="../../../../assets/stylesheets/palette.cc9b2e1e.min.css">
@ -2444,18 +2444,15 @@
<strong>Wichtig</strong>: Nur DNSSEC-validierende DNS-Dienste werden funktionieren.</p>
<h2 id="methode-a-unbound">Methode A, Unbound<a class="headerlink" href="#methode-a-unbound" title="Permanent link">&para;</a></h2>
<p>Bearbeiten Sie <code>data/conf/unbound/unbound.conf</code> und fĂĽgen Sie die folgenden Parameter hinzu:</p>
<div class="highlight"><pre><span></span><code>forward-zone:
name: &quot;.&quot;
<p><code>forward-zone:
name: "."
forward-addr: 8.8.8.8 # VERWENDEN SIE KEINE Ă–FFENTLICHEN DNS-SERVER - NUR EIN BEISPIEL
forward-addr: 8.8.4.4 # VERWENDET KEINE Ă–FFENTLICHEN DNS-SERVER - NUR EIN BEISPIEL
</code></pre></div>
forward-addr: 8.8.4.4 # VERWENDET KEINE Ă–FFENTLICHEN DNS-SERVER - NUR EIN BEISPIEL</code></p>
<p>Unbound neu starten:</p>
<div class="highlight"><pre><span></span><code>docker-compose restart unbound-mailcow
</code></pre></div>
<p><code>docker-compose restart unbound-mailcow</code></p>
<h2 id="methode-b-uberschreiben-der-datei">Methode B, Ăśberschreiben der Datei<a class="headerlink" href="#methode-b-uberschreiben-der-datei" title="Permanent link">&para;</a></h2>
<div class="highlight"><pre><span></span><code>cd /opt/mailcow-dockerized
cp helper-scripts/docker-compose.override.yml.d/EXTERNAL_DNS/docker-compose.override.yml .
</code></pre></div>
<p><code>cd /opt/mailcow-dockerized
cp helper-scripts/docker-compose.override.yml.d/EXTERNAL_DNS/docker-compose.override.yml .</code></p>
<p>Bearbeiten Sie <code>docker-compose.override.yml</code> und passen Sie die IP an.</p>
<p>FĂĽhren Sie <code>docker-compose down ; docker-compose up -d</code> aus.</p>
@ -2577,7 +2574,7 @@ cp helper-scripts/docker-compose.override.yml.d/EXTERNAL_DNS/docker-compose.over
<script id="__config" type="application/json">{"base": "../../../..", "features": ["navigation.top", "navigation.tracking"], "search": "../../../../assets/javascripts/workers/search.2a1c317c.min.js", "translations": {"clipboard.copied": "In Zwischenablage kopiert", "clipboard.copy": "In Zwischenablage kopieren", "search.config.lang": "de", "search.config.pipeline": "trimmer, stopWordFilter", "search.config.separator": "[\\s\\-]+", "search.placeholder": "Suche", "search.result.more.one": "1 weiteres Suchergebnis auf dieser Seite", "search.result.more.other": "# weitere Suchergebnisse auf dieser Seite", "search.result.none": "Keine Suchergebnisse", "search.result.one": "1 Suchergebnis", "search.result.other": "# Suchergebnisse", "search.result.placeholder": "Suchbegriff eingeben", "search.result.term.missing": "Es fehlt", "select.version.title": "Version ausw\u00e4hlen"}}</script>
<script src="../../../../assets/javascripts/bundle.748e2769.min.js"></script>
<script src="../../../../assets/javascripts/bundle.c2e1ee47.min.js"></script>
<script src="../../../../assets/javascripts/client.js"></script>

Datei anzeigen

@ -11,7 +11,7 @@
<link rel="canonical" href="https://mailcow.github.io/mailcow-dockerized-docs/de/manual-guides/Watchdog/u_e-watchdog-thresholds/">
<link rel="icon" href="../../../../assets/images/favicon.png">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.11">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.14">
@ -19,10 +19,10 @@
<link rel="stylesheet" href="../../../../assets/stylesheets/main.8c5ef100.min.css">
<link rel="stylesheet" href="../../../../assets/stylesheets/main.3de6f41f.min.css">
<link rel="stylesheet" href="../../../../assets/stylesheets/palette.9647289d.min.css">
<link rel="stylesheet" href="../../../../assets/stylesheets/palette.cc9b2e1e.min.css">
@ -2677,7 +2677,7 @@
<p>Watchdog verwendet Standardwerte fĂĽr alle in <code>docker-compose.yml</code> definierten Thresholde.</p>
<p>Die Standardwerte sind fĂĽr die meisten Konfigurationen geeignet.
Beispiel:
<div class="highlight"><pre><span></span><code>- NGINX_THRESHOLD=${NGINX_THRESHOLD:-5}
<code>- NGINX_THRESHOLD=${NGINX_THRESHOLD:-5}
- UNBOUND_THRESHOLD=${UNBOUND_THRESHOLD:-5}
- REDIS_THRESHOLD=${REDIS_THRESHOLD:-5}
- MYSQL_THRESHOLD=${MYSQL_THRESHOLD:-5}
@ -2694,8 +2694,7 @@ Beispiel:
- RSPAMD_THRESHOLD=${RSPAMD_THRESHOLD:-5}
- OLEFY_THRESHOLD=${OLEFY_THRESHOLD:-5}
- MAILQ_THRESHOLD=${MAILQ_THRESHOLD:-20}
- MAILQ_CRIT=${MAILQ_CRIT:-30}
</code></pre></div></p>
- MAILQ_CRIT=${MAILQ_CRIT:-30}</code></p>
<p>Um sie anzupassen, fĂĽgen Sie einfach die notwendigen Threshold Variablen (z.B. <code>MAILQ_THRESHOLD=10</code>) zu <code>mailcow.conf</code> hinzu und fĂĽhren <code>docker-compose up -d</code> aus.</p>
<h3 id="threshold-beschreibungen">Threshold Beschreibungen<a class="headerlink" href="#threshold-beschreibungen" title="Permanent link">&para;</a></h3>
<h4 id="nginx_threshold">NGINX_THRESHOLD<a class="headerlink" href="#nginx_threshold" title="Permanent link">&para;</a></h4>
@ -2851,7 +2850,7 @@ Beispiel:
<script id="__config" type="application/json">{"base": "../../../..", "features": ["navigation.top", "navigation.tracking"], "search": "../../../../assets/javascripts/workers/search.2a1c317c.min.js", "translations": {"clipboard.copied": "In Zwischenablage kopiert", "clipboard.copy": "In Zwischenablage kopieren", "search.config.lang": "de", "search.config.pipeline": "trimmer, stopWordFilter", "search.config.separator": "[\\s\\-]+", "search.placeholder": "Suche", "search.result.more.one": "1 weiteres Suchergebnis auf dieser Seite", "search.result.more.other": "# weitere Suchergebnisse auf dieser Seite", "search.result.none": "Keine Suchergebnisse", "search.result.one": "1 Suchergebnis", "search.result.other": "# Suchergebnisse", "search.result.placeholder": "Suchbegriff eingeben", "search.result.term.missing": "Es fehlt", "select.version.title": "Version ausw\u00e4hlen"}}</script>
<script src="../../../../assets/javascripts/bundle.748e2769.min.js"></script>
<script src="../../../../assets/javascripts/bundle.c2e1ee47.min.js"></script>
<script src="../../../../assets/javascripts/client.js"></script>

Datei anzeigen

@ -11,7 +11,7 @@
<link rel="canonical" href="https://mailcow.github.io/mailcow-dockerized-docs/de/manual-guides/mailcow-UI/u_e-mailcow_ui-bl_wl/">
<link rel="icon" href="../../../../assets/images/favicon.png">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.11">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.14">
@ -19,10 +19,10 @@
<link rel="stylesheet" href="../../../../assets/stylesheets/main.8c5ef100.min.css">
<link rel="stylesheet" href="../../../../assets/stylesheets/main.3de6f41f.min.css">
<link rel="stylesheet" href="../../../../assets/stylesheets/palette.9647289d.min.css">
<link rel="stylesheet" href="../../../../assets/stylesheets/palette.cc9b2e1e.min.css">
@ -2502,7 +2502,7 @@
<script id="__config" type="application/json">{"base": "../../../..", "features": ["navigation.top", "navigation.tracking"], "search": "../../../../assets/javascripts/workers/search.2a1c317c.min.js", "translations": {"clipboard.copied": "In Zwischenablage kopiert", "clipboard.copy": "In Zwischenablage kopieren", "search.config.lang": "de", "search.config.pipeline": "trimmer, stopWordFilter", "search.config.separator": "[\\s\\-]+", "search.placeholder": "Suche", "search.result.more.one": "1 weiteres Suchergebnis auf dieser Seite", "search.result.more.other": "# weitere Suchergebnisse auf dieser Seite", "search.result.none": "Keine Suchergebnisse", "search.result.one": "1 Suchergebnis", "search.result.other": "# Suchergebnisse", "search.result.placeholder": "Suchbegriff eingeben", "search.result.term.missing": "Es fehlt", "select.version.title": "Version ausw\u00e4hlen"}}</script>
<script src="../../../../assets/javascripts/bundle.748e2769.min.js"></script>
<script src="../../../../assets/javascripts/bundle.c2e1ee47.min.js"></script>
<script src="../../../../assets/javascripts/client.js"></script>

Datei anzeigen

@ -11,7 +11,7 @@
<link rel="canonical" href="https://mailcow.github.io/mailcow-dockerized-docs/de/manual-guides/mailcow-UI/u_e-mailcow_ui-config/">
<link rel="icon" href="../../../../assets/images/favicon.png">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.11">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.14">
@ -19,10 +19,10 @@
<link rel="stylesheet" href="../../../../assets/stylesheets/main.8c5ef100.min.css">
<link rel="stylesheet" href="../../../../assets/stylesheets/main.3de6f41f.min.css">
<link rel="stylesheet" href="../../../../assets/stylesheets/palette.9647289d.min.css">
<link rel="stylesheet" href="../../../../assets/stylesheets/palette.cc9b2e1e.min.css">
@ -2518,7 +2518,7 @@
<script id="__config" type="application/json">{"base": "../../../..", "features": ["navigation.top", "navigation.tracking"], "search": "../../../../assets/javascripts/workers/search.2a1c317c.min.js", "translations": {"clipboard.copied": "In Zwischenablage kopiert", "clipboard.copy": "In Zwischenablage kopieren", "search.config.lang": "de", "search.config.pipeline": "trimmer, stopWordFilter", "search.config.separator": "[\\s\\-]+", "search.placeholder": "Suche", "search.result.more.one": "1 weiteres Suchergebnis auf dieser Seite", "search.result.more.other": "# weitere Suchergebnisse auf dieser Seite", "search.result.none": "Keine Suchergebnisse", "search.result.one": "1 Suchergebnis", "search.result.other": "# Suchergebnisse", "search.result.placeholder": "Suchbegriff eingeben", "search.result.term.missing": "Es fehlt", "select.version.title": "Version ausw\u00e4hlen"}}</script>
<script src="../../../../assets/javascripts/bundle.748e2769.min.js"></script>
<script src="../../../../assets/javascripts/bundle.c2e1ee47.min.js"></script>
<script src="../../../../assets/javascripts/client.js"></script>

Datei anzeigen

@ -11,7 +11,7 @@
<link rel="canonical" href="https://mailcow.github.io/mailcow-dockerized-docs/de/manual-guides/mailcow-UI/u_e-mailcow_ui-css/">
<link rel="icon" href="../../../../assets/images/favicon.png">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.11">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.14">
@ -19,10 +19,10 @@
<link rel="stylesheet" href="../../../../assets/stylesheets/main.8c5ef100.min.css">
<link rel="stylesheet" href="../../../../assets/stylesheets/main.3de6f41f.min.css">
<link rel="stylesheet" href="../../../../assets/stylesheets/palette.9647289d.min.css">
<link rel="stylesheet" href="../../../../assets/stylesheets/palette.cc9b2e1e.min.css">
@ -2496,7 +2496,7 @@
<script id="__config" type="application/json">{"base": "../../../..", "features": ["navigation.top", "navigation.tracking"], "search": "../../../../assets/javascripts/workers/search.2a1c317c.min.js", "translations": {"clipboard.copied": "In Zwischenablage kopiert", "clipboard.copy": "In Zwischenablage kopieren", "search.config.lang": "de", "search.config.pipeline": "trimmer, stopWordFilter", "search.config.separator": "[\\s\\-]+", "search.placeholder": "Suche", "search.result.more.one": "1 weiteres Suchergebnis auf dieser Seite", "search.result.more.other": "# weitere Suchergebnisse auf dieser Seite", "search.result.none": "Keine Suchergebnisse", "search.result.one": "1 Suchergebnis", "search.result.other": "# Suchergebnisse", "search.result.placeholder": "Suchbegriff eingeben", "search.result.term.missing": "Es fehlt", "select.version.title": "Version ausw\u00e4hlen"}}</script>
<script src="../../../../assets/javascripts/bundle.748e2769.min.js"></script>
<script src="../../../../assets/javascripts/bundle.c2e1ee47.min.js"></script>
<script src="../../../../assets/javascripts/client.js"></script>

Datei anzeigen

@ -11,7 +11,7 @@
<link rel="canonical" href="https://mailcow.github.io/mailcow-dockerized-docs/de/manual-guides/mailcow-UI/u_e-mailcow_ui-fido/">
<link rel="icon" href="../../../../assets/images/favicon.png">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.11">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.14">
@ -19,10 +19,10 @@
<link rel="stylesheet" href="../../../../assets/stylesheets/main.8c5ef100.min.css">
<link rel="stylesheet" href="../../../../assets/stylesheets/main.3de6f41f.min.css">
<link rel="stylesheet" href="../../../../assets/stylesheets/palette.9647289d.min.css">
<link rel="stylesheet" href="../../../../assets/stylesheets/palette.cc9b2e1e.min.css">
@ -2581,7 +2581,7 @@
<script id="__config" type="application/json">{"base": "../../../..", "features": ["navigation.top", "navigation.tracking"], "search": "../../../../assets/javascripts/workers/search.2a1c317c.min.js", "translations": {"clipboard.copied": "In Zwischenablage kopiert", "clipboard.copy": "In Zwischenablage kopieren", "search.config.lang": "de", "search.config.pipeline": "trimmer, stopWordFilter", "search.config.separator": "[\\s\\-]+", "search.placeholder": "Suche", "search.result.more.one": "1 weiteres Suchergebnis auf dieser Seite", "search.result.more.other": "# weitere Suchergebnisse auf dieser Seite", "search.result.none": "Keine Suchergebnisse", "search.result.one": "1 Suchergebnis", "search.result.other": "# Suchergebnisse", "search.result.placeholder": "Suchbegriff eingeben", "search.result.term.missing": "Es fehlt", "select.version.title": "Version ausw\u00e4hlen"}}</script>
<script src="../../../../assets/javascripts/bundle.748e2769.min.js"></script>
<script src="../../../../assets/javascripts/bundle.c2e1ee47.min.js"></script>
<script src="../../../../assets/javascripts/client.js"></script>

Datei anzeigen

@ -11,7 +11,7 @@
<link rel="canonical" href="https://mailcow.github.io/mailcow-dockerized-docs/de/manual-guides/mailcow-UI/u_e-mailcow_ui-netfilter/">
<link rel="icon" href="../../../../assets/images/favicon.png">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.11">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.14">
@ -19,10 +19,10 @@
<link rel="stylesheet" href="../../../../assets/stylesheets/main.8c5ef100.min.css">
<link rel="stylesheet" href="../../../../assets/stylesheets/main.3de6f41f.min.css">
<link rel="stylesheet" href="../../../../assets/stylesheets/palette.9647289d.min.css">
<link rel="stylesheet" href="../../../../assets/stylesheets/palette.cc9b2e1e.min.css">
@ -2578,7 +2578,7 @@ Sollte das der Fall sein empfiehlt es sich mit einem Klick auf <code>ZurĂĽcksetz
<script id="__config" type="application/json">{"base": "../../../..", "features": ["navigation.top", "navigation.tracking"], "search": "../../../../assets/javascripts/workers/search.2a1c317c.min.js", "translations": {"clipboard.copied": "In Zwischenablage kopiert", "clipboard.copy": "In Zwischenablage kopieren", "search.config.lang": "de", "search.config.pipeline": "trimmer, stopWordFilter", "search.config.separator": "[\\s\\-]+", "search.placeholder": "Suche", "search.result.more.one": "1 weiteres Suchergebnis auf dieser Seite", "search.result.more.other": "# weitere Suchergebnisse auf dieser Seite", "search.result.none": "Keine Suchergebnisse", "search.result.one": "1 Suchergebnis", "search.result.other": "# Suchergebnisse", "search.result.placeholder": "Suchbegriff eingeben", "search.result.term.missing": "Es fehlt", "select.version.title": "Version ausw\u00e4hlen"}}</script>
<script src="../../../../assets/javascripts/bundle.748e2769.min.js"></script>
<script src="../../../../assets/javascripts/bundle.c2e1ee47.min.js"></script>
<script src="../../../../assets/javascripts/client.js"></script>

Datei anzeigen

@ -11,7 +11,7 @@
<link rel="canonical" href="https://mailcow.github.io/mailcow-dockerized-docs/de/manual-guides/mailcow-UI/u_e-mailcow_ui-pushover/">
<link rel="icon" href="../../../../assets/images/favicon.png">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.11">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.14">
@ -19,10 +19,10 @@
<link rel="stylesheet" href="../../../../assets/stylesheets/main.8c5ef100.min.css">
<link rel="stylesheet" href="../../../../assets/stylesheets/main.3de6f41f.min.css">
<link rel="stylesheet" href="../../../../assets/stylesheets/palette.9647289d.min.css">
<link rel="stylesheet" href="../../../../assets/stylesheets/palette.cc9b2e1e.min.css">
@ -2506,7 +2506,7 @@
<script id="__config" type="application/json">{"base": "../../../..", "features": ["navigation.top", "navigation.tracking"], "search": "../../../../assets/javascripts/workers/search.2a1c317c.min.js", "translations": {"clipboard.copied": "In Zwischenablage kopiert", "clipboard.copy": "In Zwischenablage kopieren", "search.config.lang": "de", "search.config.pipeline": "trimmer, stopWordFilter", "search.config.separator": "[\\s\\-]+", "search.placeholder": "Suche", "search.result.more.one": "1 weiteres Suchergebnis auf dieser Seite", "search.result.more.other": "# weitere Suchergebnisse auf dieser Seite", "search.result.none": "Keine Suchergebnisse", "search.result.one": "1 Suchergebnis", "search.result.other": "# Suchergebnisse", "search.result.placeholder": "Suchbegriff eingeben", "search.result.term.missing": "Es fehlt", "select.version.title": "Version ausw\u00e4hlen"}}</script>
<script src="../../../../assets/javascripts/bundle.748e2769.min.js"></script>
<script src="../../../../assets/javascripts/bundle.c2e1ee47.min.js"></script>
<script src="../../../../assets/javascripts/client.js"></script>

Datei anzeigen

@ -11,7 +11,7 @@
<link rel="canonical" href="https://mailcow.github.io/mailcow-dockerized-docs/de/manual-guides/mailcow-UI/u_e-mailcow_ui-spamalias/">
<link rel="icon" href="../../../../assets/images/favicon.png">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.11">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.14">
@ -19,10 +19,10 @@
<link rel="stylesheet" href="../../../../assets/stylesheets/main.8c5ef100.min.css">
<link rel="stylesheet" href="../../../../assets/stylesheets/main.3de6f41f.min.css">
<link rel="stylesheet" href="../../../../assets/stylesheets/palette.9647289d.min.css">
<link rel="stylesheet" href="../../../../assets/stylesheets/palette.cc9b2e1e.min.css">
@ -2497,7 +2497,7 @@
<script id="__config" type="application/json">{"base": "../../../..", "features": ["navigation.top", "navigation.tracking"], "search": "../../../../assets/javascripts/workers/search.2a1c317c.min.js", "translations": {"clipboard.copied": "In Zwischenablage kopiert", "clipboard.copy": "In Zwischenablage kopieren", "search.config.lang": "de", "search.config.pipeline": "trimmer, stopWordFilter", "search.config.separator": "[\\s\\-]+", "search.placeholder": "Suche", "search.result.more.one": "1 weiteres Suchergebnis auf dieser Seite", "search.result.more.other": "# weitere Suchergebnisse auf dieser Seite", "search.result.none": "Keine Suchergebnisse", "search.result.one": "1 Suchergebnis", "search.result.other": "# Suchergebnisse", "search.result.placeholder": "Suchbegriff eingeben", "search.result.term.missing": "Es fehlt", "select.version.title": "Version ausw\u00e4hlen"}}</script>
<script src="../../../../assets/javascripts/bundle.748e2769.min.js"></script>
<script src="../../../../assets/javascripts/bundle.c2e1ee47.min.js"></script>
<script src="../../../../assets/javascripts/client.js"></script>

Datei anzeigen

@ -11,7 +11,7 @@
<link rel="canonical" href="https://mailcow.github.io/mailcow-dockerized-docs/de/manual-guides/mailcow-UI/u_e-mailcow_ui-spamfilter/">
<link rel="icon" href="../../../../assets/images/favicon.png">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.11">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.14">
@ -19,10 +19,10 @@
<link rel="stylesheet" href="../../../../assets/stylesheets/main.8c5ef100.min.css">
<link rel="stylesheet" href="../../../../assets/stylesheets/main.3de6f41f.min.css">
<link rel="stylesheet" href="../../../../assets/stylesheets/palette.9647289d.min.css">
<link rel="stylesheet" href="../../../../assets/stylesheets/palette.cc9b2e1e.min.css">
@ -2501,7 +2501,7 @@ FĂĽr eine domainweite Black- und Whitelist lesen Sie bitte unsere Anleitung zu <
<script id="__config" type="application/json">{"base": "../../../..", "features": ["navigation.top", "navigation.tracking"], "search": "../../../../assets/javascripts/workers/search.2a1c317c.min.js", "translations": {"clipboard.copied": "In Zwischenablage kopiert", "clipboard.copy": "In Zwischenablage kopieren", "search.config.lang": "de", "search.config.pipeline": "trimmer, stopWordFilter", "search.config.separator": "[\\s\\-]+", "search.placeholder": "Suche", "search.result.more.one": "1 weiteres Suchergebnis auf dieser Seite", "search.result.more.other": "# weitere Suchergebnisse auf dieser Seite", "search.result.none": "Keine Suchergebnisse", "search.result.one": "1 Suchergebnis", "search.result.other": "# Suchergebnisse", "search.result.placeholder": "Suchbegriff eingeben", "search.result.term.missing": "Es fehlt", "select.version.title": "Version ausw\u00e4hlen"}}</script>
<script src="../../../../assets/javascripts/bundle.748e2769.min.js"></script>
<script src="../../../../assets/javascripts/bundle.c2e1ee47.min.js"></script>
<script src="../../../../assets/javascripts/client.js"></script>

Datei anzeigen

@ -11,7 +11,7 @@
<link rel="canonical" href="https://mailcow.github.io/mailcow-dockerized-docs/de/manual-guides/mailcow-UI/u_e-mailcow_ui-sub_addressing/">
<link rel="icon" href="../../../../assets/images/favicon.png">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.11">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.14">
@ -19,10 +19,10 @@
<link rel="stylesheet" href="../../../../assets/stylesheets/main.8c5ef100.min.css">
<link rel="stylesheet" href="../../../../assets/stylesheets/main.3de6f41f.min.css">
<link rel="stylesheet" href="../../../../assets/stylesheets/palette.9647289d.min.css">
<link rel="stylesheet" href="../../../../assets/stylesheets/palette.cc9b2e1e.min.css">
@ -2431,20 +2431,19 @@
<p>1. Diese Nachricht in einen Unterordner "facebook" verschieben (wird in Kleinbuchstaben erstellt, falls nicht vorhanden)</p>
<p>2. Den Tag dem Betreff voranstellen: "[facebook] Betreff"</p>
<p>Bitte beachten Sie: GroĂźgeschriebene Tags werden in Kleinbuchstaben umgewandelt, mit Ausnahme des ersten Buchstabens. Wenn Sie den Tag so lassen wollen, wie er ist, wenden Sie bitte den folgenden Diff an und starten Sie mailcow neu:
<div class="highlight"><pre><span></span><code>diff --git a/data/conf/dovecot/global_sieve_after b/data/conf/dovecot/global_sieve_after
<code>diff --git a/data/conf/dovecot/global_sieve_after b/data/conf/dovecot/global_sieve_after
index e047136e..933c4137 100644
--- a/data/conf/dovecot/global_sieve_after
+++ b/data/conf/dovecot/global_sieve_after
@@ -15,7 +15,7 @@ if allof (
envelope :detail :matches &quot;to&quot; &quot;*&quot;,
header :contains &quot;X-Moo-Tag&quot; &quot;YES&quot;
envelope :detail :matches "to" "*",
header :contains "X-Moo-Tag" "YES"
) {
- set :lower :upperfirst &quot;tag&quot; &quot;${1}&quot;;
+ set &quot;tag&quot; &quot;${1}&quot;;
if mailboxexists &quot;INBOX/${1}&quot; {
fileinto &quot;INBOX/${1}&quot;;
} else {
</code></pre></div></p>
- set :lower :upperfirst "tag" "${1}";
+ set "tag" "${1}";
if mailboxexists "INBOX/${1}" {
fileinto "INBOX/${1}";
} else {</code></p>
<hr>
<div class="md-source-file">
@ -2564,7 +2563,7 @@ index e047136e..933c4137 100644
<script id="__config" type="application/json">{"base": "../../../..", "features": ["navigation.top", "navigation.tracking"], "search": "../../../../assets/javascripts/workers/search.2a1c317c.min.js", "translations": {"clipboard.copied": "In Zwischenablage kopiert", "clipboard.copy": "In Zwischenablage kopieren", "search.config.lang": "de", "search.config.pipeline": "trimmer, stopWordFilter", "search.config.separator": "[\\s\\-]+", "search.placeholder": "Suche", "search.result.more.one": "1 weiteres Suchergebnis auf dieser Seite", "search.result.more.other": "# weitere Suchergebnisse auf dieser Seite", "search.result.none": "Keine Suchergebnisse", "search.result.one": "1 Suchergebnis", "search.result.other": "# Suchergebnisse", "search.result.placeholder": "Suchbegriff eingeben", "search.result.term.missing": "Es fehlt", "select.version.title": "Version ausw\u00e4hlen"}}</script>
<script src="../../../../assets/javascripts/bundle.748e2769.min.js"></script>
<script src="../../../../assets/javascripts/bundle.c2e1ee47.min.js"></script>
<script src="../../../../assets/javascripts/client.js"></script>

Datei anzeigen

@ -11,7 +11,7 @@
<link rel="canonical" href="https://mailcow.github.io/mailcow-dockerized-docs/de/manual-guides/mailcow-UI/u_e-mailcow_ui-tags/">
<link rel="icon" href="../../../../assets/images/favicon.png">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.11">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.14">
@ -19,10 +19,10 @@
<link rel="stylesheet" href="../../../../assets/stylesheets/main.8c5ef100.min.css">
<link rel="stylesheet" href="../../../../assets/stylesheets/main.3de6f41f.min.css">
<link rel="stylesheet" href="../../../../assets/stylesheets/palette.9647289d.min.css">
<link rel="stylesheet" href="../../../../assets/stylesheets/palette.cc9b2e1e.min.css">
@ -2604,7 +2604,7 @@ Um sie zu sehen, klicken Sie einfach auf das kleine Plus-Symbol auf der linken S
<script id="__config" type="application/json">{"base": "../../../..", "features": ["navigation.top", "navigation.tracking"], "search": "../../../../assets/javascripts/workers/search.2a1c317c.min.js", "translations": {"clipboard.copied": "In Zwischenablage kopiert", "clipboard.copy": "In Zwischenablage kopieren", "search.config.lang": "de", "search.config.pipeline": "trimmer, stopWordFilter", "search.config.separator": "[\\s\\-]+", "search.placeholder": "Suche", "search.result.more.one": "1 weiteres Suchergebnis auf dieser Seite", "search.result.more.other": "# weitere Suchergebnisse auf dieser Seite", "search.result.none": "Keine Suchergebnisse", "search.result.one": "1 Suchergebnis", "search.result.other": "# Suchergebnisse", "search.result.placeholder": "Suchbegriff eingeben", "search.result.term.missing": "Es fehlt", "select.version.title": "Version ausw\u00e4hlen"}}</script>
<script src="../../../../assets/javascripts/bundle.748e2769.min.js"></script>
<script src="../../../../assets/javascripts/bundle.c2e1ee47.min.js"></script>
<script src="../../../../assets/javascripts/client.js"></script>

Datei anzeigen

@ -11,7 +11,7 @@
<link rel="canonical" href="https://mailcow.github.io/mailcow-dockerized-docs/de/manual-guides/mailcow-UI/u_e-mailcow_ui-tfa/">
<link rel="icon" href="../../../../assets/images/favicon.png">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.11">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.14">
@ -19,10 +19,10 @@
<link rel="stylesheet" href="../../../../assets/stylesheets/main.8c5ef100.min.css">
<link rel="stylesheet" href="../../../../assets/stylesheets/main.3de6f41f.min.css">
<link rel="stylesheet" href="../../../../assets/stylesheets/palette.9647289d.min.css">
<link rel="stylesheet" href="../../../../assets/stylesheets/palette.cc9b2e1e.min.css">
@ -2778,7 +2778,7 @@ Diese Herstellerzertifikate werden nur zur ĂśberprĂĽfung der Originalhardware ve
<script id="__config" type="application/json">{"base": "../../../..", "features": ["navigation.top", "navigation.tracking"], "search": "../../../../assets/javascripts/workers/search.2a1c317c.min.js", "translations": {"clipboard.copied": "In Zwischenablage kopiert", "clipboard.copy": "In Zwischenablage kopieren", "search.config.lang": "de", "search.config.pipeline": "trimmer, stopWordFilter", "search.config.separator": "[\\s\\-]+", "search.placeholder": "Suche", "search.result.more.one": "1 weiteres Suchergebnis auf dieser Seite", "search.result.more.other": "# weitere Suchergebnisse auf dieser Seite", "search.result.none": "Keine Suchergebnisse", "search.result.one": "1 Suchergebnis", "search.result.other": "# Suchergebnisse", "search.result.placeholder": "Suchbegriff eingeben", "search.result.term.missing": "Es fehlt", "select.version.title": "Version ausw\u00e4hlen"}}</script>
<script src="../../../../assets/javascripts/bundle.748e2769.min.js"></script>
<script src="../../../../assets/javascripts/bundle.c2e1ee47.min.js"></script>
<script src="../../../../assets/javascripts/client.js"></script>

Datei anzeigen

@ -11,7 +11,7 @@
<link rel="canonical" href="https://mailcow.github.io/mailcow-dockerized-docs/de/manual-guides/u_e-80_to_443/">
<link rel="icon" href="../../../assets/images/favicon.png">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.11">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.14">
@ -19,10 +19,10 @@
<link rel="stylesheet" href="../../../assets/stylesheets/main.8c5ef100.min.css">
<link rel="stylesheet" href="../../../assets/stylesheets/main.3de6f41f.min.css">
<link rel="stylesheet" href="../../../assets/stylesheets/palette.9647289d.min.css">
<link rel="stylesheet" href="../../../assets/stylesheets/palette.cc9b2e1e.min.css">
@ -2377,27 +2377,24 @@
<p><strong>Verwenden Sie die untenstehende Konfiguration nicht fĂĽr Reverse-Proxy-Setups</strong>, bitte lesen Sie dazu unsere <a href="../../post_installation/firststeps-rp/">Reverse-Proxy-Anleitung</a>, die einen Redirect von HTTP zu HTTPS beinhaltet.</p>
<p>Ă–ffne <code>mailcow.conf</code> und setze <code>HTTP_BIND=</code> - falls nicht bereits gesetzt.</p>
<p>Erstellen Sie eine neue Datei <code>data/conf/nginx/redirect.conf</code> und fĂĽgen Sie die folgende Serverkonfiguration in die Datei ein:</p>
<div class="highlight"><pre><span></span><code>server {
<p><code>server {
root /web;
listen 80 default_server;
listen [::]:80 default_server;
include /etc/nginx/conf.d/server_name.active;
if ( $request_uri ~* &quot;%0A|%0D&quot; ) { return 403; }
if ( $request_uri ~* "%0A|%0D" ) { return 403; }
location ^~ /.well-known/acme-challenge/ {
allow all;
default_type &quot;text/plain&quot;;
default_type "text/plain";
}
location / {
return 301 https://$host$uri$is_args$args;
}
}
</code></pre></div>
}</code></p>
<p>Falls Sie den Parameter HTTP_BIND geändert haben, erstellen Sie den Container neu:</p>
<div class="highlight"><pre><span></span><code>docker-compose up -d
</code></pre></div>
<p><code>docker-compose up -d</code></p>
<p>Andernfalls starten Sie Nginx neu:</p>
<div class="highlight"><pre><span></span><code>docker-compose restart nginx-mailcow
</code></pre></div>
<p><code>docker-compose restart nginx-mailcow</code></p>
<hr>
<div class="md-source-file">
@ -2517,7 +2514,7 @@
<script id="__config" type="application/json">{"base": "../../..", "features": ["navigation.top", "navigation.tracking"], "search": "../../../assets/javascripts/workers/search.2a1c317c.min.js", "translations": {"clipboard.copied": "In Zwischenablage kopiert", "clipboard.copy": "In Zwischenablage kopieren", "search.config.lang": "de", "search.config.pipeline": "trimmer, stopWordFilter", "search.config.separator": "[\\s\\-]+", "search.placeholder": "Suche", "search.result.more.one": "1 weiteres Suchergebnis auf dieser Seite", "search.result.more.other": "# weitere Suchergebnisse auf dieser Seite", "search.result.none": "Keine Suchergebnisse", "search.result.one": "1 Suchergebnis", "search.result.other": "# Suchergebnisse", "search.result.placeholder": "Suchbegriff eingeben", "search.result.term.missing": "Es fehlt", "select.version.title": "Version ausw\u00e4hlen"}}</script>
<script src="../../../assets/javascripts/bundle.748e2769.min.js"></script>
<script src="../../../assets/javascripts/bundle.c2e1ee47.min.js"></script>
<script src="../../../assets/javascripts/client.js"></script>

Datei anzeigen

@ -11,7 +11,7 @@
<link rel="canonical" href="https://mailcow.github.io/mailcow-dockerized-docs/de/manual-guides/u_e-autodiscover_config/">
<link rel="icon" href="../../../assets/images/favicon.png">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.11">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.14">
@ -19,10 +19,10 @@
<link rel="stylesheet" href="../../../assets/stylesheets/main.8c5ef100.min.css">
<link rel="stylesheet" href="../../../assets/stylesheets/main.3de6f41f.min.css">
<link rel="stylesheet" href="../../../assets/stylesheets/palette.9647289d.min.css">
<link rel="stylesheet" href="../../../assets/stylesheets/palette.cc9b2e1e.min.css">
@ -2378,45 +2378,44 @@
Denken Sie daran, dass <strong>ActiveSync NICHT mit einem Desktop-Client</strong> verwendet werden sollte.</p>
<p>Ă–ffnen/erstellen Sie <code>data/web/inc/vars.local.inc.php</code> und fĂĽgen Sie Ihre Ă„nderungen in das Konfigurationsfeld ein.</p>
<p>Die Ă„nderungen werden mit "$autodiscover_config" in <code>data/web/inc/vars.inc.php</code> zusammengefĂĽhrt):</p>
<div class="highlight"><pre><span></span><code>&lt;?php
<p><code>&lt;?php
$autodiscover_config = array(
// General autodiscover service type: &quot;activesync&quot; or &quot;imap&quot;
// General autodiscover service type: "activesync" or "imap"
// emClient uses autodiscover, but does not support ActiveSync. mailcow excludes emClient from ActiveSync.
&#39;autodiscoverType&#39; =&gt; &#39;activesync&#39;,
'autodiscoverType' =&gt; 'activesync',
// If autodiscoverType =&gt; activesync, also use ActiveSync (EAS) for Outlook desktop clients (&gt;= Outlook 2013 on Windows)
// Outlook for Mac does not support ActiveSync
&#39;useEASforOutlook&#39; =&gt; &#39;yes&#39;,
// Please don&#39;t use STARTTLS-enabled service ports in the &quot;port&quot; variable.
'useEASforOutlook' =&gt; 'yes',
// Please don't use STARTTLS-enabled service ports in the "port" variable.
// The autodiscover service will always point to SMTPS and IMAPS (TLS-wrapped services).
// The autoconfig service will additionally announce the STARTTLS-enabled ports, specified in the &quot;tlsport&quot; variable.
&#39;imap&#39; =&gt; array(
&#39;server&#39; =&gt; $mailcow_hostname,
&#39;port&#39; =&gt; array_pop(explode(&#39;:&#39;, getenv(&#39;IMAPS_PORT&#39;))),
&#39;tlsport&#39; =&gt; array_pop(explode(&#39;:&#39;, getenv(&#39;IMAP_PORT&#39;))),
// The autoconfig service will additionally announce the STARTTLS-enabled ports, specified in the "tlsport" variable.
'imap' =&gt; array(
'server' =&gt; $mailcow_hostname,
'port' =&gt; array_pop(explode(':', getenv('IMAPS_PORT'))),
'tlsport' =&gt; array_pop(explode(':', getenv('IMAP_PORT'))),
),
&#39;pop3&#39; =&gt; array(
&#39;server&#39; =&gt; $mailcow_hostname,
&#39;port&#39; =&gt; array_pop(explode(&#39;:&#39;, getenv(&#39;POPS_PORT&#39;))),
&#39;tlsport&#39; =&gt; array_pop(explode(&#39;:&#39;, getenv(&#39;POP_PORT&#39;))),
'pop3' =&gt; array(
'server' =&gt; $mailcow_hostname,
'port' =&gt; array_pop(explode(':', getenv('POPS_PORT'))),
'tlsport' =&gt; array_pop(explode(':', getenv('POP_PORT'))),
),
&#39;smtp&#39; =&gt; array(
&#39;server&#39; =&gt; $mailcow_hostname,
&#39;port&#39; =&gt; array_pop(explode(&#39;:&#39;, getenv(&#39;SMTPS_PORT&#39;))),
&#39;tlsport&#39; =&gt; array_pop(explode(&#39;:&#39;, getenv(&#39;SUBMISSION_PORT&#39;))),
'smtp' =&gt; array(
'server' =&gt; $mailcow_hostname,
'port' =&gt; array_pop(explode(':', getenv('SMTPS_PORT'))),
'tlsport' =&gt; array_pop(explode(':', getenv('SUBMISSION_PORT'))),
),
&#39;activesync&#39; =&gt; array(
&#39;url&#39; =&gt; &#39;https://&#39;.$mailcow_hostname.($https_port == 443 ? &#39;&#39; : &#39;:&#39;.$https_port).&#39;/Microsoft-Server-ActiveSync&#39;,
'activesync' =&gt; array(
'url' =&gt; 'https://'.$mailcow_hostname.($https_port == 443 ? '' : ':'.$https_port).'/Microsoft-Server-ActiveSync',
),
&#39;caldav&#39; =&gt; array(
&#39;server&#39; =&gt; $mailcow_hostname,
&#39;port&#39; =&gt; $https_port,
'caldav' =&gt; array(
'server' =&gt; $mailcow_hostname,
'port' =&gt; $https_port,
),
&#39;carddav&#39; =&gt; array(
&#39;server&#39; =&gt; $mailcow_hostname,
&#39;port&#39; =&gt; $https_port,
'carddav' =&gt; array(
'server' =&gt; $mailcow_hostname,
'port' =&gt; $https_port,
),
);
</code></pre></div>
);</code></p>
<p>Um immer IMAP und SMTP anstelle von EAS zu verwenden, setzen Sie <code>'autodiscoverType' =&gt; 'imap'</code>.</p>
<p>Deaktivieren Sie ActiveSync fĂĽr Outlook-Desktop-Clients, indem Sie "useEASforOutlook" auf "no" setzen.</p>
@ -2538,7 +2537,7 @@ $autodiscover_config = array(
<script id="__config" type="application/json">{"base": "../../..", "features": ["navigation.top", "navigation.tracking"], "search": "../../../assets/javascripts/workers/search.2a1c317c.min.js", "translations": {"clipboard.copied": "In Zwischenablage kopiert", "clipboard.copy": "In Zwischenablage kopieren", "search.config.lang": "de", "search.config.pipeline": "trimmer, stopWordFilter", "search.config.separator": "[\\s\\-]+", "search.placeholder": "Suche", "search.result.more.one": "1 weiteres Suchergebnis auf dieser Seite", "search.result.more.other": "# weitere Suchergebnisse auf dieser Seite", "search.result.none": "Keine Suchergebnisse", "search.result.one": "1 Suchergebnis", "search.result.other": "# Suchergebnisse", "search.result.placeholder": "Suchbegriff eingeben", "search.result.term.missing": "Es fehlt", "select.version.title": "Version ausw\u00e4hlen"}}</script>
<script src="../../../assets/javascripts/bundle.748e2769.min.js"></script>
<script src="../../../assets/javascripts/bundle.c2e1ee47.min.js"></script>
<script src="../../../assets/javascripts/client.js"></script>

Datei anzeigen

@ -11,7 +11,7 @@
<link rel="canonical" href="https://mailcow.github.io/mailcow-dockerized-docs/de/manual-guides/u_e-reeanble-weak-protocols/">
<link rel="icon" href="../../../assets/images/favicon.png">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.11">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.14">
@ -19,10 +19,10 @@
<link rel="stylesheet" href="../../../assets/stylesheets/main.8c5ef100.min.css">
<link rel="stylesheet" href="../../../assets/stylesheets/main.3de6f41f.min.css">
<link rel="stylesheet" href="../../../assets/stylesheets/palette.9647289d.min.css">
<link rel="stylesheet" href="../../../assets/stylesheets/palette.cc9b2e1e.min.css">
@ -2377,15 +2377,12 @@
<p>Unauthentifizierte Mails ĂĽber SMTP an Port 25/tcp akzeptieren weiterhin &gt;= TLS 1.0 . Es ist besser, eine schwache VerschlĂĽsselung zu akzeptieren als gar keine.</p>
<p><strong>Wie kann man schwache Protokolle wieder aktivieren?</strong></p>
<p>Bearbeiten Sie <code>data/conf/postfix/extra.cf</code>:</p>
<div class="highlight"><pre><span></span><code>submission_smtpd_tls_mandatory_protocols = !SSLv2, !SSLv3
smtps_smtpd_tls_mandatory_protocols = !SSLv2, !SSLv3
</code></pre></div>
<p><code>submission_smtpd_tls_mandatory_protocols = !SSLv2, !SSLv3
smtps_smtpd_tls_mandatory_protocols = !SSLv2, !SSLv3</code></p>
<p>Bearbeiten Sie <code>data/conf/dovecot/extra.conf</code>:</p>
<div class="highlight"><pre><span></span><code>ssl_min_protocol = TLSv1
</code></pre></div>
<p><code>ssl_min_protocol = TLSv1</code></p>
<p>Starten Sie die betroffenen Dienste neu:</p>
<div class="highlight"><pre><span></span><code>docker-compose restart postfix-mailcow dovecot-mailcow
</code></pre></div>
<p><code>docker-compose restart postfix-mailcow dovecot-mailcow</code></p>
<p>Tipp: Sie können TLS 1.2 in Windows 7 aktivieren.</p>
<hr>
@ -2506,7 +2503,7 @@ smtps_smtpd_tls_mandatory_protocols = !SSLv2, !SSLv3
<script id="__config" type="application/json">{"base": "../../..", "features": ["navigation.top", "navigation.tracking"], "search": "../../../assets/javascripts/workers/search.2a1c317c.min.js", "translations": {"clipboard.copied": "In Zwischenablage kopiert", "clipboard.copy": "In Zwischenablage kopieren", "search.config.lang": "de", "search.config.pipeline": "trimmer, stopWordFilter", "search.config.separator": "[\\s\\-]+", "search.placeholder": "Suche", "search.result.more.one": "1 weiteres Suchergebnis auf dieser Seite", "search.result.more.other": "# weitere Suchergebnisse auf dieser Seite", "search.result.none": "Keine Suchergebnisse", "search.result.one": "1 Suchergebnis", "search.result.other": "# Suchergebnisse", "search.result.placeholder": "Suchbegriff eingeben", "search.result.term.missing": "Es fehlt", "select.version.title": "Version ausw\u00e4hlen"}}</script>
<script src="../../../assets/javascripts/bundle.748e2769.min.js"></script>
<script src="../../../assets/javascripts/bundle.c2e1ee47.min.js"></script>
<script src="../../../assets/javascripts/client.js"></script>

Datei anzeigen

@ -11,7 +11,7 @@
<link rel="canonical" href="https://mailcow.github.io/mailcow-dockerized-docs/de/manual-guides/u_e-update-hooks/">
<link rel="icon" href="../../../assets/images/favicon.png">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.11">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.14">
@ -19,10 +19,10 @@
<link rel="stylesheet" href="../../../assets/stylesheets/main.8c5ef100.min.css">
<link rel="stylesheet" href="../../../assets/stylesheets/main.3de6f41f.min.css">
<link rel="stylesheet" href="../../../assets/stylesheets/palette.9647289d.min.css">
<link rel="stylesheet" href="../../../assets/stylesheets/palette.cc9b2e1e.min.css">
@ -2500,7 +2500,7 @@
<script id="__config" type="application/json">{"base": "../../..", "features": ["navigation.top", "navigation.tracking"], "search": "../../../assets/javascripts/workers/search.2a1c317c.min.js", "translations": {"clipboard.copied": "In Zwischenablage kopiert", "clipboard.copy": "In Zwischenablage kopieren", "search.config.lang": "de", "search.config.pipeline": "trimmer, stopWordFilter", "search.config.separator": "[\\s\\-]+", "search.placeholder": "Suche", "search.result.more.one": "1 weiteres Suchergebnis auf dieser Seite", "search.result.more.other": "# weitere Suchergebnisse auf dieser Seite", "search.result.none": "Keine Suchergebnisse", "search.result.one": "1 Suchergebnis", "search.result.other": "# Suchergebnisse", "search.result.placeholder": "Suchbegriff eingeben", "search.result.term.missing": "Es fehlt", "select.version.title": "Version ausw\u00e4hlen"}}</script>
<script src="../../../assets/javascripts/bundle.748e2769.min.js"></script>
<script src="../../../assets/javascripts/bundle.c2e1ee47.min.js"></script>
<script src="../../../assets/javascripts/client.js"></script>

Datei anzeigen

@ -11,7 +11,7 @@
<link rel="canonical" href="https://mailcow.github.io/mailcow-dockerized-docs/de/manual-guides/u_e-why_unbound/">
<link rel="icon" href="../../../assets/images/favicon.png">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.11">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.14">
@ -19,10 +19,10 @@
<link rel="stylesheet" href="../../../assets/stylesheets/main.8c5ef100.min.css">
<link rel="stylesheet" href="../../../assets/stylesheets/main.3de6f41f.min.css">
<link rel="stylesheet" href="../../../assets/stylesheets/palette.9647289d.min.css">
<link rel="stylesheet" href="../../../assets/stylesheets/palette.cc9b2e1e.min.css">
@ -2497,7 +2497,7 @@ Wenn Sie einen öffentlichen Resolver wie Google 4x8, OpenDNS oder einen anderen
<script id="__config" type="application/json">{"base": "../../..", "features": ["navigation.top", "navigation.tracking"], "search": "../../../assets/javascripts/workers/search.2a1c317c.min.js", "translations": {"clipboard.copied": "In Zwischenablage kopiert", "clipboard.copy": "In Zwischenablage kopieren", "search.config.lang": "de", "search.config.pipeline": "trimmer, stopWordFilter", "search.config.separator": "[\\s\\-]+", "search.placeholder": "Suche", "search.result.more.one": "1 weiteres Suchergebnis auf dieser Seite", "search.result.more.other": "# weitere Suchergebnisse auf dieser Seite", "search.result.none": "Keine Suchergebnisse", "search.result.one": "1 Suchergebnis", "search.result.other": "# Suchergebnisse", "search.result.placeholder": "Suchbegriff eingeben", "search.result.term.missing": "Es fehlt", "select.version.title": "Version ausw\u00e4hlen"}}</script>
<script src="../../../assets/javascripts/bundle.748e2769.min.js"></script>
<script src="../../../assets/javascripts/bundle.c2e1ee47.min.js"></script>
<script src="../../../assets/javascripts/client.js"></script>

Datei anzeigen

@ -11,7 +11,7 @@
<link rel="canonical" href="https://mailcow.github.io/mailcow-dockerized-docs/de/models/model-acl/">
<link rel="icon" href="../../../assets/images/favicon.png">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.11">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.14">
@ -19,10 +19,10 @@
<link rel="stylesheet" href="../../../assets/stylesheets/main.8c5ef100.min.css">
<link rel="stylesheet" href="../../../assets/stylesheets/main.3de6f41f.min.css">
<link rel="stylesheet" href="../../../assets/stylesheets/palette.9647289d.min.css">
<link rel="stylesheet" href="../../../assets/stylesheets/palette.cc9b2e1e.min.css">
@ -2511,7 +2511,7 @@
<script id="__config" type="application/json">{"base": "../../..", "features": ["navigation.top", "navigation.tracking"], "search": "../../../assets/javascripts/workers/search.2a1c317c.min.js", "translations": {"clipboard.copied": "In Zwischenablage kopiert", "clipboard.copy": "In Zwischenablage kopieren", "search.config.lang": "de", "search.config.pipeline": "trimmer, stopWordFilter", "search.config.separator": "[\\s\\-]+", "search.placeholder": "Suche", "search.result.more.one": "1 weiteres Suchergebnis auf dieser Seite", "search.result.more.other": "# weitere Suchergebnisse auf dieser Seite", "search.result.none": "Keine Suchergebnisse", "search.result.one": "1 Suchergebnis", "search.result.other": "# Suchergebnisse", "search.result.placeholder": "Suchbegriff eingeben", "search.result.term.missing": "Es fehlt", "select.version.title": "Version ausw\u00e4hlen"}}</script>
<script src="../../../assets/javascripts/bundle.748e2769.min.js"></script>
<script src="../../../assets/javascripts/bundle.c2e1ee47.min.js"></script>
<script src="../../../assets/javascripts/client.js"></script>

Datei anzeigen

@ -11,7 +11,7 @@
<link rel="canonical" href="https://mailcow.github.io/mailcow-dockerized-docs/de/models/model-passwd/">
<link rel="icon" href="../../../assets/images/favicon.png">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.11">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.14">
@ -19,10 +19,10 @@
<link rel="stylesheet" href="../../../assets/stylesheets/main.8c5ef100.min.css">
<link rel="stylesheet" href="../../../assets/stylesheets/main.3de6f41f.min.css">
<link rel="stylesheet" href="../../../assets/stylesheets/palette.9647289d.min.css">
<link rel="stylesheet" href="../../../assets/stylesheets/palette.cc9b2e1e.min.css">
@ -2599,7 +2599,7 @@ Wenn SOGo deaktiviert ist, können alle unten aufgeführten Hashing-Methoden von
<script id="__config" type="application/json">{"base": "../../..", "features": ["navigation.top", "navigation.tracking"], "search": "../../../assets/javascripts/workers/search.2a1c317c.min.js", "translations": {"clipboard.copied": "In Zwischenablage kopiert", "clipboard.copy": "In Zwischenablage kopieren", "search.config.lang": "de", "search.config.pipeline": "trimmer, stopWordFilter", "search.config.separator": "[\\s\\-]+", "search.placeholder": "Suche", "search.result.more.one": "1 weiteres Suchergebnis auf dieser Seite", "search.result.more.other": "# weitere Suchergebnisse auf dieser Seite", "search.result.none": "Keine Suchergebnisse", "search.result.one": "1 Suchergebnis", "search.result.other": "# Suchergebnisse", "search.result.placeholder": "Suchbegriff eingeben", "search.result.term.missing": "Es fehlt", "select.version.title": "Version ausw\u00e4hlen"}}</script>
<script src="../../../assets/javascripts/bundle.748e2769.min.js"></script>
<script src="../../../assets/javascripts/bundle.c2e1ee47.min.js"></script>
<script src="../../../assets/javascripts/client.js"></script>

Datei anzeigen

@ -11,7 +11,7 @@
<link rel="canonical" href="https://mailcow.github.io/mailcow-dockerized-docs/de/models/model-sender_rcv/">
<link rel="icon" href="../../../assets/images/favicon.png">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.11">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.14">
@ -19,10 +19,10 @@
<link rel="stylesheet" href="../../../assets/stylesheets/main.8c5ef100.min.css">
<link rel="stylesheet" href="../../../assets/stylesheets/main.3de6f41f.min.css">
<link rel="stylesheet" href="../../../assets/stylesheets/palette.9647289d.min.css">
<link rel="stylesheet" href="../../../assets/stylesheets/palette.cc9b2e1e.min.css">
@ -2573,7 +2573,7 @@ Ihnen den Zugang wie oben beschrieben gewähren.</p>
<script id="__config" type="application/json">{"base": "../../..", "features": ["navigation.top", "navigation.tracking"], "search": "../../../assets/javascripts/workers/search.2a1c317c.min.js", "translations": {"clipboard.copied": "In Zwischenablage kopiert", "clipboard.copy": "In Zwischenablage kopieren", "search.config.lang": "de", "search.config.pipeline": "trimmer, stopWordFilter", "search.config.separator": "[\\s\\-]+", "search.placeholder": "Suche", "search.result.more.one": "1 weiteres Suchergebnis auf dieser Seite", "search.result.more.other": "# weitere Suchergebnisse auf dieser Seite", "search.result.none": "Keine Suchergebnisse", "search.result.one": "1 Suchergebnis", "search.result.other": "# Suchergebnisse", "search.result.placeholder": "Suchbegriff eingeben", "search.result.term.missing": "Es fehlt", "select.version.title": "Version ausw\u00e4hlen"}}</script>
<script src="../../../assets/javascripts/bundle.748e2769.min.js"></script>
<script src="../../../assets/javascripts/bundle.c2e1ee47.min.js"></script>
<script src="../../../assets/javascripts/client.js"></script>

Datei anzeigen

@ -11,7 +11,7 @@
<link rel="canonical" href="https://mailcow.github.io/mailcow-dockerized-docs/de/post_installation/firststeps-disable_ipv6/">
<link rel="icon" href="../../../assets/images/favicon.png">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.11">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.14">
@ -19,10 +19,10 @@
<link rel="stylesheet" href="../../../assets/stylesheets/main.8c5ef100.min.css">
<link rel="stylesheet" href="../../../assets/stylesheets/main.3de6f41f.min.css">
<link rel="stylesheet" href="../../../assets/stylesheets/palette.9647289d.min.css">
<link rel="stylesheet" href="../../../assets/stylesheets/palette.cc9b2e1e.min.css">
@ -66,6 +66,11 @@
<label class="md-overlay" for="__drawer"></label>
<div data-md-component="skip">
<a href="#cd-optmailcow-dockerized" class="md-skip">
Zum Inhalt
</a>
</div>
<div data-md-component="announce">
@ -466,6 +471,8 @@
<input class="md-nav__toggle md-toggle" data-md-toggle="toc" type="checkbox" id="__toc">
<a href="./" class="md-nav__link md-nav__link--active">
IPv6 deaktivieren
@ -2354,6 +2361,8 @@
</nav>
</div>
@ -2371,8 +2380,6 @@
<h1>IPv6 deaktivieren</h1>
<p>Dies wird <strong>NUR</strong> empfohlen, wenn Sie kein IPv6-fähiges Netzwerk auf Ihrem Host haben!</p>
<p>Wenn Sie es wirklich brauchen, können Sie die Verwendung von IPv6 in der Compose-Datei deaktivieren.
Zusätzlich können Sie auch den Start des Containers "ipv6nat-mailcow" deaktivieren, da er nicht benötigt wird, wenn Sie IPv6 nicht verwenden.</p>
@ -2381,49 +2388,45 @@ zu erstellen und Ihre Ă„nderungen am Dienst dort zu implementieren. Leider schei
<p>Um IPv6 im mailcow-Netzwerk zu deaktivieren, öffnen Sie docker-compose.yml mit Ihrem bevorzugten Texteditor und suchen Sie nach dem Netzwerk-Abschnitt (er befindet sich am Ende der Datei). </p>
<p><strong>1.</strong> Ă„ndern Sie docker-compose.yml</p>
<p>Ă„ndern Sie <code>enable_ipv6: true</code> in <code>enable_ipv6: false</code>:</p>
<div class="highlight"><pre><span></span><code>networks:
<p><code>networks:
mailcow-network:
[...]
enable_ipv6: true # &lt;&lt;&lt; auf false setzen
[...]
</code></pre></div>
[...]</code></p>
<p><strong>2.</strong> ipv6nat-mailcow deaktivieren</p>
<p>Um den ipv6nat-mailcow Container ebenfalls zu deaktivieren, gehen Sie in Ihr mailcow Verzeichnis und erstellen Sie eine neue Datei namens "docker-compose.override.yml": </p>
<p><strong>HINWEIS:</strong> Wenn Sie bereits eine Override-Datei haben, erstellen Sie diese natĂĽrlich nicht neu, sondern fĂĽgen Sie die untenstehenden Zeilen entsprechend in Ihre bestehende Datei ein!</p>
<div class="highlight"><pre><span></span><code># cd /opt/mailcow-dockerized
# touch docker-compose.override.yml
</code></pre></div>
<p>```</p>
<h1 id="cd-optmailcow-dockerized">cd /opt/mailcow-dockerized<a class="headerlink" href="#cd-optmailcow-dockerized" title="Permanent link">&para;</a></h1>
<h1 id="touch-docker-composeoverrideyml">touch docker-compose.override.yml<a class="headerlink" href="#touch-docker-composeoverrideyml" title="Permanent link">&para;</a></h1>
<p>```</p>
<p>Ă–ffnen Sie die Datei in Ihrem bevorzugten Texteditor und tragen Sie folgendes ein:</p>
<div class="highlight"><pre><span></span><code>version: &#39;2.1&#39;
services:
ipv6nat-mailcow:
image: bash:latest
restart: &quot;no&quot;
entrypoint: [&quot;echo&quot;, &quot;ipv6nat disabled in compose.override.yml&quot;]
</code></pre></div>
<p>```
version: '2.1'
services:</p>
<pre><code>ipv6nat-mailcow:
image: bash:latest
restart: "no"
entrypoint: ["echo", "ipv6nat disabled in compose.override.yml"]
</code></pre>
<p>```</p>
<p>Damit diese Änderungen wirksam werden, müssen Sie den Stack vollständig stoppen und dann neu starten, damit Container und Netzwerke neu erstellt werden:</p>
<div class="highlight"><pre><span></span><code>docker-compose down
docker-compose up -d
</code></pre></div>
<p><code>docker-compose down
docker-compose up -d</code></p>
<p><strong>3.</strong> Deaktivieren Sie IPv6 in unbound-mailcow</p>
<p>Bearbeiten Sie <code>data/conf/unbound/unbound.conf</code> und setzen Sie <code>do-ip6</code> auf "no":</p>
<div class="highlight"><pre><span></span><code>Server:
<p><code>Server:
[...]
do-ip6: no
[...]
</code></pre></div>
[...]</code></p>
<p>unbound neu starten:</p>
<div class="highlight"><pre><span></span><code>docker-compose restart unbound-mailcow
</code></pre></div>
<p><code>docker-compose restart unbound-mailcow</code></p>
<p><strong>4.</strong> Deaktivieren Sie IPv6 in postfix-mailcow</p>
<p>Erstellen Sie <code>data/conf/postfix/extra.cf</code> und setzen Sie <code>smtp_address_preference</code> auf <code>ipv4</code>:</p>
<div class="highlight"><pre><span></span><code>smtp_address_preference = ipv4
inet_protocols = ipv4
</code></pre></div>
<p><code>smtp_address_preference = ipv4
inet_protocols = ipv4</code></p>
<p>Starten Sie Postfix neu:</p>
<div class="highlight"><pre><span></span><code>docker-compose restart postfix-mailcow
</code></pre></div>
<p><code>docker-compose restart postfix-mailcow</code></p>
<hr>
<div class="md-source-file">
@ -2543,7 +2546,7 @@ inet_protocols = ipv4
<script id="__config" type="application/json">{"base": "../../..", "features": ["navigation.top", "navigation.tracking"], "search": "../../../assets/javascripts/workers/search.2a1c317c.min.js", "translations": {"clipboard.copied": "In Zwischenablage kopiert", "clipboard.copy": "In Zwischenablage kopieren", "search.config.lang": "de", "search.config.pipeline": "trimmer, stopWordFilter", "search.config.separator": "[\\s\\-]+", "search.placeholder": "Suche", "search.result.more.one": "1 weiteres Suchergebnis auf dieser Seite", "search.result.more.other": "# weitere Suchergebnisse auf dieser Seite", "search.result.none": "Keine Suchergebnisse", "search.result.one": "1 Suchergebnis", "search.result.other": "# Suchergebnisse", "search.result.placeholder": "Suchbegriff eingeben", "search.result.term.missing": "Es fehlt", "select.version.title": "Version ausw\u00e4hlen"}}</script>
<script src="../../../assets/javascripts/bundle.748e2769.min.js"></script>
<script src="../../../assets/javascripts/bundle.c2e1ee47.min.js"></script>
<script src="../../../assets/javascripts/client.js"></script>

Datei anzeigen

@ -11,7 +11,7 @@
<link rel="canonical" href="https://mailcow.github.io/mailcow-dockerized-docs/de/post_installation/firststeps-dmarc_reporting/">
<link rel="icon" href="../../../assets/images/favicon.png">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.11">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.14">
@ -19,10 +19,10 @@
<link rel="stylesheet" href="../../../assets/stylesheets/main.8c5ef100.min.css">
<link rel="stylesheet" href="../../../assets/stylesheets/main.3de6f41f.min.css">
<link rel="stylesheet" href="../../../assets/stylesheets/palette.9647289d.min.css">
<link rel="stylesheet" href="../../../assets/stylesheets/palette.cc9b2e1e.min.css">
@ -2501,44 +2501,42 @@
</ol>
<h2 id="aktivieren-sie-dmarc-berichterstattung">Aktivieren Sie DMARC-Berichterstattung<a class="headerlink" href="#aktivieren-sie-dmarc-berichterstattung" title="Permanent link">&para;</a></h2>
<p>Erstellen Sie die Datei <code>data/conf/rspamd/local.d/dmarc.conf</code> und setzen Sie den folgenden Inhalt:</p>
<div class="highlight"><pre><span></span><code>reporting {
<p><code>reporting {
enabled = true;
email = &#39;noreply-dmarc@example.com&#39;;
domain = &#39;example.com&#39;;
org_name = &#39;Example&#39;;
helo = &#39;rspamd&#39;;
smtp = &#39;postfix&#39;;
email = 'noreply-dmarc@example.com';
domain = 'example.com';
org_name = 'Example';
helo = 'rspamd';
smtp = 'postfix';
smtp_port = 25;
from_name = &#39;Example DMARC Report&#39;;
msgid_from = &#39;rspamd.mail.example.com&#39;;
from_name = 'Example DMARC Report';
msgid_from = 'rspamd.mail.example.com';
max_entries = 2k;
keys_expire = 2d;
}
</code></pre></div>
}</code></p>
<p>Erstellen oder ändern Sie <code>docker-compose.override.yml</code> im mailcow-dockerized Basisverzeichnis:</p>
<div class="highlight"><pre><span></span><code>version: &#39;2.1&#39;
services:
<p>```
version: '2.1'</p>
<p>services:
rspamd-mailcow:
environment:
- MASTER=${MASTER:-y}
labels:
ofelia.enabled: &quot;true&quot;
ofelia.job-exec.rspamd_dmarc_reporting.schedule: &quot;@every 24h&quot;
ofelia.job-exec.rspamd_dmarc_reporting.command: &quot;/bin/bash -c \&quot;[[ $${MASTER} == y ]] &amp;&amp; /usr/bin/rspamadm dmarc_report &gt; /var/lib/rspamd/dmarc_reports_last_log 2&gt;&amp;1 || exit 0\&quot;&quot;
ofelia.enabled: "true"
ofelia.job-exec.rspamd_dmarc_reporting.schedule: "@every 24h"
ofelia.job-exec.rspamd_dmarc_reporting.command: "/bin/bash -c \"[[ $${MASTER} == y ]] &amp;&amp; /usr/bin/rspamadm dmarc_report &gt; /var/lib/rspamd/dmarc_reports_last_log 2&gt;&amp;1 || exit 0\""
ofelia-mailcow:
depends_on:
- rspamd-mailcow
</code></pre></div>
```</p>
<p>Starte <code>docker-compose up -d</code></p>
<h2 id="senden-sie-eine-kopie-der-berichte-an-sich-selbst">Senden Sie eine Kopie der Berichte an sich selbst<a class="headerlink" href="#senden-sie-eine-kopie-der-berichte-an-sich-selbst" title="Permanent link">&para;</a></h2>
<p>Um eine versteckte Kopie der von Rspamd erzeugten Berichte zu erhalten, können Sie eine <code>bcc_addrs</code> Liste im <code>reporting</code> Konfigurationsabschnitt von <code>data/conf/rspamd/local.d/dmarc.conf</code> setzen:</p>
<div class="highlight"><pre><span></span><code>reporting {
<p><code>reporting {
enabled = true;
email = &#39;noreply-dmarc@example.com&#39;;
bcc_addrs = [&quot;noreply-dmarc@example.com&quot;, &quot;parsedmarc@example.com&quot;];
[...]
</code></pre></div>
email = 'noreply-dmarc@example.com';
bcc_addrs = ["noreply-dmarc@example.com", "parsedmarc@example.com"];
[...]</code></p>
<p>Rspamd lädt Änderungen in Echtzeit, so dass Sie den Container zu diesem Zeitpunkt nicht neu starten müssen.</p>
<p>Dies kann nĂĽtzlich sein, wenn Sie...</p>
<ul>
@ -2547,21 +2545,16 @@ services:
</ul>
<h2 id="fehlersuche">Fehlersuche<a class="headerlink" href="#fehlersuche" title="Permanent link">&para;</a></h2>
<p>PrĂĽfen Sie, wann der Berichtsplan zuletzt ausgefĂĽhrt wurde:</p>
<div class="highlight"><pre><span></span><code>docker-compose exec rspamd-mailcow date -r /var/lib/rspamd/dmarc_reports_last_log
</code></pre></div>
<p><code>docker-compose exec rspamd-mailcow date -r /var/lib/rspamd/dmarc_reports_last_log</code></p>
<p>Sehen Sie sich die letzte Berichtsausgabe an:</p>
<div class="highlight"><pre><span></span><code>docker-compose exec rspamd-mailcow cat /var/lib/rspamd/dmarc_reports_last_log
</code></pre></div>
<p><code>docker-compose exec rspamd-mailcow cat /var/lib/rspamd/dmarc_reports_last_log</code></p>
<p>Manuelles Auslösen eines DMARC-Berichts:</p>
<div class="highlight"><pre><span></span><code>docker-compose exec rspamd-mailcow rspamadm dmarc_report
</code></pre></div>
<p><code>docker-compose exec rspamd-mailcow rspamadm dmarc_report</code></p>
<p>Bestätigen Sie, dass Rspamd Daten in Redis aufgezeichnet hat:
Ă„ndern Sie <code>20220428</code> in ein anderes interessantes Datum zum schauen.</p>
<div class="highlight"><pre><span></span><code>docker-compose exec redis-mailcow redis-cli SMEMBERS &quot;dmarc_idx;20220428&quot;
</code></pre></div>
<p><code>docker-compose exec redis-mailcow redis-cli SMEMBERS "dmarc_idx;20220428"</code></p>
<p>Nehmen Sie eine der Zeilen aus der Ausgabe, die Sie interessiert, und fordern Sie sie an, z. B.:</p>
<div class="highlight"><pre><span></span><code>docker-compose exec redis-mailcow redis-cli ZRANGE &quot;dmarc_rpt;microsoft.com;mailto:d@rua.agari.com;20220428&quot; 0 49
</code></pre></div>
<p><code>docker-compose exec redis-mailcow redis-cli ZRANGE "dmarc_rpt;microsoft.com;mailto:d@rua.agari.com;20220428" 0 49</code></p>
<h2 id="andern-sie-die-haufigkeit-der-dmarc-berichte">Ändern Sie die Häufigkeit der DMARC-Berichte<a class="headerlink" href="#andern-sie-die-haufigkeit-der-dmarc-berichte" title="Permanent link">&para;</a></h2>
<p>Im obigen Beispiel werden die Berichte einmal alle 24 Stunden gesendet.</p>
<p>Der Olefia-Zeitplan hat die gleiche Implementierung wie <code>cron</code> in Go, die unterstĂĽtzte Syntax ist beschrieben in <a href="https://pkg.go.dev/github.com/robfig/cron">cron Documentation</a></p>
@ -2709,7 +2702,7 @@ services:
<script id="__config" type="application/json">{"base": "../../..", "features": ["navigation.top", "navigation.tracking"], "search": "../../../assets/javascripts/workers/search.2a1c317c.min.js", "translations": {"clipboard.copied": "In Zwischenablage kopiert", "clipboard.copy": "In Zwischenablage kopieren", "search.config.lang": "de", "search.config.pipeline": "trimmer, stopWordFilter", "search.config.separator": "[\\s\\-]+", "search.placeholder": "Suche", "search.result.more.one": "1 weiteres Suchergebnis auf dieser Seite", "search.result.more.other": "# weitere Suchergebnisse auf dieser Seite", "search.result.none": "Keine Suchergebnisse", "search.result.one": "1 Suchergebnis", "search.result.other": "# Suchergebnisse", "search.result.placeholder": "Suchbegriff eingeben", "search.result.term.missing": "Es fehlt", "select.version.title": "Version ausw\u00e4hlen"}}</script>
<script src="../../../assets/javascripts/bundle.748e2769.min.js"></script>
<script src="../../../assets/javascripts/bundle.c2e1ee47.min.js"></script>
<script src="../../../assets/javascripts/client.js"></script>

Datei anzeigen

@ -11,7 +11,7 @@
<link rel="canonical" href="https://mailcow.github.io/mailcow-dockerized-docs/de/post_installation/firststeps-ip_bindings/">
<link rel="icon" href="../../../assets/images/favicon.png">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.11">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.14">
@ -19,10 +19,10 @@
<link rel="stylesheet" href="../../../assets/stylesheets/main.8c5ef100.min.css">
<link rel="stylesheet" href="../../../assets/stylesheets/main.3de6f41f.min.css">
<link rel="stylesheet" href="../../../assets/stylesheets/palette.9647289d.min.css">
<link rel="stylesheet" href="../../../assets/stylesheets/palette.cc9b2e1e.min.css">
@ -530,10 +530,65 @@
</li>
<li class="md-nav__item">
<a href="#aus-technischen-grunden-unterscheiden-sich-die-http-bindungen-ein-wenig-von-anderen-service-bindungen" class="md-nav__link">
Aus technischen GrĂĽnden unterscheiden sich die http-Bindungen ein wenig von anderen Service-Bindungen.
</a>
</li>
<li class="md-nav__item">
<a href="#sie-werden-die-folgenden-variablen-finden-getrennt-durch-eine-bindungsadresse-und-deren-port" class="md-nav__link">
Sie werden die folgenden Variablen finden, getrennt durch eine Bindungsadresse und deren Port:
</a>
</li>
<li class="md-nav__item">
<a href="#beispiel-http_bind1234" class="md-nav__link">
Beispiel: HTTP_BIND=1.2.3.4
</a>
</li>
<li class="md-nav__item">
<a href="#andere-dienste-werden-nach-folgendem-format-gebunden" class="md-nav__link">
Andere Dienste werden nach folgendem Format gebunden:
</a>
</li>
<li class="md-nav__item">
<a href="#smtp_port123425-bindet-smtp-an-die-ip-1234-auf-port-25" class="md-nav__link">
SMTP_PORT=1.2.3.4:25 bindet SMTP an die IP 1.2.3.4 auf Port 25
</a>
</li>
<li class="md-nav__item">
<a href="#wichtig-durch-die-angabe-einer-ipv4-adresse-werden-alle-ipv6-bindungen-seit-docker-20x-ubersprungen" class="md-nav__link">
Wichtig! Durch die Angabe einer IPv4-Adresse werden alle IPv6-Bindungen seit Docker 20.x ĂĽbersprungen.
</a>
</li>
<li class="md-nav__item">
<a href="#doveadm-sql-sowie-solr-sind-nur-an-lokale-ports-gebunden-bitte-andern-sie-das-nicht-es-sei-denn-sie-wissen-was-sie-tun" class="md-nav__link">
doveadm, SQL sowie Solr sind nur an lokale Ports gebunden, bitte ändern Sie das nicht, es sei denn, Sie wissen, was Sie tun.
</a>
<nav class="md-nav" aria-label="doveadm, SQL sowie Solr sind nur an lokale Ports gebunden, bitte ändern Sie das nicht, es sei denn, Sie wissen, was Sie tun.">
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="#ipv6-binding" class="md-nav__link">
IPv6-Binding
</a>
</li>
</ul>
</nav>
</li>
</ul>
@ -2410,10 +2465,65 @@
</li>
<li class="md-nav__item">
<a href="#aus-technischen-grunden-unterscheiden-sich-die-http-bindungen-ein-wenig-von-anderen-service-bindungen" class="md-nav__link">
Aus technischen GrĂĽnden unterscheiden sich die http-Bindungen ein wenig von anderen Service-Bindungen.
</a>
</li>
<li class="md-nav__item">
<a href="#sie-werden-die-folgenden-variablen-finden-getrennt-durch-eine-bindungsadresse-und-deren-port" class="md-nav__link">
Sie werden die folgenden Variablen finden, getrennt durch eine Bindungsadresse und deren Port:
</a>
</li>
<li class="md-nav__item">
<a href="#beispiel-http_bind1234" class="md-nav__link">
Beispiel: HTTP_BIND=1.2.3.4
</a>
</li>
<li class="md-nav__item">
<a href="#andere-dienste-werden-nach-folgendem-format-gebunden" class="md-nav__link">
Andere Dienste werden nach folgendem Format gebunden:
</a>
</li>
<li class="md-nav__item">
<a href="#smtp_port123425-bindet-smtp-an-die-ip-1234-auf-port-25" class="md-nav__link">
SMTP_PORT=1.2.3.4:25 bindet SMTP an die IP 1.2.3.4 auf Port 25
</a>
</li>
<li class="md-nav__item">
<a href="#wichtig-durch-die-angabe-einer-ipv4-adresse-werden-alle-ipv6-bindungen-seit-docker-20x-ubersprungen" class="md-nav__link">
Wichtig! Durch die Angabe einer IPv4-Adresse werden alle IPv6-Bindungen seit Docker 20.x ĂĽbersprungen.
</a>
</li>
<li class="md-nav__item">
<a href="#doveadm-sql-sowie-solr-sind-nur-an-lokale-ports-gebunden-bitte-andern-sie-das-nicht-es-sei-denn-sie-wissen-was-sie-tun" class="md-nav__link">
doveadm, SQL sowie Solr sind nur an lokale Ports gebunden, bitte ändern Sie das nicht, es sei denn, Sie wissen, was Sie tun.
</a>
<nav class="md-nav" aria-label="doveadm, SQL sowie Solr sind nur an lokale Ports gebunden, bitte ändern Sie das nicht, es sei denn, Sie wissen, was Sie tun.">
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="#ipv6-binding" class="md-nav__link">
IPv6-Binding
</a>
</li>
</ul>
</nav>
</li>
</ul>
@ -2434,29 +2544,25 @@
<h1>IP-Verbindungen</h1>
<div class="admonition warning">
<p class="admonition-title">Warning</p>
<p>Das Ă„ndern der Bindung hat keinen Einfluss auf Source-NAT. Siehe <a href="../firststeps-snat/">SNAT</a> fĂĽr die erforderlichen Schritte.</p>
</div>
<h2 id="ipv4-binding">IPv4-Binding<a class="headerlink" href="#ipv4-binding" title="Permanent link">&para;</a></h2>
<p>Um eine oder mehrere IPv4-Bind(ings) anzupassen, öffne <code>mailcow.conf</code> und editiere eine, mehrere oder alle Variablen nach deinen Bedürfnissen:</p>
<div class="highlight"><pre><span></span><code># Aus technischen GrĂĽnden unterscheiden sich die http-Bindungen ein wenig von anderen Service-Bindungen.
# Sie werden die folgenden Variablen finden, getrennt durch eine Bindungsadresse und deren Port:
# Beispiel: HTTP_BIND=1.2.3.4
HTTP_PORT=80
<p>```</p>
<h1 id="aus-technischen-grunden-unterscheiden-sich-die-http-bindungen-ein-wenig-von-anderen-service-bindungen">Aus technischen GrĂĽnden unterscheiden sich die http-Bindungen ein wenig von anderen Service-Bindungen.<a class="headerlink" href="#aus-technischen-grunden-unterscheiden-sich-die-http-bindungen-ein-wenig-von-anderen-service-bindungen" title="Permanent link">&para;</a></h1>
<h1 id="sie-werden-die-folgenden-variablen-finden-getrennt-durch-eine-bindungsadresse-und-deren-port">Sie werden die folgenden Variablen finden, getrennt durch eine Bindungsadresse und deren Port:<a class="headerlink" href="#sie-werden-die-folgenden-variablen-finden-getrennt-durch-eine-bindungsadresse-und-deren-port" title="Permanent link">&para;</a></h1>
<h1 id="beispiel-http_bind1234">Beispiel: HTTP_BIND=1.2.3.4<a class="headerlink" href="#beispiel-http_bind1234" title="Permanent link">&para;</a></h1>
<p>HTTP_PORT=80
HTTP_BIND=
HTTPS_PORT=443
HTTPS_BIND=
# Andere Dienste werden nach folgendem Format gebunden:
# SMTP_PORT=1.2.3.4:25 bindet SMTP an die IP 1.2.3.4 auf Port 25
# Wichtig! Durch die Angabe einer IPv4-Adresse werden alle IPv6-Bindungen seit Docker 20.x ĂĽbersprungen.
# doveadm, SQL sowie Solr sind nur an lokale Ports gebunden, bitte ändern Sie das nicht, es sei denn, Sie wissen, was Sie tun.
SMTP_PORT=25
HTTPS_BIND=</p>
<h1 id="andere-dienste-werden-nach-folgendem-format-gebunden">Andere Dienste werden nach folgendem Format gebunden:<a class="headerlink" href="#andere-dienste-werden-nach-folgendem-format-gebunden" title="Permanent link">&para;</a></h1>
<h1 id="smtp_port123425-bindet-smtp-an-die-ip-1234-auf-port-25">SMTP_PORT=1.2.3.4:25 bindet SMTP an die IP 1.2.3.4 auf Port 25<a class="headerlink" href="#smtp_port123425-bindet-smtp-an-die-ip-1234-auf-port-25" title="Permanent link">&para;</a></h1>
<h1 id="wichtig-durch-die-angabe-einer-ipv4-adresse-werden-alle-ipv6-bindungen-seit-docker-20x-ubersprungen">Wichtig! Durch die Angabe einer IPv4-Adresse werden alle IPv6-Bindungen seit Docker 20.x ĂĽbersprungen.<a class="headerlink" href="#wichtig-durch-die-angabe-einer-ipv4-adresse-werden-alle-ipv6-bindungen-seit-docker-20x-ubersprungen" title="Permanent link">&para;</a></h1>
<h1 id="doveadm-sql-sowie-solr-sind-nur-an-lokale-ports-gebunden-bitte-andern-sie-das-nicht-es-sei-denn-sie-wissen-was-sie-tun">doveadm, SQL sowie Solr sind nur an lokale Ports gebunden, bitte ändern Sie das nicht, es sei denn, Sie wissen, was Sie tun.<a class="headerlink" href="#doveadm-sql-sowie-solr-sind-nur-an-lokale-ports-gebunden-bitte-andern-sie-das-nicht-es-sei-denn-sie-wissen-was-sie-tun" title="Permanent link">&para;</a></h1>
<p>SMTP_PORT=25
SMTPS_PORT=465
SUBMISSION_PORT=587
IMAP_PORT=143
@ -2467,35 +2573,36 @@ SIEVE_PORT=4190
DOVEADM_PORT=127.0.0.1:19991
SQL_PORT=127.0.0.1:13306
SOLR_PORT=127.0.0.1:18983
</code></pre></div>
```</p>
<p>Um Ihre Ă„nderungen zu ĂĽbernehmen, fĂĽhren Sie <code>docker-compose down</code> gefolgt von <code>docker-compose up -d</code> aus.</p>
<h2 id="ipv6-binding">IPv6-Binding<a class="headerlink" href="#ipv6-binding" title="Permanent link">&para;</a></h2>
<p>Das Ă„ndern von IPv6-Bindings ist anders als bei IPv4. Auch dies hat einen technischen Hintergrund.</p>
<p>Eine <code>docker-compose.override.yml</code> Datei wird verwendet, anstatt die <code>docker-compose.yml</code> Datei direkt zu bearbeiten. Dies geschieht, um die Aktualisierbarkeit zu erhalten, da die Datei <code>docker-compose.yml</code> regelmäßig aktualisiert wird und Ihre Änderungen höchstwahrscheinlich überschrieben werden.</p>
<p>Bearbeiten Sie die Datei "docker-compose.override.yml" und erstellen Sie sie mit dem folgenden Inhalt. Ihr Inhalt wird mit der produktiven Datei "docker-compose.yml" zusammengefĂĽhrt.</p>
<p>Es wird eine imaginäre IPv6 <strong>2a00:dead:beef::abc</strong> angegeben. Das erste Suffix <code>:PORT1</code> definiert den externen Port, während das zweite Suffix <code>:PORT2</code> zu dem entsprechenden Port innerhalb des Containers führt und nicht verändert werden darf.</p>
<div class="highlight"><pre><span></span><code>version: &#39;2.1&#39;
services:
<p>```
version: '2.1'
services:</p>
<pre><code>dovecot-mailcow:
ports:
- '2a00:dead:beef::abc:143:143'
- '2a00:dead:beef::abc:993:993'
- '2a00:dead:beef::abc:110:110'
- '2a00:dead:beef::abc:995:995'
- '2a00:dead:beef::abc:4190:4190'
dovecot-mailcow:
ports:
- &#39;2a00:dead:beef::abc:143:143&#39;
- &#39;2a00:dead:beef::abc:993:993&#39;
- &#39;2a00:dead:beef::abc:110:110&#39;
- &#39;2a00:dead:beef::abc:995:995&#39;
- &#39;2a00:dead:beef::abc:4190:4190&#39;
postfix-mailcow:
ports:
- '2a00:dead:beef::abc:25:25'
- '2a00:dead:beef::abc:465:465'
- '2a00:dead:beef::abc:587:587'
postfix-mailcow:
ports:
- &#39;2a00:dead:beef::abc:25:25&#39;
- &#39;2a00:dead:beef::abc:465:465&#39;
- &#39;2a00:dead:beef::abc:587:587&#39;
nginx-mailcow:
ports:
- &#39;2a00:dead:beef::abc:80:80&#39;
- &#39;2a00:dead:beef::abc:443:443&#39;
</code></pre></div>
nginx-mailcow:
ports:
- '2a00:dead:beef::abc:80:80'
- '2a00:dead:beef::abc:443:443'
</code></pre>
<p>```</p>
<p>Um Ihre Ă„nderungen zu ĂĽbernehmen, fĂĽhren Sie <code>docker-compose down</code> gefolgt von <code>docker-compose up -d</code> aus.</p>
<hr>
@ -2616,7 +2723,7 @@ services:
<script id="__config" type="application/json">{"base": "../../..", "features": ["navigation.top", "navigation.tracking"], "search": "../../../assets/javascripts/workers/search.2a1c317c.min.js", "translations": {"clipboard.copied": "In Zwischenablage kopiert", "clipboard.copy": "In Zwischenablage kopieren", "search.config.lang": "de", "search.config.pipeline": "trimmer, stopWordFilter", "search.config.separator": "[\\s\\-]+", "search.placeholder": "Suche", "search.result.more.one": "1 weiteres Suchergebnis auf dieser Seite", "search.result.more.other": "# weitere Suchergebnisse auf dieser Seite", "search.result.none": "Keine Suchergebnisse", "search.result.one": "1 Suchergebnis", "search.result.other": "# Suchergebnisse", "search.result.placeholder": "Suchbegriff eingeben", "search.result.term.missing": "Es fehlt", "select.version.title": "Version ausw\u00e4hlen"}}</script>
<script src="../../../assets/javascripts/bundle.748e2769.min.js"></script>
<script src="../../../assets/javascripts/bundle.c2e1ee47.min.js"></script>
<script src="../../../assets/javascripts/client.js"></script>

Datei anzeigen

@ -11,7 +11,7 @@
<link rel="canonical" href="https://mailcow.github.io/mailcow-dockerized-docs/de/post_installation/firststeps-local_mta/">
<link rel="icon" href="../../../assets/images/favicon.png">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.11">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.14">
@ -19,10 +19,10 @@
<link rel="stylesheet" href="../../../assets/stylesheets/main.8c5ef100.min.css">
<link rel="stylesheet" href="../../../assets/stylesheets/main.3de6f41f.min.css">
<link rel="stylesheet" href="../../../assets/stylesheets/palette.9647289d.min.css">
<link rel="stylesheet" href="../../../assets/stylesheets/palette.cc9b2e1e.min.css">
@ -66,6 +66,11 @@
<label class="md-overlay" for="__drawer"></label>
<div data-md-component="skip">
<a href="#smtp-inet-n-smtpd" class="md-skip">
Zum Inhalt
</a>
</div>
<div data-md-component="announce">
@ -508,6 +513,8 @@
<input class="md-nav__toggle md-toggle" data-md-toggle="toc" type="checkbox" id="__toc">
<a href="./" class="md-nav__link md-nav__link--active">
Lokaler MTA auf Docker-Host
@ -2354,6 +2361,8 @@
</nav>
</div>
@ -2371,19 +2380,17 @@
<h1>Lokaler MTA auf Docker-Host</h1>
<p>Die einfachste Möglichkeit wäre, den Listener an Port 25/tcp zu deaktivieren.</p>
<p><strong>Postfix</strong>-Benutzer deaktivieren den Listener, indem sie die folgende Zeile (beginnend mit <code>smtp</code> oder <code>25</code>) in <code>/etc/postfix/master.cf</code> auskommentieren:
<div class="highlight"><pre><span></span><code>#smtp inet n - - - - smtpd
</code></pre></div></p>
```</p>
<h1 id="smtp-inet-n-smtpd">smtp inet n - - - - smtpd<a class="headerlink" href="#smtp-inet-n-smtpd" title="Permanent link">&para;</a></h1>
<p>```</p>
<p>AuĂźerdem, um ĂĽber eine Dockerized mailcow weiterzuleiten, sollten Sie <code>172.22.1.1</code> als Relayhost hinzufĂĽgen und das Docker-Interface aus "inet_interfaces" entfernen:</p>
<div class="highlight"><pre><span></span><code>postconf -e &#39;relayhost = 172.22.1.1&#39;
postconf -e &quot;mynetworks = 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128&quot;
postconf -e &quot;inet_interfaces = loopback-only&quot;
postconf -e &quot;relay_transport = relay&quot;
postconf -e &quot;default_transport = smtp&quot;
</code></pre></div>
<p><code>postconf -e 'relayhost = 172.22.1.1'
postconf -e "mynetworks = 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128"
postconf -e "inet_interfaces = loopback-only"
postconf -e "relay_transport = relay"
postconf -e "default_transport = smtp"</code></p>
<p><strong>Jetzt ist es wichtig</strong>, dass Sie nicht denselben FQDN in <code>myhostname</code> haben, den Sie fĂĽr Ihre mailcow verwenden. PrĂĽfen Sie Ihre lokale (nicht-Docker) Postfix' main.cf auf <code>myhostname</code> und setzen Sie ihn auf etwas anderes, zum Beispiel <code>local.my.fqdn.tld</code>.</p>
<p>"172.22.1.1" ist das von mailcow erstellte Netzwerk-Gateway in Docker.
Das Relaying ĂĽber diese Schnittstelle ist notwendig (anstatt - zum Beispiel - direkt ĂĽber ${MAILCOW_HOSTNAME}), um ĂĽber ein bekanntes internes Netzwerk weiterzuleiten.</p>
@ -2507,7 +2514,7 @@ Das Relaying ĂĽber diese Schnittstelle ist notwendig (anstatt - zum Beispiel - d
<script id="__config" type="application/json">{"base": "../../..", "features": ["navigation.top", "navigation.tracking"], "search": "../../../assets/javascripts/workers/search.2a1c317c.min.js", "translations": {"clipboard.copied": "In Zwischenablage kopiert", "clipboard.copy": "In Zwischenablage kopieren", "search.config.lang": "de", "search.config.pipeline": "trimmer, stopWordFilter", "search.config.separator": "[\\s\\-]+", "search.placeholder": "Suche", "search.result.more.one": "1 weiteres Suchergebnis auf dieser Seite", "search.result.more.other": "# weitere Suchergebnisse auf dieser Seite", "search.result.none": "Keine Suchergebnisse", "search.result.one": "1 Suchergebnis", "search.result.other": "# Suchergebnisse", "search.result.placeholder": "Suchbegriff eingeben", "search.result.term.missing": "Es fehlt", "select.version.title": "Version ausw\u00e4hlen"}}</script>
<script src="../../../assets/javascripts/bundle.748e2769.min.js"></script>
<script src="../../../assets/javascripts/bundle.c2e1ee47.min.js"></script>
<script src="../../../assets/javascripts/client.js"></script>

Datei anzeigen

@ -11,7 +11,7 @@
<link rel="canonical" href="https://mailcow.github.io/mailcow-dockerized-docs/de/post_installation/firststeps-logging/">
<link rel="icon" href="../../../assets/images/favicon.png">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.11">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.14">
@ -19,10 +19,10 @@
<link rel="stylesheet" href="../../../assets/stylesheets/main.8c5ef100.min.css">
<link rel="stylesheet" href="../../../assets/stylesheets/main.3de6f41f.min.css">
<link rel="stylesheet" href="../../../assets/stylesheets/palette.9647289d.min.css">
<link rel="stylesheet" href="../../../assets/stylesheets/palette.cc9b2e1e.min.css">
@ -572,6 +572,33 @@
</li>
</ul>
</nav>
</li>
<li class="md-nav__item">
<a href="#nur-fur-rsyslog" class="md-nav__link">
Nur fĂĽr Rsyslog:
</a>
</li>
<li class="md-nav__item">
<a href="#um-die-local3-eingabe-nach-varlogmailcowlog-zu-verschieben-und-die-verarbeitung-zu-beenden-erstellen-sie-eine-datei-etcrsyslogddockerconf" class="md-nav__link">
Um die local3-Eingabe nach /var/log/mailcow.log zu verschieben und die Verarbeitung zu beenden, erstellen Sie eine Datei "/etc/rsyslog.d/docker.conf":
</a>
</li>
<li class="md-nav__item">
<a href="#danach-rsyslog-neu-starten" class="md-nav__link">
Danach rsyslog neu starten.
</a>
<nav class="md-nav" aria-label="Danach rsyslog neu starten.">
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="#uber-daemonjson-global" class="md-nav__link">
Ăśber daemon.json (global)
@ -2444,6 +2471,33 @@
</li>
</ul>
</nav>
</li>
<li class="md-nav__item">
<a href="#nur-fur-rsyslog" class="md-nav__link">
Nur fĂĽr Rsyslog:
</a>
</li>
<li class="md-nav__item">
<a href="#um-die-local3-eingabe-nach-varlogmailcowlog-zu-verschieben-und-die-verarbeitung-zu-beenden-erstellen-sie-eine-datei-etcrsyslogddockerconf" class="md-nav__link">
Um die local3-Eingabe nach /var/log/mailcow.log zu verschieben und die Verarbeitung zu beenden, erstellen Sie eine Datei "/etc/rsyslog.d/docker.conf":
</a>
</li>
<li class="md-nav__item">
<a href="#danach-rsyslog-neu-starten" class="md-nav__link">
Danach rsyslog neu starten.
</a>
<nav class="md-nav" aria-label="Danach rsyslog neu starten.">
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="#uber-daemonjson-global" class="md-nav__link">
Ăśber daemon.json (global)
@ -2474,8 +2528,6 @@
<h1>Logging</h1>
<p>Das Logging in mailcow: dockerized besteht aus mehreren Stufen, ist aber immerhin wesentlich flexibler und einfacher in einen Logging-Daemon zu integrieren als bisher.</p>
<p>In Docker schreibt die containerisierte Anwendung (PID 1) ihre Ausgabe auf stdout. FĂĽr echte Ein-Anwendungs-Container funktioniert das sehr gut.
FĂĽhren Sie <code>docker-compose logs --help</code> aus, um mehr zu erfahren. </p>
@ -2494,68 +2546,60 @@ ohne die Fähigkeit zu verlieren, Logs von der UI zu lesen oder verdächtige Cli
<h4 id="uber-docker-composeoverrideyml">Ăśber docker-compose.override.yml<a class="headerlink" href="#uber-docker-composeoverrideyml" title="Permanent link">&para;</a></h4>
<p>Hier ist die gute Nachricht: Da Docker einige großartige Logging-Treiber hat, können Sie mailcow: dockerized mit Leichtigkeit in Ihre bestehende Logging-Umgebung integrieren.</p>
<p>Erstellen Sie eine <code>docker-compose.override.yml</code> und fĂĽgen Sie zum Beispiel diesen Block hinzu, um das "gelf" Logging-Plugin fĂĽr <code>postfix-mailcow</code> zu verwenden:</p>
<div class="highlight"><pre><span></span><code>version: &#39;2.1&#39;
<p><code>version: '2.1'
services:
postfix-mailcow: # oder ein anderer
logging:
driver: &quot;gelf&quot;
driver: "gelf"
options:
gelf-address: &quot;udp://graylog:12201&quot;
</code></pre></div>
gelf-address: "udp://graylog:12201"</code></p>
<p>Ein weiteres Beispiel fĂĽr <strong>Syslog</strong>:</p>
<div class="highlight"><pre><span></span><code>version: &#39;2.1&#39;
services:
postfix-mailcow: # oder ein anderer
<p>```
version: '2.1'
services:</p>
<p>postfix-mailcow: # oder ein anderer
logging:
driver: &quot;syslog&quot;
driver: "syslog"
options:
syslog-address: &quot;udp://127.0.0.1:514&quot;
syslog-facility: &quot;local3&quot;
dovecot-mailcow: # oder ein anderer
syslog-address: "udp://127.0.0.1:514"
syslog-facility: "local3"</p>
<p>dovecot-mailcow: # oder ein anderer
logging:
driver: &quot;syslog&quot;
driver: "syslog"
options:
syslog-address: &quot;udp://127.0.0.1:514&quot;
syslog-facility: &quot;local3&quot;
rspamd-mailcow: # oder ein anderer
syslog-address: "udp://127.0.0.1:514"
syslog-facility: "local3"</p>
<p>rspamd-mailcow: # oder ein anderer
logging:
driver: &quot;syslog&quot;
driver: "syslog"
options:
syslog-address: &quot;udp://127.0.0.1:514&quot;
syslog-facility: &quot;local3&quot;
# Nur fĂĽr Rsyslog:
# Um die local3-Eingabe nach /var/log/mailcow.log zu verschieben und die Verarbeitung zu beenden, erstellen Sie eine Datei &quot;/etc/rsyslog.d/docker.conf&quot;:
local3.* /var/log/mailcow.logs
&amp; ~
# Danach rsyslog neu starten.
</code></pre></div>
syslog-address: "udp://127.0.0.1:514"
syslog-facility: "local3"</p>
<h1 id="nur-fur-rsyslog">Nur fĂĽr Rsyslog:<a class="headerlink" href="#nur-fur-rsyslog" title="Permanent link">&para;</a></h1>
<h1 id="um-die-local3-eingabe-nach-varlogmailcowlog-zu-verschieben-und-die-verarbeitung-zu-beenden-erstellen-sie-eine-datei-etcrsyslogddockerconf">Um die local3-Eingabe nach /var/log/mailcow.log zu verschieben und die Verarbeitung zu beenden, erstellen Sie eine Datei "/etc/rsyslog.d/docker.conf":<a class="headerlink" href="#um-die-local3-eingabe-nach-varlogmailcowlog-zu-verschieben-und-die-verarbeitung-zu-beenden-erstellen-sie-eine-datei-etcrsyslogddockerconf" title="Permanent link">&para;</a></h1>
<p>local3.* /var/log/mailcow.logs
&amp; ~</p>
<h1 id="danach-rsyslog-neu-starten">Danach rsyslog neu starten.<a class="headerlink" href="#danach-rsyslog-neu-starten" title="Permanent link">&para;</a></h1>
<p>```</p>
<h4 id="uber-daemonjson-global">Ăśber daemon.json (global)<a class="headerlink" href="#uber-daemonjson-global" title="Permanent link">&para;</a></h4>
<p>Wenn Sie den Logging-Treiber <strong>global</strong> ändern wollen, editieren Sie die Konfigurationsdatei des Docker-Daemons <code>/etc/docker/daemon.json</code> und starten Sie den Docker-Dienst neu:</p>
<div class="highlight"><pre><span></span><code>{
<p><code>{
...
&quot;log-driver&quot;: &quot;gelf&quot;,
&quot;log-opts&quot;: {
&quot;gelf-address&quot;: &quot;udp://graylog:12201&quot;
"log-driver": "gelf",
"log-opts": {
"gelf-address": "udp://graylog:12201"
}
...
}
</code></pre></div>
}</code></p>
<p>FĂĽr Syslog:</p>
<div class="highlight"><pre><span></span><code>{
<p><code>{
...
&quot;log-driver&quot;: &quot;syslog&quot;,
&quot;log-opts&quot;: {
&quot;syslog-address&quot;: &quot;udp://1.2.3.4:514&quot;
"log-driver": "syslog",
"log-opts": {
"syslog-address": "udp://1.2.3.4:514"
}
...
}
</code></pre></div>
}</code></p>
<p>Starten Sie den Docker-Daemon neu und fĂĽhren Sie <code>docker-compose down &amp;&amp; docker-compose up -d</code> aus, um die Container mit dem neuen Protokollierungstreiber neu zu erstellen.</p>
<hr>
@ -2676,7 +2720,7 @@ local3.* /var/log/mailcow.logs
<script id="__config" type="application/json">{"base": "../../..", "features": ["navigation.top", "navigation.tracking"], "search": "../../../assets/javascripts/workers/search.2a1c317c.min.js", "translations": {"clipboard.copied": "In Zwischenablage kopiert", "clipboard.copy": "In Zwischenablage kopieren", "search.config.lang": "de", "search.config.pipeline": "trimmer, stopWordFilter", "search.config.separator": "[\\s\\-]+", "search.placeholder": "Suche", "search.result.more.one": "1 weiteres Suchergebnis auf dieser Seite", "search.result.more.other": "# weitere Suchergebnisse auf dieser Seite", "search.result.none": "Keine Suchergebnisse", "search.result.one": "1 Suchergebnis", "search.result.other": "# Suchergebnisse", "search.result.placeholder": "Suchbegriff eingeben", "search.result.term.missing": "Es fehlt", "select.version.title": "Version ausw\u00e4hlen"}}</script>
<script src="../../../assets/javascripts/bundle.748e2769.min.js"></script>
<script src="../../../assets/javascripts/bundle.c2e1ee47.min.js"></script>
<script src="../../../assets/javascripts/client.js"></script>

Datei anzeigen

@ -11,7 +11,7 @@
<link rel="canonical" href="https://mailcow.github.io/mailcow-dockerized-docs/de/post_installation/firststeps-rp/">
<link rel="icon" href="../../../assets/images/favicon.png">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.11">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-8.2.14">
@ -19,10 +19,10 @@
<link rel="stylesheet" href="../../../assets/stylesheets/main.8c5ef100.min.css">
<link rel="stylesheet" href="../../../assets/stylesheets/main.3de6f41f.min.css">
<link rel="stylesheet" href="../../../assets/stylesheets/palette.9647289d.min.css">
<link rel="stylesheet" href="../../../assets/stylesheets/palette.cc9b2e1e.min.css">
@ -600,10 +600,23 @@
</li>
<li class="md-nav__item">
<a href="#binbash" class="md-nav__link">
!/bin/bash
</a>
<nav class="md-nav" aria-label="!/bin/bash">
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="#hinzufugen-weiterer-servernamen-fur-mailcow-ui" class="md-nav__link">
HinzufĂĽgen weiterer Servernamen fĂĽr mailcow UI
</a>
</li>
</ul>
</nav>
</li>
</ul>
@ -2466,10 +2479,23 @@
</li>
<li class="md-nav__item">
<a href="#binbash" class="md-nav__link">
!/bin/bash
</a>
<nav class="md-nav" aria-label="!/bin/bash">
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="#hinzufugen-weiterer-servernamen-fur-mailcow-ui" class="md-nav__link">
HinzufĂĽgen weiterer Servernamen fĂĽr mailcow UI
</a>
</li>
</ul>
</nav>
</li>
</ul>
@ -2490,16 +2516,14 @@
<h1>Reverse Proxy</h1>
<p>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.</p>
<p>1. Stellen Sie sicher, dass Sie HTTP_BIND und HTTPS_BIND in <code>mailcow.conf</code> auf eine lokale Adresse ändern und die Ports entsprechend einstellen, zum Beispiel:
<div class="highlight"><pre><span></span><code><span class="nv">HTTP_BIND</span><span class="o">=</span><span class="m">127</span>.0.0.1
<span class="nv">HTTP_PORT</span><span class="o">=</span><span class="m">8080</span>
<span class="nv">HTTPS_BIND</span><span class="o">=</span><span class="m">127</span>.0.0.1
<span class="nv">HTTPS_PORT</span><span class="o">=</span><span class="m">8443</span>
</code></pre></div></p>
<code>bash
HTTP_BIND=127.0.0.1
HTTP_PORT=8080
HTTPS_BIND=127.0.0.1
HTTPS_PORT=8443</code></p>
<p>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.</p>
<p><strong>WICHTIG:</strong> Verwenden Sie nicht Port 8081, 9081 oder 65510!</p>
<p>Erzeugen Sie die betroffenen Container neu, indem Sie <code>docker-compose up -d</code> ausfĂĽhren.</p>
@ -2528,81 +2552,73 @@ Auf vielen Servern wird logrotate den Webserver sowieso täglich neu laden.</p>
<p>2. Konfigurieren Sie Ihren lokalen Webserver als Reverse Proxy:</p>
<h3 id="apache-24">Apache 2.4<a class="headerlink" href="#apache-24" title="Permanent link">&para;</a></h3>
<p>Erforderliche Module:
<div class="highlight"><pre><span></span><code>a2enmod rewrite proxy proxy_http headers ssl
</code></pre></div></p>
<code>a2enmod rewrite proxy proxy_http headers ssl</code></p>
<p>Let's Encrypt wird unserem Rewrite folgen, Zertifikatsanfragen in mailcow werden problemlos funktionieren.</p>
<p><strong>Die hervorgehobenen Zeilen mĂĽssen beachtet werden</strong>.</p>
<div class="highlight"><pre><span></span><code><span class="nt">&lt;VirtualHost</span><span class="w"> </span><span class="s">*:80</span><span class="nt">&gt;</span><span class="w"></span>
<span class="hll"><span class="w"> </span><span class="nb">ServerName</span><span class="w"> </span>ZU<span class="w"> </span>MAILCOW<span class="w"> </span>HOSTNAMEN<span class="w"> </span>Ă„NDERN<span class="w"></span>
</span><span class="w"> </span><span class="nb">ServerAlias</span><span class="w"> </span>autodiscover.*<span class="w"></span>
<span class="w"> </span><span class="nb">ServerAlias</span><span class="w"> </span>autoconfig.*<span class="w"></span>
<span class="w"> </span><span class="nb">RewriteEngine</span><span class="w"> </span><span class="k">on</span><span class="w"></span>
<span class="w"> </span><span class="nb">RewriteCond</span><span class="w"> </span>%{HTTPS}<span class="w"> </span><span class="k">off</span><span class="w"></span>
<span class="w"> </span><span class="nb">RewriteRule</span><span class="w"> </span>^/?(.*)<span class="w"> </span>https://%{HTTP_HOST}/$1<span class="w"> </span>[R=301,L]<span class="w"></span>
<span class="hll"><span class="w"> </span><span class="nb">ProxyPass</span><span class="w"> </span>/<span class="w"> </span>http://127.0.0.1:8080/<span class="w"></span>
</span><span class="hll"><span class="w"> </span><span class="nb">ProxyPassReverse</span><span class="w"> </span>/<span class="w"> </span>http://127.0.0.1:8080/<span class="w"></span>
</span><span class="w"> </span><span class="nb">ProxyPreserveHost</span><span class="w"> </span><span class="k">On</span><span class="w"></span>
<span class="w"> </span><span class="nb">ProxyAddHeaders</span><span class="w"> </span><span class="k">On</span><span class="w"></span>
<span class="w"> </span><span class="nb">RequestHeader</span><span class="w"> </span>set<span class="w"> </span>X-Forwarded-Proto<span class="w"> </span><span class="s2">&quot;http&quot;</span><span class="w"></span>
<span class="nt">&lt;/VirtualHost&gt;</span><span class="w"></span>
<span class="nt">&lt;VirtualHost</span><span class="w"> </span><span class="s">*:443</span><span class="nt">&gt;</span><span class="w"></span>
<span class="hll"><span class="w"> </span><span class="nb">ServerName</span><span class="w"> </span>ZU<span class="w"> </span>MAILCOW<span class="w"> </span>HOSTNAMEN<span class="w"> </span>Ă„NDERN<span class="w"></span>
</span><span class="w"> </span><span class="nb">ServerAlias</span><span class="w"> </span>autodiscover.*<span class="w"></span>
<span class="w"> </span><span class="nb">ServerAlias</span><span class="w"> </span>autoconfig.*<span class="w"></span>
<span class="w"> </span><span class="c"># You should proxy to a plain HTTP session to offload SSL processing</span><span class="w"></span>
<span class="hll"><span class="w"> </span><span class="nb">ProxyPass</span><span class="w"> </span><span class="sx">/Microsoft-Server-ActiveSync</span><span class="w"> </span>http://127.0.0.1:8080/Microsoft-Server-ActiveSync<span class="w"> </span>connectiontimeout=4000<span class="w"></span>
</span><span class="hll"><span class="w"> </span><span class="nb">ProxyPassReverse</span><span class="w"> </span><span class="sx">/Microsoft-Server-ActiveSync</span><span class="w"> </span>http://127.0.0.1:8080/Microsoft-Server-ActiveSync<span class="w"></span>
</span><span class="hll"><span class="w"> </span><span class="nb">ProxyPass</span><span class="w"> </span>/<span class="w"> </span>http://127.0.0.1:8080/<span class="w"></span>
</span><span class="hll"><span class="w"> </span><span class="nb">ProxyPassReverse</span><span class="w"> </span>/<span class="w"> </span>http://127.0.0.1:8080/<span class="w"></span>
</span><span class="w"> </span><span class="nb">ProxyPreserveHost</span><span class="w"> </span><span class="k">On</span><span class="w"></span>
<span class="w"> </span><span class="nb">ProxyAddHeaders</span><span class="w"> </span><span class="k">On</span><span class="w"></span>
<span class="w"> </span><span class="nb">RequestHeader</span><span class="w"> </span>set<span class="w"> </span>X-Forwarded-Proto<span class="w"> </span><span class="s2">&quot;https&quot;</span><span class="w"></span>
<span class="hll"><span class="w"> </span><span class="nb">SSLCertificateFile</span><span class="w"> </span>MAILCOW_ORDNER/data/assets/ssl/cert.pem<span class="w"></span>
</span><span class="hll"><span class="w"> </span><span class="nb">SSLCertificateKeyFile</span><span class="w"> </span>MAILCOW_ORDNER/data/assets/ssl/key.pem<span class="w"></span>
</span>
<span class="w"> </span><span class="c"># Wenn Sie einen HTTPS-Host als Proxy verwenden möchten:</span><span class="w"></span>
<span class="w"> </span><span class="c">#SSLProxyEngine On</span><span class="w"></span>
<span class="w"> </span><span class="c"># Wenn Sie einen Proxy fĂĽr einen nicht vertrauenswĂĽrdigen HTTPS-Host einrichten wollen:</span><span class="w"></span>
<span class="w"> </span><span class="c">#SSLProxyVerify none</span><span class="w"></span>
<span class="w"> </span><span class="c">#SSLProxyCheckPeerCN off</span><span class="w"></span>
<span class="w"> </span><span class="c">#SSLProxyCheckPeerName off</span><span class="w"></span>
<span class="w"> </span><span class="c">#SSLProxyCheckPeerExpire off</span><span class="w"></span>
<span class="nt">&lt;/VirtualHost&gt;</span><span class="w"></span>
</code></pre></div>
<p>``` apache hl_lines="2 10 11 17 22 23 24 25 30 31"
<VirtualHost *:80>
ServerName ZU MAILCOW HOSTNAMEN Ă„NDERN
ServerAlias autodiscover.*
ServerAlias autoconfig.*
RewriteEngine on</p>
<p>RewriteCond %{HTTPS} off
RewriteRule ^/?(.*) https://%{HTTP_HOST}/$1 [R=301,L]</p>
<p>ProxyPass / <a href="http://127.0.0.1:8080/">http://127.0.0.1:8080/</a>
ProxyPassReverse / <a href="http://127.0.0.1:8080/">http://127.0.0.1:8080/</a>
ProxyPreserveHost On
ProxyAddHeaders On
RequestHeader set X-Forwarded-Proto "http"
</VirtualHost>
<VirtualHost *:443>
ServerName ZU MAILCOW HOSTNAMEN Ă„NDERN
ServerAlias autodiscover.*
ServerAlias autoconfig.*</p>
<p># You should proxy to a plain HTTP session to offload SSL processing
ProxyPass /Microsoft-Server-ActiveSync <a href="http://127.0.0.1:8080/Microsoft-Server-ActiveSync">http://127.0.0.1:8080/Microsoft-Server-ActiveSync</a> connectiontimeout=4000
ProxyPassReverse /Microsoft-Server-ActiveSync <a href="http://127.0.0.1:8080/Microsoft-Server-ActiveSync">http://127.0.0.1:8080/Microsoft-Server-ActiveSync</a>
ProxyPass / <a href="http://127.0.0.1:8080/">http://127.0.0.1:8080/</a>
ProxyPassReverse / <a href="http://127.0.0.1:8080/">http://127.0.0.1:8080/</a>
ProxyPreserveHost On
ProxyAddHeaders On
RequestHeader set X-Forwarded-Proto "https"</p>
<p>SSLCertificateFile MAILCOW_ORDNER/data/assets/ssl/cert.pem
SSLCertificateKeyFile MAILCOW_ORDNER/data/assets/ssl/key.pem</p>
<p># Wenn Sie einen HTTPS-Host als Proxy verwenden möchten:
#SSLProxyEngine On</p>
<p># Wenn Sie einen Proxy fĂĽr einen nicht vertrauenswĂĽrdigen HTTPS-Host einrichten wollen:
#SSLProxyVerify none
#SSLProxyCheckPeerCN off
#SSLProxyCheckPeerName off
#SSLProxyCheckPeerExpire off
</VirtualHost>
```</p>
<h3 id="nginx">Nginx<a class="headerlink" href="#nginx" title="Permanent link">&para;</a></h3>
<p>Let's Encrypt folgt unserem Rewrite, Zertifikatsanfragen funktionieren problemlos.</p>
<p><strong>Achten Sie auf die hervorgehobenen Zeilen</strong>.</p>
<div class="highlight"><pre><span></span><code>server {
<p>``` hl_lines="4 10 12 13 25 39"
server {
listen 80 default_server;
listen [::]:80 default_server;
<span class="hll"> server_name ZU MAILCOW HOSTNAMEN Ă„NDERN autodiscover.* autoconfig.*;
</span> return 301 https://$host$request_uri;
server_name ZU MAILCOW HOSTNAMEN Ă„NDERN autodiscover.* autoconfig.<em>;
return 301 https://$host$request_uri;
}
server {
listen 443 ssl http2;
listen [::]:443 ssl http2;
<span class="hll"> server_name ZU MAILCOW HOSTNAMEN Ă„NDERN autodiscover.* autoconfig.*;
</span>
<span class="hll"> ssl_certificate MAILCOW_PATH/data/assets/ssl/cert.pem;
</span><span class="hll"> ssl_certificate_key MAILCOW_PATH/data/assets/ssl/key.pem;
</span> ssl_session_timeout 1d;
server_name ZU MAILCOW HOSTNAMEN Ă„NDERN autodiscover.</em> autoconfig.*;</p>
<p>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
ssl_session_tickets off;</p>
<p># Siehe <a href="https://ssl-config.mozilla.org/#server=nginx">https://ssl-config.mozilla.org/#server=nginx</a> 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 {
<span class="hll"> proxy_pass http://127.0.0.1:8080/Microsoft-Server-ActiveSync;
</span> proxy_set_header Host $http_host;
ssl_prefer_server_ciphers off;</p>
<p>location /Microsoft-Server-ActiveSync {
proxy_pass <a href="http://127.0.0.1:8080/Microsoft-Server-ActiveSync">http://127.0.0.1:8080/Microsoft-Server-ActiveSync</a>;
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;
@ -2612,39 +2628,38 @@ server {
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 / {
<span class="hll"> proxy_pass http://127.0.0.1:8080/;
</span> proxy_set_header Host $http_host;
}</p>
<p>location / {
proxy_pass <a href="http://127.0.0.1:8080/">http://127.0.0.1:8080/</a>;
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
# Andernfalls wird ein Login wie folgt fehlschlagen: <a href="https://github.com/mailcow/mailcow-dockerized/issues/4537">https://github.com/mailcow/mailcow-dockerized/issues/4537</a>
proxy_buffer_size 128k;
proxy_buffers 64 512k;
proxy_busy_buffers_size 512k;
}
}
</code></pre></div>
```</p>
<h3 id="haproxy-von-der-community-unterstutzt">HAProxy (von der Community unterstĂĽtzt)<a class="headerlink" href="#haproxy-von-der-community-unterstutzt" title="Permanent link">&para;</a></h3>
<div class="admonition warning">
<p class="admonition-title">Warning</p>
<p>Dies ist ein nicht unterstützter Community Beitrag. Sie können gerne Korrekturen bereitstellen.</p>
</div>
<p><strong>Wichtig/Fix erwĂĽnscht</strong>: Dieses Beispiel leitet nur HTTPS-Verkehr weiter und benutzt nicht den in mailcow eingebauten ACME-Client.</p>
<div class="highlight"><pre><span></span><code>frontend https-in
<p>```
frontend https-in
bind :::443 v4v6 ssl crt mailcow.pem
default_backend mailcow
backend mailcow
default_backend mailcow</p>
<p>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
</code></pre></div>
```</p>
<h3 id="traefik-v2-von-der-community-unterstutzt">Traefik v2 (von der Community unterstĂĽtzt)<a class="headerlink" href="#traefik-v2-von-der-community-unterstutzt" title="Permanent link">&para;</a></h3>
<div class="admonition warning">
<p class="admonition-title">Warning</p>
@ -2655,50 +2670,49 @@ backend mailcow
<p>Zuallererst werden wir den acme-mailcow-Container deaktivieren, da wir die von traefik bereitgestellten Zertifikate verwenden werden.
Dazu mĂĽssen wir <code>SKIP_LETS_ENCRYPT=y</code> in unserer <code>mailcow.conf</code> setzen und <code>docker-compose up -d</code> ausfĂĽhren, um die Ă„nderungen zu ĂĽbernehmen.</p>
<p>Dann erstellen wir eine <code>docker-compose.override.yml</code> Datei, um die Hauptdatei <code>docker-compose.yml</code> zu ĂĽberschreiben, die sich im Mailcow-Stammverzeichnis befindet. </p>
<div class="highlight"><pre><span></span><code><span class="nt">version</span><span class="p">:</span><span class="w"> </span><span class="s">&#39;2.1&#39;</span><span class="w"></span>
<span class="nt">services</span><span class="p">:</span><span class="w"></span>
<span class="w"> </span><span class="nt">nginx-mailcow</span><span class="p">:</span><span class="w"></span>
<span class="w"> </span><span class="nt">networks</span><span class="p">:</span><span class="w"></span>
<span class="w"> </span><span class="c1"># Traefiks Netzwerk hinzufĂĽgen</span><span class="w"></span>
<span class="w"> </span><span class="nt">web</span><span class="p">:</span><span class="w"></span>
<span class="w"> </span><span class="nt">labels</span><span class="p">:</span><span class="w"></span>
<span class="w"> </span><span class="p p-Indicator">-</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">traefik.enable=true</span><span class="w"></span>
<span class="w"> </span><span class="c1"># Erstellt einen Router namens &quot;moo&quot; fĂĽr den Container und richtet eine Regel ein, um den Container mit einer bestimmten Regel zu verknĂĽpfen,</span><span class="w"></span>
<span class="w"> </span><span class="c1"># in diesem Fall eine Host-Regel mit unserer MAILCOW_HOSTNAME-Variable.</span><span class="w"></span>
<span class="w"> </span><span class="p p-Indicator">-</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">traefik.http.routers.moo.rule=Host(`${MAILCOW_HOSTNAME}`)</span><span class="w"></span>
<span class="w"> </span><span class="c1"># Aktiviert tls ĂĽber den zuvor erstellten Router.</span><span class="w"></span>
<span class="w"> </span><span class="p p-Indicator">-</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">traefik.http.routers.moo.tls=true</span><span class="w"></span>
<span class="w"> </span><span class="c1"># Gibt an, welche Art von Cert-Resolver wir verwenden werden, in diesem Fall le (Lets Encrypt).</span><span class="w"></span>
<span class="w"> </span><span class="p p-Indicator">-</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">traefik.http.routers.moo.tls.certresolver=le</span><span class="w"></span>
<span class="w"> </span><span class="c1"># Erzeugt einen Dienst namens &quot;moo&quot; fĂĽr den Container und gibt an, welchen internen Port des Containers</span><span class="w"></span>
<span class="w"> </span><span class="c1"># Traefik die eingehenden Daten weiterleiten soll.</span><span class="w"></span>
<span class="w"> </span><span class="p p-Indicator">-</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">traefik.http.services.moo.loadbalancer.server.port=${HTTP_PORT}</span><span class="w"></span>
<span class="w"> </span><span class="c1"># Gibt an, welchen Eingangspunkt (externer Port) traefik für diesen Container abhören soll.</span><span class="w"></span>
<span class="w"> </span><span class="c1"># Websecure ist Port 443, siehe die Datei traefik.toml wie oben.</span><span class="w"></span>
<span class="w"> </span><span class="p p-Indicator">-</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">traefik.http.routers.moo.entrypoints=websecure</span><span class="w"></span>
<span class="w"> </span><span class="c1"># Stellen Sie sicher, dass traefik das Web-Netzwerk verwendet, nicht das mailcowdockerized_mailcow-network</span><span class="w"></span>
<span class="w"> </span><span class="p p-Indicator">-</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">traefik.docker.network=web</span><span class="w"></span>
<span class="w"> </span><span class="nt">certdumper</span><span class="p">:</span><span class="w"></span>
<span class="w"> </span><span class="nt">image</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">humenius/traefik-certs-dumper</span><span class="w"></span>
<span class="w"> </span><span class="nt">container_name</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">traefik_certdumper</span><span class="w"></span>
<span class="w"> </span><span class="nt">network_mode</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">none</span><span class="w"></span>
<span class="w"> </span><span class="nt">volumes</span><span class="p">:</span><span class="w"></span>
<span class="w"> </span><span class="c1"># mounten Sie den Ordner, der Traefiks `acme.json&#39; Datei enthält</span><span class="w"></span>
<span class="w"> </span><span class="c1"># in diesem Fall wird Traefik von seinem eigenen docker-compose in ../traefik gestartet</span><span class="w"></span>
<span class="w"> </span><span class="p p-Indicator">-</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">../traefik/data:/traefik:ro</span><span class="w"></span>
<span class="w"> </span><span class="c1"># SSL-Ordner von mailcow einhängen</span><span class="w"></span>
<span class="w"> </span><span class="p p-Indicator">-</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">./data/assets/ssl/:/output:rw</span><span class="w"></span>
<span class="w"> </span><span class="nt">restart</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">always</span><span class="w"></span>
<span class="w"> </span><span class="nt">environment</span><span class="p">:</span><span class="w"></span>
<span class="w"> </span><span class="c1"># Ă„ndern Sie dies nur, wenn Sie eine andere Domain fĂĽr Mailcows Web-Frontend verwenden als in der Standard-Konfiguration</span><span class="w"></span>
<span class="w"> </span><span class="p p-Indicator">-</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">DOMAIN=${MAILCOW_HOSTNAME}</span><span class="w"></span>
<span class="nt">networks</span><span class="p">:</span><span class="w"></span>
<span class="w"> </span><span class="nt">web</span><span class="p">:</span><span class="w"></span>
<span class="w"> </span><span class="nt">external</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">true</span><span class="w"></span>
</code></pre></div>
<p>```yaml
version: '2.1'</p>
<p>services:
nginx-mailcow:
networks:
# Traefiks Netzwerk hinzufĂĽgen
web:
labels:
- traefik.enable=true
# Erstellt einen Router namens "moo" fĂĽr den Container und richtet eine Regel ein, um den Container mit einer bestimmten Regel zu verknĂĽpfen,
# in diesem Fall eine Host-Regel mit unserer MAILCOW_HOSTNAME-Variable.
- traefik.http.routers.moo.rule=Host(<code>${MAILCOW_HOSTNAME}</code>)
# Aktiviert tls ĂĽber den zuvor erstellten Router.
- traefik.http.routers.moo.tls=true
# Gibt an, welche Art von Cert-Resolver wir verwenden werden, in diesem Fall le (Lets Encrypt).
- traefik.http.routers.moo.tls.certresolver=le
# Erzeugt einen Dienst namens "moo" fĂĽr den Container und gibt an, welchen internen Port des Containers
# Traefik die eingehenden Daten weiterleiten soll.
- traefik.http.services.moo.loadbalancer.server.port=${HTTP_PORT}
# Gibt an, welchen Eingangspunkt (externer Port) traefik für diesen Container abhören soll.
# Websecure ist Port 443, siehe die Datei traefik.toml wie oben.
- traefik.http.routers.moo.entrypoints=websecure
# Stellen Sie sicher, dass traefik das Web-Netzwerk verwendet, nicht das mailcowdockerized_mailcow-network
- traefik.docker.network=web</p>
<pre><code>certdumper:
image: humenius/traefik-certs-dumper
container_name: traefik_certdumper
network_mode: none
volumes:
# mounten Sie den Ordner, der Traefiks `acme.json' Datei enthält
# in diesem Fall wird Traefik von seinem eigenen docker-compose in ../traefik gestartet
- ../traefik/data:/traefik:ro
# SSL-Ordner von mailcow einhängen
- ./data/assets/ssl/:/output:rw
restart: always
environment:
# Ă„ndern Sie dies nur, wenn Sie eine andere Domain fĂĽr Mailcows Web-Frontend verwenden als in der Standard-Konfiguration
- DOMAIN=${MAILCOW_HOSTNAME}
</code></pre>
<p>networks:
web:
external: true
```</p>
<p>Starten Sie die neuen Container mit <code>docker-compose up -d</code>.</p>
<p>Da Traefik 2 ein acme v2 Format verwendet, um ALLE Lizenzen von allen Domains zu speichern, mĂĽssen wir einen Weg finden, die Zertifikate auszulagern. Zum GlĂĽck haben wir [diesen kleinen Container] (<a href="https://hub.docker.com/r/humenius/traefik-certs-dumper">https://hub.docker.com/r/humenius/traefik-certs-dumper</a>), der die Datei <code>acme.json</code> ĂĽber ein Volume und eine Variable <code>DOMAIN=example. org</code>, und damit wird der Container die <code>cert.pem</code> und <code>key.pem</code> Dateien ausgeben, dafĂĽr lassen wir einfach den <code>traefik-certs-dumper</code> Container laufen, binden das <code>/traefik</code> Volume an den Ordner, in dem unsere <code>acme.json</code> gespeichert ist, binden das <code>/output</code> Volume an unseren mailcow <code>data/assets/ssl/</code> Ordner, und setzen die <code>DOMAIN=example.org</code> Variable auf die Domain, von der wir die Zertifikate ausgeben wollen. </p>
<p>Dieser Container ĂĽberwacht die Datei <code>acme.json</code> auf Ă„nderungen und generiert die Dateien <code>cert.pem</code> und <code>key.pem</code> direkt in <code>data/assets/ssl/</code>, wobei der Pfad mit dem <code>/output</code>-Pfad des Containers verbunden ist.</p>
@ -2708,18 +2722,18 @@ Dazu mĂĽssen wir <code>SKIP_LETS_ENCRYPT=y</code> in unserer <code>mailcow.conf<
<h3 id="optional-post-hook-skript-fur-nicht-mailcow-acme-clients">Optional: Post-Hook-Skript fĂĽr nicht-mailcow ACME-Clients<a class="headerlink" href="#optional-post-hook-skript-fur-nicht-mailcow-acme-clients" title="Permanent link">&para;</a></h3>
<p>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:
<div class="highlight"><pre><span></span><code>#!/bin/bash
cp /etc/letsencrypt/live/my.domain.tld/fullchain.pem /opt/mailcow-dockerized/data/assets/ssl/cert.pem
```</p>
<h1 id="binbash">!/bin/bash<a class="headerlink" href="#binbash" title="Permanent link">&para;</a></h1>
<p>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}
</code></pre></div></p>
```</p>
<h3 id="hinzufugen-weiterer-servernamen-fur-mailcow-ui">HinzufĂĽgen weiterer Servernamen fĂĽr mailcow UI<a class="headerlink" href="#hinzufugen-weiterer-servernamen-fur-mailcow-ui" title="Permanent link">&para;</a></h3>
<p>Wenn Sie vorhaben, einen Servernamen zu verwenden, der nicht <code>MAILCOW_HOSTNAME</code> in Ihrem Reverse-Proxy ist, stellen Sie sicher, dass Sie diesen Namen zuerst in mailcow.conf ĂĽber <code>ADDITIONAL_SERVER_NAMES</code> einpflegen. Die Namen mĂĽssen durch Kommas getrennt werden und <strong>dĂĽrfen</strong> keine Leerzeichen enthalten. Wenn Sie diesen Schritt ĂĽberspringen, kann es sein, dass mailcow auf Ihren Reverse-Proxy mit einer falschen Seite antwortet.</p>
<div class="highlight"><pre><span></span><code>ADDITIONAL_SERVER_NAMES=webmail.domain.tld,other.example.tld
</code></pre></div>
<p><code>ADDITIONAL_SERVER_NAMES=webmail.domain.tld,other.example.tld</code></p>
<p>FĂĽhren Sie <code>docker-compose up -d</code> zum Anwenden aus.</p>
<hr>
@ -2840,7 +2854,7 @@ docker restart ${postfix_c} ${dovecot_c} ${nginx_c}
<script id="__config" type="application/json">{"base": "../../..", "features": ["navigation.top", "navigation.tracking"], "search": "../../../assets/javascripts/workers/search.2a1c317c.min.js", "translations": {"clipboard.copied": "In Zwischenablage kopiert", "clipboard.copy": "In Zwischenablage kopieren", "search.config.lang": "de", "search.config.pipeline": "trimmer, stopWordFilter", "search.config.separator": "[\\s\\-]+", "search.placeholder": "Suche", "search.result.more.one": "1 weiteres Suchergebnis auf dieser Seite", "search.result.more.other": "# weitere Suchergebnisse auf dieser Seite", "search.result.none": "Keine Suchergebnisse", "search.result.one": "1 Suchergebnis", "search.result.other": "# Suchergebnisse", "search.result.placeholder": "Suchbegriff eingeben", "search.result.term.missing": "Es fehlt", "select.version.title": "Version ausw\u00e4hlen"}}</script>
<script src="../../../assets/javascripts/bundle.748e2769.min.js"></script>
<script src="../../../assets/javascripts/bundle.c2e1ee47.min.js"></script>
<script src="../../../assets/javascripts/client.js"></script>

Einige Dateien werden nicht angezeigt, da zu viele Dateien in diesem Diff geändert wurden Mehr anzeigen