Announcement

Collapse
No announcement yet.

Mailbox teilen

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • Mailbox teilen

    Hallo again,

    ich nehme bezug auf die Post hier, den ich im falschen Thema gepostet habe.


    Ich kann in diesem Thread nicht mehr antworten, daher der neue.

    ich komme da einfach nicht weiter, ich habe versucht dovecot mit den shared folders einzurichten, ich habe jetzt auch das Textfeld mit dem Plus-Zeichen, wo ich Rechte vergeben kann, aber immer wenn ich die Rechte speichere, bleiben die Rechte, wie sie vorher waren, das neu Vergebene Recht ist wieder weg.

    Wenn ich versuche Ordner zu abonnieren, kommt das:
    mail.jpg
    und wenn ich den Haken setzen will, wandelt sich die Maus in ein Stopschild

    doveconf -n gibt unter anderem folgendes aus:

    mail_plugins = acl

    namespace {
    list = yes
    location = maildir:/var/vmail/%d/%n:INDEX=/var/vmail/%d/%n/shared/%%u
    prefix = shared/%%u/
    separator = /
    subscriptions = no
    type = shared
    }
    namespace inbox {
    inbox = yes
    location =
    mailbox Drafts {
    special_use = \Drafts
    }
    mailbox Junk {
    special_use = \Junk
    }
    mailbox Sent {
    special_use = \Sent
    }
    mailbox "Sent Messages" {
    special_use = \Sent
    }
    mailbox Trash {
    special_use = \Trash
    }
    prefix =
    separator = /
    type = private
    }
    plugin {
    acl = vfile:/etc/dovecot/global-acls:cache_secs=300
    acl_shared_dict = file:/var/lib/dovecot/shared-mailboxes
    sieve = ~/.dovecot.sieve
    sieve_dir = ~/sieve
    }

    das sollten die relevanten Einträge sein.

    /etc/dovecot/global-acls bleibt leer
    genauo wie var/lib/dovecot/shared-mailboxes

    in den mailaccounts wird ein shared-Verzeichnis angelegt, darin ist das ein weiteres Verzeichnis mit der Mailadresse des Users, der die Freigabe erhalten soll, und darin wird dann eine datei dovecot.index.log angelegt.

    Ich habe auch versucht mit telnet und SETACL eine Berechtigung zu setzten, dabei hat dann GETACL auch ein positives Ergebnis geliefert, in dem Freigabe-Ordner liegt auch eine dovecot-acl mit Inhalt:
    user=admin@meine.domain akxeilprwts

    aber nichts hilft ich sehe keine Freigabe-Ordner in OX
    Last edited by 2paul; 03-22-2014, 10:58 PM.

  • #2
    Ok, ich bin jetzt einen schritt weitergekommen

    Die Speicherung der Rechte funktioniert, also wenn ich einen Rechte-Eintrag mache, bleibt er drin.

    ich hab dazu:
    Code:
    plugin {
     acl = vfile
     acl_shared_dict = file:/var/vmail/meine.domain/shared-mailboxes.db
     }
    geändert, jetzt wird die shared-mailboxes.db auch gefüllt mit den Einträgen der Freigabe:
    Code:
    shared/shared-boxes/user/paul@meine.domain/admin@meine.domain
    1
    und die mailbox/dovecot-acl wird korrekt erzeugt:
    Code:
    owner akxeilprwts
    user=admin@meine.domain akxeilprwts
    auch die dovecot-acl-list wird generiert:
    Code:
    1395572137 test_paul
    aber trotzdem bleibt das Problem, dass ich nicht über OX auf die Shared-Boxes zugreifen kann, es kommt immer doch das Stop-Schild.

    Ich hab den dovecot in der 10-logging auf mail-debug gestellt, und das einzigste was ich da finden kann ist:

    Code:
    2014-03-23 12:09:18 imap(admin@meine.domain): Debug: acl: [B]No lookup right to mailbox[/B]: shared/paul@meine.domain/test
    obwohl ich volle Adminrechte vergeben habe, wie man an der dovecot-acl sieht ??

    EDIT:
    Ich denke, dass ich jetzt weiss, warum das nicht geht, er erstellt zwar den Ordner: shared/paul@meine.domain/, aber darin ist kein Ordner test, sondern nur eine dovecot.index.log
    Last edited by 2paul; 03-23-2014, 02:08 PM.

    Comment


    • #3
      Geschafft

      Code:
       namespace {
       list = yes
       location = maildir:/var/vmail/%d/[B]%%n[/B]:INDEX=/var/vmail/%d/%n/shared/%%u
       prefix = shared/%%u/
       separator = /
       subscriptions = no
       type = shared
       }
      das war der Fehler: %n zeigt ja nur in /var/vmail/paul
      das %%n zeigt dann in auch in /var/vmail/admin usw...

      jetzt hab ich auch die Struktur verstanden, leider mangelt es da draussen wirklich an Tutorials in dieser Richtung...
      vielleicht sollte ich das mal alles zusammenschreiben.

      Comment


      • #4
        Ich würde mich über ein Tutorial zu dem Thema freuen, zumal wir genau diese Kombination (OX Community + Dovecot) einsetzen.

        Comment


        • #5
          Ok, ich kann mal zusammenfassen, was ich bisher habe.
          Erstmal habe ich mich an diesem Tutorial orientiert:



          Da ich debian wheezy einsetze und das auch kompatibel zum OX-Server ist, weiterhin kann ich darüber die Virtuellen User über das Webinterface PostfixAdmin anlegen.

          Im Anschluss daran das Mysql-Passwort für root wieder löschen:
          Code:
          mysqladmin --user=root --password=AltesPasswort password ''
          Dann OX installieren:



          Einrichten der Shared Mail-Folders:
          In der /etc/dovecot/conf.d/10-mail.conf
          Das hab ich gemacht, weil da schon ein default namespace angelegt ist, ansonsten kann man das auch alles in die /etc/dovecot/dovecot.conf schreiben, dann muss man nur den default-Namespace deaktivieren
          Code:
          namespace inbox {
            type = private
            separator = /
            prefix =
            inbox = yes
          }
          namespace {
            type = shared
            separator = /
            prefix = shared/%%u/
            location = maildir:/var/vmail/%d/%%n:INDEX=/var/vmail/%d/%n/shared/%%u
            subscriptions = no
            list = yes
          }
          dann in die /etc/dovecot/dovecot.conf

          Code:
          auth_mechanisms = plain login
          log_timestamp = "%Y-%m-%d %H:%M:%S "
          
          mail_location = maildir:/var/vmail/%d/%n
          mail_access_groups = vmail
          
          mail_plugins = acl
          protocol imap {
            mail_plugins = $mail_plugins imap_acl
          }
          plugin {
            # die globale Speicherung der ACLs hat bei mir irgendwie nicht funktioniert, dies ist die locale Speicherung
            acl = vfile
          }
          
          plugin {
            # meine domain gegen die eigene Domain tauschen
            # vielleicht geht auch acl_shared_dict = file:/var/vmail/%d/shared-mailboxes.db (ungetestet)
            acl_shared_dict = file:/var/vmail/meine.domain/shared-mailboxes.db
          }
          Dann könnte es noch sein, dass man die Berechtigungen setzen muss:
          Code:
          chown -R vmail.vmail /var/vmail/*
          Neustart der Server:
          Code:
          /etc/init.d/dovecote restart
          /etc/init.d/open-xchange restart

          Comment


          • #6
            Hilfestellung:

            Erstmal die Logs checken:
            Code:
            tail -f /var/log/mail.log
            tail -f /var/log/mail.err
            Dovecot-Logs aktivieren:
            in der /etc/dovecot/conf.d/10-logging.conf
            Nachher wieder rausnehmen, weil der wirklich viel logged:
            Code:
            debug_log_path = /var/log/dovecot.debug
            mail_debug = yes
            auth_debug = yes
            Anzeigen der Dovecote Log:
            Code:
            tail -f /var/log/dovecot.debug
            main-user = der der Freigabe bekommen hat
            sub-user = der der Freigabe erteilt hat
            Wenn Freigabe erteilt wurde, muss im Verzeichnis: /var/vmail/meine.domain/main-user/shared/
            ein Verzeichnis liegen mit Namen sub-user@meine.domain darin befindet sich das das Verzeichnis des Freigegenen Mail-Ordners

            die Datei /var/vmail/meine.domain/shared-mailboxes.db enthält folgenden Eintrag:
            Code:
            shared/shared-boxes/user/main-user@meine.domain/sub-user@meine.domain
            1
            Die Datei /var/vmail/meine.domain/sub-user/.[Name des freigegebenen Mailordners]/dovecot-acl sieht dann so aus:
            Code:
            owner akxeilprwts
            user=main-user@meine.domain lprs
            Falls das alles nicht hilft, versuchen mit telnet über die shell die ACLs zu setzen und zu lesen:


            oder mit doveadm die shared mailboxes prüfen:

            Comment

            Working...
            X