Removed invalid maildir and rebuild it

Dieses Thema im Forum "Allgemein" wurde erstellt von atnetws, 17. Apr. 2014.

  1. atnetws

    atnetws New Member

    Hallo zusammen,

    mein erster Beitrag und direkt Gemecker ;)
    Ich habe seit längerem einen Server, der nur als Mailserver dient, auf Basis von ISPConfig3 im Einsatz. Die Historie ist bisher

    -Maildir-Root war zu Anfang /var/vmail
    -Platzprobleme => via Webinterface den Maildir-Pfad in /www/vmail geändert
    -Inhalte von /var/vmail nach /www/vmail verschoben
    -/var/vmail als Symlink zu /www/vmail angelegt

    Heute habe ich folgende Meldung im Ispconfig-Log gefunden. Auslöser war, dass der Benutzer einen Autoresponder eingerichtet hat:

    Code:
    15.04.2014-17:57 - DEBUG - Found 1 changes, starting update process.
    15.04.2014-17:57 - DEBUG - Calling function 'user_update' from plugin 'mail_plugin' raised by event 'mail_user_update'.
    15.04.2014-17:57 - DEBUG - Moved Maildir from: /var/vmail/xxxxxxxxx.de/hans.mustermann to /www/vmail/xxxxxxxxx.de/hans.mustermann
    15.04.2014-17:57 - DEBUG - Calling function 'update' from plugin 'maildrop_plugin' raised by event 'mail_user_update'.
    15.04.2014-17:57 - DEBUG - Processed datalog_id 3268
    15.04.2014-17:57 - DEBUG - Remove Lock: /usr/local/ispconfig/server/temp/.ispconfig_lock
    15.04.2014-17:58 - DEBUG - Set Lock: /usr/local/ispconfig/server/temp/.ispconfig_lock
    15.04.2014-17:58 - DEBUG - Remove Lock: /usr/local/ispconfig/server/temp/.ispconfig_lock
    15.04.2014-17:59 - DEBUG - Set Lock: /usr/local/ispconfig/server/temp/.ispconfig_lock
    15.04.2014-17:59 - DEBUG - Remove Lock: /usr/local/ispconfig/server/temp/.ispconfig_lock
    15.04.2014-18:00 - DEBUG - Set Lock: /usr/local/ispconfig/server/temp/.ispconfig_lock
    15.04.2014-18:00 - DEBUG - Found 1 changes, starting update process.
    15.04.2014-18:00 - DEBUG - Calling function 'user_update' from plugin 'mail_plugin' raised by event 'mail_user_update'.
    15.04.2014-18:00 - WARNING - Removed invalid maildir and rebuild it: /www/vmail/xxxxxxxxx.de/hans.mustermann
    15.04.2014-18:00 - DEBUG - Created Maildir /www/vmail/xxxxxxxxx.de/hans.mustermann with subfolder: 
    15.04.2014-18:00 - DEBUG - Set ownership on /www/vmail/xxxxxxxxx.de/hans.mustermann
    15.04.2014-18:00 - DEBUG - Set Maildir quota to unlimited.
    15.04.2014-18:00 - DEBUG - Created Maildir /www/vmail/xxxxxxxxx.de/hans.mustermann with subfolder: Sent
    15.04.2014-18:00 - DEBUG - Created Maildir /www/vmail/xxxxxxxxx.de/hans.mustermann with subfolder: Drafts
    15.04.2014-18:00 - DEBUG - Created Maildir /www/vmail/xxxxxxxxx.de/hans.mustermann with subfolder: Trash
    15.04.2014-18:00 - DEBUG - Created Maildir /www/vmail/xxxxxxxxx.de/hans.mustermann with subfolder: Junk
    15.04.2014-18:00 - DEBUG - Set Maildir quota to unlimited.
    
    Einer der Knackpunkte ist sicherlich, dass in der mail_user-Tabelle in maildir noch /var/vmail hinterlegt war. Der Cronjob wollte den Ordner dann verschieben, aber Quelle und Ziel waren in dem Moment identisch.
    Als nächstes hat ISPConfig den Ordner als ungültig deklariert und das Postfach danach neu angelegt. Das fatale ist: hierbei handelte es sich um ein IMAP-Postfach mit zig Gigabyte Mails!

    Ausgehen davon jetzt ein Statement und eine Frage:

    1) Diese Funktion "das ist ungültig, ich schreib's mal neu" halte ich für etwas gefährlich, wenn sie eigenmächtig einfach mal so Mailkonten entfernt und neu anlegt. Es wäre m.E. besser, wenn sie den vorhandenen Ordner umbenennen (.bak) und dann den neuen anlegen würde, das dann inkl. z.B. einem Warnhinweis an den Admin beim nächsten Login (oder direkt per Mail).

    2) Kann ich in der mailuser-Tabelle gefahrlos alle Konten via replace von /var/vmail in /www/vmail ändern? Die nächsten Schritte wären dann
    -Replace von /var/vmail
    -Löschen des Symlinks /var/vmail

    Gruß,
    Marcus
     
  2. Till

    Till Administrator

    Das Problem ist dadurch verursacht dass Du die Konten unsachgemäß verlagert hast, ISPConfig check pfade auf Symlink Angriffe und behebt diese.

    Die korrekte Vorgehensweise ist:

    1) Daten in neuen Pfad kopieren.
    2) Einen Bind mount in /etc/fstab vom alten auf den neuen pfad anlegen und aktivieren.
     
  3. atnetws

    atnetws New Member

    Hi Till,

    danke erst einmal für die Antwort. Mir war schon klar, dass der Symlink die Ursache ist, ich habe jetzt schlichtweg alle Einträge in mail_user angepasst, /var/vmail ist jetzt komplett raus.

    Die Prüfung auf Symlink-Attacks ist ja durchaus legitim, aber die Vorgehensweise, dann direkt zu löschen und neu anzulegen, ist m.E. sehr, sehr gefährlich - das sollte ispconfig nur nach Rücksprache mit dem Admin machen. Für den Benutzer waren jezt auf einen Schlag alle seine Mails gelöscht, weil er einen Autoresponder angelegt hat.

    Wäre es nicht eine Idee, solche kritischen Gegebenheiten in einer Art Queue abzulegen, den Admin per Mail zu benachrichtigen und dann beim Login direkt als "Red Alert Question" zu präsentieren, so nach dem Motto "ich will hier etwas brachiales machen, darf ich das"? Dies wäre etwas weniger destruktiv.
     
  4. Till

    Till Administrator

    Ich werde mir das mal ansehen, wie wir das machen dass es nur umbenannt wird.
     
  5. atnetws

    atnetws New Member

    Super, thx! :D
     

Diese Seite empfehlen