Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen Revision Vorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
centos:mail_c7:dovecot_7 [09.08.2014 18:49. ] – [Datenbank-Verzeichnis] djangocentos:mail_c7:dovecot_7 [22.07.2019 15:04. ] (aktuell) – Externe Bearbeitung 127.0.0.1
Zeile 44: Zeile 44:
 } }
 </file> </file>
-==== was auch immer ;) ====+==== Socket für userdb Anfragen ==== 
 +Meldet sich ein Nutzer bei unserem Dovecot-Server an, muss der IMAP-Prozess dieses Nutzers über eine **userdb**-Anfrage das Homeverzeichnis desjenigen Nutzers in Erfahrung bringen, der eines seiner Verzeichnisse teilt. Hierzu tragen wir die nötigen Informationen in der Konfigurationsdatei //**/etc/dovecot/conf.d/10-master.conf**// ein.
  
    # vim /etc/dovecot/conf.d/10-master.conf    # vim /etc/dovecot/conf.d/10-master.conf
Zeile 80: Zeile 81:
   # Auth process is run as this user.   # Auth process is run as this user.
   #user = $default_internal_user   #user = $default_internal_user
 +
 +  # Django : 2014-05-23
 +  # default: unset
 +  # Port 3659 für Postfix-Authentifizierung definiert
 +    inet_listener {
 +     address = 10.0.0.170
 +     port = 3659
 +  }
 +
 } }
  
Zeile 85: Zeile 95:
 </code> </code>
  
 +
 +==== Mailplugin und Shared Namespace ====
 +Damit das Plugin **acl** in allen Modulen geladen werden kann, tragen wir es in der Konfigurationsdatei //**/etc/dovecot/conf.d/10-mail.conf**// als zusätzliches Plugin nach.
    # vim /etc/dovecot/conf.d/10-mail.conf    # vim /etc/dovecot/conf.d/10-mail.conf
 <code bash>... <code bash>...
Zeile 102: Zeile 115:
 </code> </code>
  
-   # vim /etc/dovecot/conf.d/20-imap.conf +Damit die geteilten Verzeischnisse beim Mailclient unserer Kunden eingebunden und angezeigt werden benötigen wir noch einen eigenen Namensraum, der bereits in der Konfigurationsdatei //**/etc/dovecot/conf.d/10-mail.conf**// vordefiniert wurdeDieses Konfigurationsbeispiel passen wir nun unseren Bedürfnissen nach an.
-<code bash>... +
- +
-protocol imap { +
-  # Space separated list of plugins to load (default is global mail_plugins). +
-  #mail_plugins = $mail_plugins +
-  # Django : 2014-08-06 Quota-Informationen via IMAP zur Verfügung stellen +
-  #mail_plugins = $mail_plugins imap_quota +
-  # Django : 2014-08-08 ACL-Verwaltung via IMAP zur Verfügung stellen +
-  mail_plugins = $mail_plugins imap_quota imap_acl +
- +
-  # Maximum number of IMAP connections allowed for a user from each IP address. +
-  # NOTE: The username is compared case-sensitively. +
-  #mail_max_userip_connections = 10 +
-+
- +
-... +
-</code> +
- +
-   # vim /etc/dovecot/conf.d/90-acl.conf +
-<file bash /etc/dovecot/conf.d/90-acl.conf>## +
-## Mailbox access control lists. +
-## +
- +
-# vfile backend reads ACLs from "dovecot-acl" file from mail directory. +
-# You can also optionally give a global ACL directory path where ACLs are +
-# applied to all users' mailboxes. The global ACL directory contains +
-# one file for each mailbox, eg. INBOX or sub.mailbox. cache_secs parameter +
-# specifies how many seconds to wait between stat()ing dovecot-acl file +
-# to see if it changed. +
-plugin { +
-  # Django : 2014-08-08 +
-  # default: #acl = vfile:/etc/dovecot/global-acls:cache_secs=300 +
-  acl = vfile +
-+
- +
-# To let users LIST mailboxes shared by other users, Dovecot needs a +
-# shared mailbox dictionary. For example: +
-plugin { +
-  # Django : 2014-08-08 +
-  # default: #acl_shared_dict = file:/var/lib/dovecot/shared-mailboxes +
-  acl_shared_dict = file:/var/lib/dovecot/db/shared-mailboxes +
-+
-</file> +
    # vim /etc/dovecot/conf.d/10-mail.conf    # vim /etc/dovecot/conf.d/10-mail.conf
 <code bash>... <code bash>...
Zeile 184: Zeile 153:
   list = children   list = children
   subscriptions = yes   subscriptions = yes
 +  ignore_on_failure = no
 } }
  
Zeile 189: Zeile 159:
 </code> </code>
  
 +Somit werden geteilte Ordner im Namensraum //**shared**// eingeblendet.
 +
 +{{ :centos:mail_c7:shared_folder.png?nolink&250 |Bild: Bildschirmhardcopy des Mailclient Thunderbird }}
 +
 +
 +==== IMAP_ACL Plugin ====
 +Damit die Nutzer unseres Dovecot-Servers Verzeichnisse teilen und die dazu nötigen Berechtigungen über das IMAP-Protokoll setzen können, müssen wir das **imap_acl** Plugin beim Protokoll **IMAP** natürlich noch aktivieren. Dazu tragen wir es in der Konfigurationsdatei //**/etc/dovecot/conf.d/20-imap.conf**// als zusätzliches Plugin nach. 
 +   # vim /etc/dovecot/conf.d/20-imap.conf
 +<code bash>...
 +
 +protocol imap {
 +  # Space separated list of plugins to load (default is global mail_plugins).
 +  #mail_plugins = $mail_plugins
 +  # Django : 2014-08-06 Quota-Informationen via IMAP zur Verfügung stellen
 +  #mail_plugins = $mail_plugins imap_quota
 +  # Django : 2014-08-08 ACL-Verwaltung via IMAP zur Verfügung stellen
 +  mail_plugins = $mail_plugins imap_quota imap_acl
 +
 +  # Maximum number of IMAP connections allowed for a user from each IP address.
 +  # NOTE: The username is compared case-sensitively.
 +  #mail_max_userip_connections = 10
 +}
 +
 +...
 +</code>
 +
 +===== Aktivierung der Konfiguration =====
 +Damit unsere Konfigurationsänderungen auch aktiv werden, bedarf es noch eines Reload unseres Dovecot-Daemon.
    # systemctl reload dovecot    # systemctl reload dovecot
  
  
 +===== Freigaben auf Seiten des Kontoinhabers/Mailclient =====
 +Beim Setzen der **ACL**s stellt uns **IMAP** folgende Rechte zur Verfügung.
 +
 +
 +^ Kürzel  ^ Recht          ^ Beschreibung                                                                                                                 ^
 +|  **a**  | admin          | Auf diesen Ordner können durch den Nutzer **ACL**s gesetzt werden (Adminrechte).                                             |
 +|  **e**  | expunge        | Nachrichten können in dem gewählten Ordner zum Löschen markiert werden.                                                      |
 +|  **i**  | insert         | In diesen Ordner können Nachrichten geschrieben, eingefügt bzw. kopiert werden.                                              |
 +|  **k**  | create         | Unterordner können angegelegt werden. Der Ordner kann umbenannt werden, sofern die //delete//-rechte gesetzt sind.           |
 +|  **l**  | lookup         | Der Ordner ist sichtbar und kann abonniert werden.                                                                           |
 +|  **p**  | post           | In dem Ordner kann Dovecot (via **lda** oder **LMTP**) Nachrichten ablegen.                                                  |
 +|  **r**  | read           | Der Ordner kann zum Lesen ausgewählt werden.                                                                                 |
 +|  **s**  | write-seen     | Das Flag **\Seen** kann gesetzt oder auch gelöscht werden.                                                                   |
 +|  **t**  | write-deleted  | Das Flag **\Deleted** kann gesetzt oder auch gelöscht werden.                                                                |
 +|  **w**  | write          | Außer den beiden Flags **\Deleted** und **\Seen** können die Flags der eMails durch den Nutzer gesetzt und gelöscht werden.  |
 +|  **x**  | delete         | Der Ordner kann durch den Nutzer gelöscht werden.                                                                            |
 +
 +Wir brauchen uns aber nicht groß beim Setzen und Ändern unserer Ordnerfreigaben auf den Konsole beschäftigen, denn die gängigsten eMailclients bieten hierzu entweder direkt oder über Erweiterungen/Plugins menügeführte **ACL**-Unterstützungen mit. 
 +
 +==== kMail ====
 +Die Verwaltung von **ACL**s geht bei **kMail**// "out of the box"//
 +=== Ordner freigeben / ACL definieren ===
 +Zum Freigeben eines Ordners klicken wir mit der Rechten Maustaste auf den freizugebenden Ordner und wählen dann den Menüpunkt **[Ordnereigenschaften]** an .
 +
 +{{ :centos:mail_c7:kmail_shared_folder_1.png?direct&425 |Bild: Bildschirmhardcopy kMail ACL-Bearbeitung}}
 +
 +Zum Neuanlegen einer Zugriffsregelung wählen wir den Menüpunkt **[Eintrag hinzufügen]** aus. Zum ändern vorhandener ACLs wählen wir die Schaltfläche **[Eintrag bearbeiten]** aus.
 +
 +{{ :centos:mail_c7:kmail_shared_folder_2.png?direct&480 |Bild: Bildschirmhardcopy kMail ACL-Bearbeitung}}
 +
 +Über fest vorgegebene Nutzerrechte wird bei kMail der Zugriuff auf freizugebende Ordner realisiert. Die definierten Rollen wurden folgenden Rechten zugeordnet.
 +
 +^ ACL-Recht           ^ Keine  ^ Lesen  ^ Anhängen  ^ Schreiben  ^ Alle   ^
 +| Nachschlagen        |                 x     |                 |
 +| Lesen       |                 x     |                 |
 +| Gelesen speichern                   x     |                 |
 +| Einfügen            |                   x     |                 |
 +| Posten              |                   x     |                 |
 +| Flag "schreiben"    |                        |                 |
 +| Anlegen                                    |                 |
 +| Löschen                                    |                 |
 +| Verwalten                                  |                   |
 +
 +Haben wir unsere Auswahl getroffen und die Rechte gesetzt, speichern wir unsere Auswahl mit einem Klick auf die Schaltfläche **[__O__K]**.
 +
 +{{ :centos:mail_c7:kmail_shared_folder_3.png?direct&550 |Bild: Bildschirmhardcopy kMail ACL-Bearbeitung}}
 +
 +Mit Anwahl der Schaltfläche **[__O__K]** verlassen wir den Dialog zum Setzen der **ACL**s.
 +
 +{{ :centos:mail_c7:kmail_shared_folder_4.png?direct&480 |Bild: Bildschirmhardcopy kMail ACL-Bearbeitung}}
 +=== Ordner / Shared Folder einbinden ===
 +
 +Zum Einbinden eines shared folders klicken wir mit der rechten Maustaste auf den Posteingangskorb und wählen den Menüpunkt **[Serverseitige Abonnements]** aus. 
 +
 +{{ :centos:mail_c7:kmail_shared_folder_5.png?direct&480 |Bild: Bildschirmhardcopy kMail Shared Folder}}
 +
 +Anschließend wählen wir den gewünschten freigegebenen Ordner aus, setzen das Häkchen **[✔]** und klicken auf die Schaltflöche **[__O__K]**. 
 +
 +{{ :centos:mail_c7:kmail_shared_folder_6.png?direct&500 |Bild: Bildschirmhardcopy kMail Shared Folder}}
 +
 +Der freigegebene Ordner des anderen Users wird uns ab sofort unter dem Namensraum //**shared**// angezeigt.
 +
 +
 +{{ :centos:mail_c7:kmail_shared_folder_7.png?direct&325 |Bild: Bildschirmhardcopy kMail Shared Folder}}
 +==== Thunderbird ====
 +Um mit Thunderbird ACLs definieren und bearbeiten zu können, benötigt man das Plugin **Imap-ACL-Extension**.
 +
 +{{ :centos:mail_c7:thunderbird_imap-acl-plugin.png?direct&800 |Bild: Thunderbird Imap-ACL-Extension Plugin}}
 +
 +
 +=== Ordner freigeben / ACL definieren ===
 +Zum Freigeben eines Ordners klicken wir mit der rechten Maustaste auf den entsprechenden Ordner und wählen den Menüpunkt **Eigenschaften** aus.
 +
 + {{ :centos:mail_c7:thunderbird_shared_folder_1.png?direct&350 |Bild: Bildschirmhardcopy ACL-Definition unter Thunderbird}}
 +
 +Auf dem Reiter **Freigabe**  klicken wir dann auf die Schaltfläche **[Rechte setzen]**.
 +
 + {{ :centos:mail_c7:thunderbird_shared_folder_2.png?direct&480 |Bild: Bildschirmhardcopy ACL-Definition unter Thunderbird}}
 +
 +Zum Setzen von neuen Benutzerrechten klicken wir auf die Schaltfläche **[Neu]**. Möchten wir bestehende ACLs bearbeiten, wählen wir die Schaltfläche **[Ändern]** an.
 +
 + {{ :centos:mail_c7:thunderbird_shared_folder_3.png?direct&480 |Bild: Bildschirmhardcopy ACL-Definition unter Thunderbird}}
 +
 +Hier können wir jedes einzelne Recht durch Setzen eines Häkchens **[✔]** setzen.
 +
 + {{ :centos:mail_c7:thunderbird_shared_folder_4.png?direct&320 |Bild: Bildschirmhardcopy ACL-Definition unter Thunderbird}}
 +=== Ordner / Shared Folder einbinden ===
 +
 +Zum Einbinden eines **shared folders** klicken wir mit der rechten Maustaste auf den Posteingangskorb und wählen den Menüpunkt **[__A__bonnieren]** aus.
 +
 +{{ :centos:mail_c7:thunderbird_shared_folder_5.png?direct&320 |Bild : Bildschirmhardcopy Thunderbird Einbinden eines shared folders}}
 +
 +Anschließend wählen wir den freigegebenen Ordner des anderen Mailboxusers aus, setzen das Häkchen **[✔]** in der betreffenden Checkbox aus und klicken aif die Schaltfläche **[Abonnieren]**.
 +
 +{{ :centos:mail_c7:thunderbird_shared_folder_6.png?direct&480 |Bild : Bildschirmhardcopy Thunderbird Einbinden eines shared folders}}
 +
 +Ab jetzt wird der freigegeben Ordner im Namensraum **//shared//** angezeigt.
 +
 +{{ :centos:mail_c7:thunderbird_shared_folder_7.png?direct&260 |Bild : Bildschirmhardcopy Thunderbird Einbinden eines shared folders}}
 +
 +==== Horde Framework / Webmailer ====
 +Das Freigeben von Ordnern ist beim Webmailer **IMP** des Horde Projektes denkbar intuitiv und einfach gestaltet. 
 +
 +=== Ordner freigeben / ACL definieren ===
 +Möchte man einen Ordner freigeben, so klickt man mit der rechten Mausztaste auf das betreffende Ordnersymbol. Es erscheint dann ein Auswahlfenster mit den möglichen Aktionen. Dort wählen wir dann den Punkt **//ACL bearbeiten//** aus. 
 +
 +{{ :centos:mail_c7:horde_imp_shared_folder.png?direct&260 |Bild: Bildschirmhardcopy Horde 5 IMP ACL-Menü}}
 +
 +In das Feld Benutzer tragen wir nun den Ameldenamen/eMail-Adresse ein, dem wir Rechte auf den Ordner einräumen wollen.
 +
 +{{ :centos:mail_c7:horde_imp_shared_folder_2.png?direct&850 |Bild: Bildschirmhardcopy Horde 5 IMP ACL-Menü}}
 +
 +Wir können dann jedes der möglichen Rechte einfach durch Anwahl der Checkboxen bzw. durch Setzen eines Häkchens auswählen. Fährt man mit der Maus über eins der Rechte, erscheint eine kurze Beschreibung des jeweiligen Rechtes.
 +
 +{{ :centos:mail_c7:horde_imp_shared_folder_3.png?direct&850 |Bild: Bildschirmhardcopy Horde 5 IMP ACL-Menü}}
 +
 +Alternativ kann man natürlich auch durch Auswahl der vorbereiteten Vorlagen, die benötigten Rechte zu einer Aktion auswählen.
 +
 +{{ :centos:mail_c7:horde_imp_shared_folder_4.png?direct&850 |Bild: Bildschirmhardcopy Horde 5 IMP ACL-Menü}}
 +
 +Haben wir alle Einstellungen vorgenommen, klicken wir auf die Schaltfläche **[Speichern]** um unsere definierten Zugriffsregeln/ACLs auf dem IMAP-Server zu speichern.
  
 +{{ :centos:mail_c7:horde_imp_shared_folder_8.png?nolink&300 |Bild: Bildschirmhardcopy Horde 5 IMP ACL-Speichern}}
  
 +=== Ordner / Shared Folder einbinden ===
  
 +Um einen freigegebenen Ordner eines anderen Nutzers einzubinden, klicken wir auf den Menüpunkt **Ordneraktionen** auf der linken Seite und wählen dort den Untermenüpunkt **alle Ordner anzeigen** aus.
  
 +{{ :centos:mail_c7:horde_imp_shared_folder_5.png?direct&180 |Bild: Bildschirmhardcopy Horde 5 IMP shared folder}}
  
 +Wir sehen nun den Namensraum **//shared//** und können diesen nun auswählen.
  
 +{{ :centos:mail_c7:horde_imp_shared_folder_6.png?direct&180 |Bild: Bildschirmhardcopy Horde 5 IMP shared folder}}
  
 +Dazu klicken wir auf das Icon bis der benötigte Ordner des anderen Mailboxnutzers erscheint.
  
 +{{ :centos:mail_c7:horde_imp_shared_folder_7.png?direct&400 |Bild: Bildschirmhardcopy Horde 5 IMP shared folder}}
  
  
 +====== Links ======
 +  * **[[centos:mail_c7:start|Zurück zum Kapitel >>Mailserverinstallation unter CentOS 7<<]]**
 +  * **[[wiki:start|Zurück zu >>Projekte und Themenkapitel<<]]**
 +  * **[[http://dokuwiki.nausch.org/doku.php/|Zurück zur Startseite]]**
  
  
  • centos/mail_c7/dovecot_7.1407610151.txt.gz
  • Zuletzt geändert: 09.08.2014 18:49.
  • von django