Default mail quota

Seit dem Update auf UCS 3.2 funktioniert der default mail quota nicht mehr.
Es ist auch kein Eintrag in den Richtlinien zu finden, der als default benutzt wird.
Legt man einen neuen Benutzer an, steht bei mail-quota Richtlinie “Ererbt” drin. Dies hat zu Folge, daß
gar kein Quota für den User angelegt wird.
Welche Richtlinie müsste erstellt werden, daß “Ererbt” auch diese nutzt? Bzw. wo stellt man so ein default ein?

Noch eine Frage:
Wie lange sollte es dauern bis ein geänderter Quota-Eintrag (Richtlinie) im cyrus eingetragen ist?
Einige User dauern Stunden, bei anderen scheint es erst nach erneutem Speichern irgendwann zu geschehen.

Mit freundlichen Grüßen
Armin Schindler

Hallo Herr Schindler,

die dort verwendete Richtlinie ist eine Richtlinie vom Typ “Richtlinie: Mail-Quota”.
Richtlinien können Sie in der UMC im RIchtlinien-Modul finden und administrieren.

Soll eine Richtlinie per default immer für Benutzer gelten, so kann Sie beispielsweise mit dem Benutzerconatiner verknüpft werden: Richtlinienkonzept.

Eine Veränderung der Mailquota erfolgt nach Invalidierung des SASLauthd-Caches (8h nach letztem PAM-Durchlauf, wenn ich mich korrekt entsinne). Ich vermute, der Cache kann durch einen Restart des Dienstesa direkt invalidiert werden:

invoke-rc.d saslauthd restart

Mit freundlichen Grüßen,
Tim Petersen

Ist damit eine Eintrag vom Typ “Mail-Quota” unter /policies/users gemeint? Ein solcher Eintrag existierte bisher bei uns nicht
und alle neuen Benutzer stehen in der Mail-Quote Richtlinie auf “Ererbt”. Welcher Quota wird dann benutzt? Keiner, also unbegrenzt?
Wenn ich im cyradm mit “lq” nachschaue, habe solche User entweder nichts, oder ein / drin. Was beudeutet das?

Das klappt leider nicht. Am quota ändert sich danach nichts. cyradm meldet weiterin die alten Werte. Es dauert teilweise mehr als 24h bis die Änderung zu sehen ist.

Ich habe nun mehrer Positionen für die default mail-quota Richtlinie getestet. Egal in welchem Container ist die Eintrage, User mit
mail-quota Richtlinie ‘Ererbt’ bekommen diese Einstellung nicht, diese User haben laut cyrus unbegrenzt.
Meine Versuche tauchen auch nie in der Augabe von univention-policy-result auf.

Welche Richtlinie in welchem Container muss angelegt werden, damit diese als default für mail-quota der user gesetzt ist?

Hallo,

im UCS Handbuch unter Container / Richtlinien wird das Setzen einer Default-Richtlinie zufällig gerade am Beispiel eines Default-Mailquota beschrieben:

[code] Dieser Befehl legt eine Mail-Quota-Richtlinie mit dem Namen Default quota an, in der ein 1 GB Quota definiert wird:

univention-directory-manager policies/mailquota create
–position “cn=policies,dc=example,dc=com”
–set name=“Default quota”
–set MailQuota=1024

Diese Richtlinie wird nun an den Benutzer-Container cn=users gebunden:

univention-directory-manager container/cn modify
–dn “cn=users,dc=example,dc=com”
–policy-reference “cn=Default quota,cn=policies,dc=example,dc=com”[/code]

Viele Grüße
Ulf Friedel

Ich hatte dies schon gefunden, hatte aber gehofft es gibt eine Möglichkeit das Binden an cn=users wurde auch über UDM gehen.

Hallo,

ich versuche mich an einer kurzen Anleitung, auch auf die Gefahr hin, daß manches eventuell schon von einem Vorredner erwähnt wurde.

Im UMC Modul Richtlinien fügen Sie eine Richtlinie hinzu, als Container würde ich “org.example:/policies/mail” empfehlen und als Typ wählen Sie “Richtlinie: Mail-Quota”. Geben Sie nun der Richtlinie den Namen “default-mailquota”, setzen Sie Ihr gewünschtes Quota-Limit und schließen Sie das Erstellen der Richtlinie mit einem Klick auf “Richtlinie anlegen” ab.

Öffnen Sie nun bitte das Modul LDAP-Verzeichnis. Im Verzeichnisbaum klicken Sie mit Rechts auf users und wählen “Bearbeiten”. Wechseln Sie dort in den Reiter Richtlinien. Unter “Richtlinie: Mail-Quota --> Richtlinien-Konfiguration” sollte jetzt die gerade erstellte Richtlinie (“cn=default-mailquota,cn=mail,cn=policies,dc=example,dc=org”) auswählbar sein. Damit diese Änderung wirksam wird, darf nicht vergessen werden, dies mit einem Klick auf “Änderung speichern” abzuschliessen.

Im Anschluss steht im Modul Benutzer unter dem Reiter Richtlinien unter “Richtlinie: Mail-Quota --> Richtlinien-Konfiguration” weiterhin “Ererbt” und im Feld “Quota-Limit” sollte das von Ihnen gewählte Quota eingetragen sein. Der Grund warum diese ererbt ist, liegt darin, daß die Richtlinie auf den Container in dem sich der Nutzer befindet angewendet wurde und nicht direkt auf den Nutzer selbst.

Ich hoffe Ihnen etwas weitergeholfen zu haben.

Viele Grüße
Ulf Friedel

Sehr gut. Vielen Dank.

Der Teil mit dem Rechtsklick auf users im LDAP-Verzeichnis hat mir gefehlt.
Nachdem ich auf der Kommandozeile die Verbindung schon hergestellt hatte, taucht im LDAP-Verzeichnis per UMC nun auch die
für “Ererbt” eingetragene Default Richtlinie auf.

Die default Policy ansich funktioniert nun. Aber leider bekommt cyrus diese Einstellungen oft nicht mitgeteilt.
Ich habe immer noch einige User, bei denen ich an Richtlinien einstellen kann, was ich will ohne dass es ein Effekt hat.
Schaue ich mir diese User mit “lq” im cyradm an, steht da entweder nach Tagen (selbst nach Reboots) immer noch
der alte Wert drin oder gar nichts, also nicht einmal die default policy.

Das Synchronisieren von den LDAP Richtlinien in den Cyrus scheint also nicht korrekt zu laufen.

Wo kann ich da nachsehen was da passiert? Bzw. wie kann ich gezielt diesen Abgleich manuell starten?

Ich würde es mit einem Referenzsystem vergleichen. Ansonsten auth.log, syslog, daemon.log, mail.*, listener.log.

Viele Grüße aus Bremen

Ein Referenzsystem haben wir nicht. Und wie würde das auch helfen? Entweder sehe ich dort den gleichen Effekt, oder es funktioniert.
Aber dann weiss ich immer noch nicht, warum es bei unserem System nicht klappt.

In diese Log-dateien habe ich schon mehrfach geschaut. Aber in keiner findet sich ein Hinweis auf das Setzen/Synchronisieren der Quota-Einstellungen.
In welcher Datei müsste ich denn Meldungen dazu finden? Und wie sehen die im Gut- und Fehler-fall aus?
Welcher Prozess ist denn für das Setzen des Quota zuständig? Im LDAP ist es ja nun korrekt seit Tagen drin.

Kann es sein, dass das Quota im cyrus nur auf eine neue Einstellung gebracht wird, wenn der User sich im OX-Frontend mal anmeldet?

Wir haben dies mal mit einem neuen User getestet. Nachdem der User angelegt wurde, ist sein quota gar nicht gesetzt (obwohl im LDAP eine
Richtlinie gesetzt ist). Dabei ist es egal, ob es “Ererbt” oder eine direkt gesetzte Richtlinie ist.
Auch nach Tagen ist dieser Zustand unverändert. Ein saslauthd restart hilft da auch nicht.
Sobald der User sich aber mal über das OX-Frontend anmeldet (IMAP Zugriff reicht nicht!), ist sein quota sofort korrigiert
entsprechend der EInstellung im LDAP.

Da wir auch User haben, die das Frontend gar nicht nutzen und nur IMAP verwenden, ist dies ein Problem.
Oder ist das so gewollt?

Hallo,

Quota werden durch das ox-user.py Listener Modul gesetzt (bei höherem Debuglevel im Listener Log sichbar (siehe Listener.log meldet Duplicate entry Fehler). Dafür wird das Script /usr/sbin/univention-cyrus-set-quota verwendet welches u.a. die UCR Variable mail/cyrus/imap/quotainterval auswertet:

[quote=“ucr info mail/cyrus/imap/quotainterval”] The mail quota configured in the UMC is transferred to the quota settings of the Cyrus server during authentication on the mail server. The update interval is evaluated so that the quota settings are only updated once this time period has expired. This variable configures the interval in minutes.
Categories: service-mail[/quote]

Auch hier können Sie versuchen das Script manuell aufzurufen bzw. die Listener-Log im Debuglevel prüfen. Bitte haben Sie Verständnis dafür dass wir im Rahmen der kostenlosen Unterstützung hier im Forum nur begrenzt Hinweise zur eigenen Fehlersuche und Analyse geben können. Bei Interesse finden Sie Informationen zu unseren kommerziellen Supportangeboten auf unserer Webseite unter:
univention.de/download-und-s … rtangebote

Mit freundlichen Grüßen
Janis Meybohm

Das script /usr/sbin/univention-cyrus-set-quota funktioniert ansich. Wenn die Intervalzeit überschritten ist (die Datei /var/cache/cyrusquota…) einen
entsprechend alten Zeitstempel hat, wird das quota richtig gesetzt.

Aber laut debug log des listener wird dieses Script

  • nicht nochmal automatisch aufgerufen, wenn die Intervalzeit noch nicht erreicht war und somit keine Änderung erfolgte.
  • gar nicht aufgerufen, wenn man die Richtlinie auf “Ererbt” stellt.

In beiden Fällen muss man manuell eingreifen. Aus meiner Sicht ist dies ein Bug.

Hallo,

ergänzend zu dem Listener werden die Quota natürlich auch bei der Anmeldung der Benutzer ausgewertet/gesetzt (entsprechend dem Intervall). rgrep quota /etc/pam.d/ zeigt wo genau.

Mit freundlichen Grüßen
Janis Meybohm

Mastodon