Follow up zu “Synology NAS bei Nichtgebrauch herunterfahren”

Vor einigen Tagen erhielt ich ein Pingback von Nerdoskop zu meinem Synology Skript. Um mein Skript etwas nutzerfreundlicher zu machen hat Saarnu eine kleine Weboberfläche geschrieben um zum einen das Logfile anzuzeigen und zum anderen es einfacher zu machen ein Stopfile zu setzen bzw. zu löschen.

Die Idee das Stopfile einfach über den Aufruf einer URL setzen zu können hat mir sehr gut gefallen, daher habe ich für diesen Zweck ebenfalls ein kleines PHP Skript erstellt, welches einfach im “web”-Ordner des NAS platziert werden kann.

Mit Hilfe dieses Skript reicht nun ein Aufruf von http://nas/shutdown_on_not_used.php um das Stopfile zu setzen und http://nas/shutdown_on_not_used.php?shutdown um selbiges wieder zu entfernen.

Nach erfolgreicher Ausführung leitet das Skript in diesem Falle auf http://nas/ weiter. Sollte hier eine andere Adresse (z.B. die DSM Oberfläche oder Maraschino) gewünscht sein, kann das “/” einfach durch die gewünschte Adresse ersetzt werden.

Z-Push Benutzer mittels LDAP begrenzen (ohne Code Modifikation)

Mit Zarafa 7.1 wurde das LDAP Attribut  “zarafaenabledfeatures” eingeführt, welches mit wenigen Handgriffen ebenfalls zur Steuerung von Z-Push Accounts genutzt werden kann. Der Vorteil an dem im folgenden aufgezeigten Weg liegt darin, dass hierfür keine Modifikationen am Z-Push Code vorgenommen werden müssen und somit zukünftige Updates erleichtert werden.

“zarafaenabledfeatures” ist ein Freitextfeld welches einen beliebigen String (wie eben “imap” oder “pop3″) aufnehmen kann. Dies erlaubt ohne großen Aufwand weitere Filtermerkmale wie z.B. “z-push” zu definieren und bei entsprechenden Nutzern zu hinterlegen.

Sobald dieser Wert für alle gewünschten Nutzer hinterlegt ist, können wir mit der Modifikation der Apache Konfiguration fortfahren.

Bei direktem Aufruf von http://server/Microsoft-Server-ActiveSync werden wir von einem Apache Authentifizierungsdialog begrüßt, welcher über den Z-Push Code getriggert wird. Diesen Umstand können wir zu unserem Vorteil nutzen, indem wir - bereits bevor der Dialog durch Z-Push getriggert wird - im Apache eine Authentifizierung durchführen lassen. Dies funktioniert da eine einmal durchgeführte Anmeldung in der Session gespeichert wird und an die dahinter liegende Applikation “durchgereicht” wird (funktioniert z.B. auch mit ownCloud).

Um den Apache Webserver einen LDAP Baum zur Authentifizierung nutzen zu lassen sind dann nur noch die folgenden zwei Änderungen nötig:

  1. mod_authnz_ldap aktivieren, dies geht z.B. mittels “a2enmod authnz_ldap”
  2. den folgenden Code Block innerhalb der Directory Sektion im Z-Push vHost einfügen (und natürlich an die eigene Umgebung anpassen):

Der Entscheidende Punkt dieser Ergänzung liegt in AuthLDAPURL. Diese  definiert:

  • wo das LDAP läuft
  • wie die Basis DN lautet
  • wie das Login Attribut heißt
  • und welcher Filter angewendet werden soll.

Das Apache Handbuch definiert die Syntax wie folgt: ldap://host:port/basedn?attribute?scope?filter. Die oben genannte Beispielsyntax nutzt also das Attribut uid als Benutzername und sollte dieser Benutzer die Objectklasse zarafa-user und das Attribut zarafaEnabledFeatures mit dem Wert z-push ist die Anmeldung erfolgreich. In allen anderen Fällen wird die Anmeldung abgeleht.

Synology NAS bei Nichtgebrauch herunterfahren

Nachdem ich lange mit mir gekämpft habe, war es im letzten Monat nun endlich soweit und ich habe mir ein Synology NAS gekauft. Zwar bietet Synology hier die Möglichkeit, sowohl die Festplatten als auch das NAS selbst, bei Inaktivität in einen Standby-artigen Zustand zu versetzen (Deep Sleep), dennoch finde ich es wenig sinnvoll das Gerät laufen zulassen, wenn kein Zugriff zu erwarten ist.

Weiterlesen