GNU/Linux >> LINUX-Kenntnisse >  >> Panels >> Panels

Automatische Reinigung von Papierkorb- und/oder Junk-Ordnern mit ISPConfig (mit Roundcube + Tmpreaper (Tmpwatch))

Automatische Reinigung von Papierkorb- und/oder Junk-Ordnern mit ISPConfig (mit Roundcube + Tmpreaper (Tmpwatch ))

Übersicht:

Dieses kurze Mini-Howto hilft Ihnen bei der Einrichtung der automatischen Bereinigung von Papierkorb- und Junk-Ordnern. Die meisten (Web-)Mail-Clients (können) diese automatisch erstellen. Viele Leute bereinigen ihre E-Mail-Verzeichnisse nicht, was dazu führt, dass Junk- und Papierkorbordner massiv an Größe zunehmen, und da ISPConfig (noch nicht) in der Lage ist, gute Größenbeschränkungen für E-Mail-Verzeichnisse festzulegen, besteht die Alternative darin, diese Ordner nach einigen Tagen zu bereinigen.

Voraussetzungen:

In dieser Anleitung wird davon ausgegangen, dass Sie derzeit die folgende oder eine ähnliche Konfiguration verwenden:

  • Linux Debian Etch (v4.0)
  • ISPConfig (v2.2.24 oder höher)
  • Machen  
  • Nano oder vi
  • Roundcubemail (Paketinstallation v0.1.1)
  • Mindestens 1 Domain mit 1 ausgeführtem Postfach
  • Junk-Mail-Set soll in einen Ordner verschoben werden, anstatt es zu löschen (falls nicht gesetzt, siehe Links)

Wenn diese Konfiguration nicht mit Ihrer übereinstimmt, müssen Sie möglicherweise das Howto an Ihre Konfiguration anpassen.

Tutorial Junk-Mail in einen Ordner verschieben statt zu löschen:https://www.howtoforge.com/forums/showthread.php?t=15704
Roundcubemail v0.1.1 Paketinstallation:http://ispconfig.bb-hosting .org/downloads/roundcube/roundcubemail-0.1.1.pkg 

1 – Legt fest, dass roundcubemail automatisch Papierkorb- und Junk-Ordner erstellt

Wenn Sie dies bereits entweder per Roundcubemail oder anderen Methoden getan haben, können Sie dieses Kapitel überspringen. Stellen Sie sicher, dass .Trash und .Junk vorhanden sind.

Um Roundcubemail so einzustellen, dass Mailordner automatisch erstellt werden, müssen wir die Roundcubemail-Konfiguration ändern:

nano /home/admispconfig/ispconfig/web/roundcubemail/config/main.inc.php

Suchen Sie "$rcmail_config['create_default_folders']" und vergewissern Sie sich, dass es auf TRUE gesetzt ist, und vergewissern Sie sich, dass die Konfiguration ähnlich ist wie:

[...]
// store draft message is this mailbox
// leave blank if draft messages should not be stored
$rcmail_config['drafts_mbox'] = 'Drafts';
// store spam messages in this mailbox
$rcmail_config['junk_mbox'] = 'Junk';
// store sent message is this mailbox
// leave blank if sent messages should not be stored
$rcmail_config['sent_mbox'] = 'Sent';
// move messages to this folder when deleting them
// leave blank if they should be deleted directly
$rcmail_config['trash_mbox'] = 'Trash';
// display these folders separately in the mailbox list.
// these folders will also be displayed with localized names
$rcmail_config['default_imap_folders'] = array('INBOX', 'Drafts', 'Sent', 'Junk', 'Trash');
// automatically create the above listed default folders on login
$rcmail_config['create_default_folders'] = TRUE;
// protect the default folders from renames, deletes, and subscription changes
$rcmail_config['protect_default_folders'] = TRUE;
[...]

Wenn sich nun ein Benutzer anmeldet, werden die Mailordner erstellt.

HINWEIS:Dazu muss sich der Benutzer angemeldet haben, sonst existieren keine Papierkorb- und Junk-Ordner und werden natürlich nicht bereinigt!

2 - Installieren Sie tmpreaper

Das Paket tmpwatch befand sich früher im Paketmanager Aptitude, wurde jedoch aus unbekannten Gründen ersetzt. Für andere Linux-Varianten siehe tmpwatch.

Dazu geben wir folgenden Befehl ein:

apt-get install tempreaper

WICHTIG:Wenn Sie tmpreaper verwenden können, fahren Sie mit Kapitel 3 fort. Wenn Sie tmpwatch verwenden müssen, vergessen Sie nicht, die Cron-Datei zu ändern!

Wenn Sie tmpreaper nicht verwenden können, können Sie tmpwatch wie folgt herunterladen und installieren:

cd /usr/src
wget http://linux.bononline.nl/linux/tmpwatch/src/tmpwatch-2.9.0.tar.gz
tar xvzf tmpwatch-2.9.0.tar.gz
cd tmpwatch-2.9.0
make
make install

Danke an MTvermoes!

3 - Einen Cronjob hinzufügen

Wir müssen jetzt einen Cronjob hinzufügen, damit das System täglich überprüft, welche E-Mails zum Löschen benötigt werden. Wir empfehlen Ihnen, dies auf cron.daily einzustellen, damit es jeden Tag nach E-Mails sucht, die alt genug sind, um gelöscht zu werden. Sie könnten es jedoch auch in cron.hourly platzieren, was notwendig ist, wenn Sie eine maximale Zeit von weniger als 24 Stunden verwenden, sonst würde es immer noch nur täglich überprüft werden.

Dazu gehen wir zu /etc/cron.daily

cd /etc/cron.daily

Jetzt erstellen wir eine neue Datei "clean-mailfolders"

nano clean-mailfolders

Und lass es so aussehen:

#!/bin/sh
# Time to wait before removing mails from the Junk folder (Default: 7 days) Set 0 to turn off.
junk_max_hours=$((24*7))
# Time to wait before removing mails from the Trash folder (Default: 30 days) Set 0 to turn off.
trash_max_hours=$((24*30))
for domain in /var/www/*
do
  if [ -d "$domain"/user ]
  then
    for user in $domain/user/*
    do
      if [ "$junk_max_hours" -gt "0" ]
      then
        if [ -d "$user/Maildir/.Junk" ]
        then
          tmpreaper -m $junk_max_hours $user/Maildir/.Junk/{cur,new}
        fi
      fi
      if [ "$trash_max_hours" -gt "0" ]
      then
        if [ -d "$user/Maildir/.Trash" ]
        then
          tmpreaper -m $trash_max_hours $user/Maildir/.Trash/{cur,new}
        fi
      fi
    done
  fi
done

Vielleicht möchten Sie die Daten an Ihre eigenen Bedürfnisse anpassen. Am Anfang der Datei sind 2 Variablen mit dem Namen "junk_max_hours" angegeben, die die maximale Anzahl an Stunden enthalten, die E-Mails im Junk-Ordner aufbewahrt werden, und "trash_max_hours", die die maximale Anzahl an Stunden enthalten, die E-Mails im Papierkorb-Ordner aufbewahrt werden. Wenn Sie den Wert auf 0 setzen, wird die Bereinigung dieses Typs deaktiviert.

HINWEIS:Wenn Sie tmpwatch anstelle von tmpreaper verwenden müssen, vergessen Sie nicht, die Cron-Datei zu ändern und "tmpreaper" durch "tmpwatch" zu ersetzen.

Schlussfolgerung

Stellen Sie sicher, dass Sie dies überprüfen, bevor Sie es tatsächlich auf Produktionsservern ausführen. Dieses Tutorial ist ohne jegliche Garantie. Sei weise, teste!

Sie können die Variablen wie zuvor beschrieben an Ihre eigenen Bedürfnisse anpassen.

Ich hoffe euch gefällt mein erstes Tutorial!


Panels
  1. Entfernen Sie Dateien und Ordner im Linux-Terminal

  2. Vergleichen Sie Dateien und Ordner grafisch in Linux mit Meld

  3. Mehrere Home-Ordner mit Dropbox und Symlinks synchronisieren?

  4. So installieren Sie mod_ruby auf verschiedenen Linux-Distributionen zur Verwendung mit ISPConfig (2.2.20 und höher)

  5. So installieren Sie suPHP auf verschiedenen Linux-Distributionen zur Verwendung mit ISPConfig (2.2.20 und höher)

So betreiben Sie Ihren eigenen Nameserver mit ISPConfig und providerdomain.de (Schlund)

So betreiben Sie Ihre eigenen DNS-Server (primär und sekundär) mit ISPConfig 3 (Debian Squeeze)

Sichern Sie ISPConfig 3 und Dienste mit einem von GoDaddy signierten Zertifikat auf CentOS

Der perfekte Server – Ubuntu 14.10 mit Apache, PHP, MySQL, PureFTPD, BIND, Postfix, Dovecot und ISPConfig

Verwenden von RoundCube-Webmail mit ISPConfig 3 auf Debian Wheezy (nginx)

Schutz und Reinigung von Malware mit Imunify360