Horde: ActiveSync wie einstellen?

Status
Für weitere Antworten geschlossen.

PaTheRat

Benutzer
Mitglied seit
14. Nov 2016
Beiträge
38
Punkte für Reaktionen
0
Punkte
6
Liebe Kollegen,

Auf einer DS916+ habe ich anhand dieser Anleitung (Abschnitt: manual installation):
https://www.aldeid.com/wiki/Synology#tab=Mail_Client

den Horde-WebMail Client sehr gut zum Laufen gebracht.

Leider happert es es wenig beim Aktivieren des ActiveSync Abschnittes.

Ich vermute im Verzeichnis
Rich (BBCode):
/volume1/@applications/WebStation/usr/local/etc/httpd/conf/extra/
die Apache2 conf-Dateien.

Dort habe ich folgende Datei httpd-ssl.conf-user angelegt:
Rich (BBCode):
Listen 443

Include conf/extra/httpd-ssl.conf-common

NameVirtualHost *:443

#INCLUDE_SSL_VHOST_CONF#

<VirtualHost *:443>
    ServerName *
    ServerAlias *

    SSLEngine on

    <FilesMatch "\.(cgi|shtml|phtml|php)$">
        SSLOptions +StdEnvVars
    </FilesMatch>

    Alias /Microsoft-Server-ActiveSync /volume1/web/horde/rpc.php
    Alias /autodiscover/autodiscover.xml /volume1/web/horde/rpc.php
    Alias /Autodiscover/Autodiscover.xml /volume1/web/horde/rpc.php
    Alias /AutoDiscover/AutoDiscover.xml /volume1/web/horde/rpc.php
    RedirectPermanent /.well-known/caldav /horde/rpc.php
    RedirectPermanent /.well-known/carddav /horde/rpc.php

    BrowserMatch ".*MSIE [2-5]\..*" nokeepalive ssl-unclean-shutdown downgrade-1.0 force-response-1.0
    #CustomLog /dev/null "%t %h %{SSL_PROTOCOL}x %{SSL_CIPHER}x \"%r\" %b"
    CustomLog /var/log/httpd/user-access_log combined

    <IfDefine HSTS>
        Header set Strict-Transport-Security "max-age=31536000; includeSubDomains"
    </IfDefine>

    Include sites-enabled-user/*.conf
</VirtualHost>

Nach einem Restart der WebStation musste ich aber feststellen, dass das nicht funktioniert.

Meine Fragen:
* Ist das der richtige Ablageort für meine Apache2-conf Datei?
* Wo kann ich noch suchen, um den ActiveSync in Griff zu bekommen?
* Eine andere Idee ... ich bin für jeden Hinweis sehr dankbar ...

lG aus Wien
PaTheRat
 

PaTheRat

Benutzer
Mitglied seit
14. Nov 2016
Beiträge
38
Punkte für Reaktionen
0
Punkte
6
Liebe Kollegen,

ich habe einen Weg gefunden ActiveSync zu aktivieren:

Konfiguration:
DSM6
MailPlus mit LDAP
dazu:
* php5.6
* MariaDB
* phpMyAdmin
* PHP PEAR
* horde manuell installiert

Ich habe mir dazu eine eigene Definition für das nginx umgebaut und verwende den direkten Weg ohne Apache2.
Im WebStations Frontend habe mir dazu den entsprechende Eintrag für den Mailserver (ehemals mit Apache2 def.) gelöscht.

Die Replikation der horde funktioniert für:
* Mail
* Kalender
* Kontakte
* Aufgaben
* Notizen

Mit folgenden Geräten funktioniert dieses Setting:
* IPhone 4S,5S,6S
* IPad 2,3,4
* Adroid Samsung XCover2

Apple und Win7 muss ich noch anpassen.

Werde alles noch genau dokumentieren.
Melde mich dazu später.

lG aus Wien
PaTheRat
 
Zuletzt bearbeitet:

synneutestuser

Benutzer
Mitglied seit
29. Jan 2015
Beiträge
7
Punkte für Reaktionen
0
Punkte
0
Hallo PaTheRat

Hab leider ein paar Schwierigkeiten beim Installieren von Horde

Bekommen keine Mails vom Mailserver in Horde angezeigt obwohl in der Mailstation alle Mails vorhanden sind.
Wie wird die Verbindung vom Mailserver zu Horde konfiguriert?

Wo sind die Parameter für "aktivesync" einzustellen?


Hab eine DS713+ DSM 6.0.2-8451 Update 8

Wäre dir für eine kurze Anleitung sehr dankbar.

VG aus Regensburg
Georg
 

PaTheRat

Benutzer
Mitglied seit
14. Nov 2016
Beiträge
38
Punkte für Reaktionen
0
Punkte
6

synneutestuser

Benutzer
Mitglied seit
29. Jan 2015
Beiträge
7
Punkte für Reaktionen
0
Punkte
0
Hallo PaTheRat
Danke für die schnelle Rückmeldung.

Die manuelle Installation läuft bis zum Webinterface durch, soweit scheint alles in Ordnung zu sein.

VG

Georg
 

PaTheRat

Benutzer
Mitglied seit
14. Nov 2016
Beiträge
38
Punkte für Reaktionen
0
Punkte
6
Hallo synneutestuser,

hast Du Deiner Konfig /volume1/web/horde/config/conf.php einen Abschitt
$conf['sql']...
mit den MariaDB Zugangsdaten?

Ich habe mir unter
$conf['auth']['admins'] = array('deinBenutzerName');
den Benutzer def. der Admintätigkeiten durchführen kann.

Das ist jener Benutzer, den ich in der Syno Systemsteuerung / Benutzer mit einem Passwort eingetragen habe.
Dann kannst Du auch in die Webmaske zur Horde einsteigen.
Im Abschnitt Administrator können dann weitere Dinge def. werden.

lG PaThe.Rat
 

synneutestuser

Benutzer
Mitglied seit
29. Jan 2015
Beiträge
7
Punkte für Reaktionen
0
Punkte
0
Hallo PaTheRat

Hab jetzt ( dank deiner Anleitung ) bis auf ActiveSync alles am laufen.

Würde mich über eine kurze Info wie du das mit ActivSync gelöst hast sehr freuen.

VG aus Regensburg

synneutestuser
 

PaTheRat

Benutzer
Mitglied seit
14. Nov 2016
Beiträge
38
Punkte für Reaktionen
0
Punkte
6
Hallo synneutestuser,

Benutzt Du die Horde über eine SSL-Url?
Falls Ja, dann solltest Du folgende Schritte umsetzen.

Der normale Weg würde über die Konfig vom Apache22 funktionieren. Leider lässt das aber der nginx von der Syno nicht zu. Aus diesem Grund habe ich eine eigene nginx Konfig geschrieben (zusammenkopiert wäre wohl besser formuliert).

1. Zertifikat kopieren
Ich habe dazu folgendes Verzeichnis genommen:
Rich (BBCode):
/usr/local/etc/certificate/WebStation/vhost_<irgendwas>/
Inhalt ist bei mir ...
Rich (BBCode):
-r-------- 1 http http 2139 Nov 13 09:19 cert.pem
-r-------- 1 http http 2139 Nov 13 09:19 fullchain.pem
-r-------- 1 http http 3243 Nov 13 09:19 privkey.pem

Ich mir dann folgendes Verzeichnis angelegt:
Rich (BBCode):
/usr/local/etc/certificate/WebStation/meinedomain.net/
und den Inhalt des oben angeführten Verzeichnis hineinkopiert.

Wichtig:
Zertifikate dürfen nur von dort geladen werden:
/usr/local/etc/certificate/WebStation/



2. Konfig für nginx anlegen
Im Verzeichnis
Rich (BBCode):
/etc/nginx
befinden sich alle Konfig Dateien.

Ich habe dazu im Verzeichnis
Rich (BBCode):
/etc/nginx/sites-enabled
eine Datei mit dem Namen
Rich (BBCode):
www.horde.conf
angelegt. Diesen solltest Du beibehalten!

Der Inhalt dieser Datei sieht wie folgt aus:
Rich (BBCode):
server {
    # assume correct DNS settings
    listen                              443 ssl;
    listen                              [::]:443 ssl;

    server_name                         mail.meinedomain.net;

    # minimum ssl stuff
    ssl_certificate             /usr/local/etc/certificate/WebStation/meinedomain.net/fullchain.pem;
    ssl_certificate_key         /usr/local/etc/certificate/WebStation/meinedomain.net/privkey.pem;
    ssl_protocols               TLSv1 TLSv1.1 TLSv1.2;
    ssl_ciphers
ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:DHE-DSS-AES128-GCM-SHA256:kEDH+AESGCM:ECDHE-RSA-AES128-SHA256:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA:ECDHE-ECDSA-AES256-SHA:DHE-RSA-AES128-SHA256:DHE-RSA-AES128-SHA:DHE-DSS-AES128-SHA256:DHE-RSA-AES256-SHA256:DHE-DSS-AES256-SHA:DHE-RSA-AES256-SHA:AES128-GCM-SHA256:AES256-GCM-SHA384:AES128-SHA256:AES256-SHA256:AES128-SHA:AES256-SHA:AES:CAMELLIA:DES-CBC3-SHA:!aNULL:!eNULL:!EXPORT:!DES:!RC4:!MD5:!PSK:!aECDH:!EDH-DSS-DES-CBC3-SHA:!EDH-RSA-DES-CBC3-SHA:!KRB5-DES-CBC3-SHA;
    ssl_prefer_server_ciphers   on;


    # optional: see https://www.owasp.org/index.php/List_of_useful_HTTP_headers
    add_header                          strict-transport-security "max-age=31536000";
    add_header                          x-frame-options           "sameorigin";
    add_header                          x-xss-protection          "1; mode=block";
    add_header                          x-content-type-options    "nosniff";


    location ^~ /.well-known/acme-challenge {
        root /var/lib/letsencrypt;
        default_type text/plain;
    }

    access_log /var/log/nginx/horde_user.log;
    charset utf8;

    root    /volume1/web/horde/;
    index    index.html  index.htm  index.cgi  index.php  index.php5 ;
    error_page 400 401 402 403 404 405 406 407 408 500 501 502 503 504 505 @error_page;

    location @error_page {
        root /var/packages/WebStation/target/error_page;
        rewrite ^ /$status.html break;
    }

    location ^~ /_webstation_/ {
        alias    /var/packages/WebStation/target/error_page/;
    }

    location / {

       # Ruud Baart
       # support for activesync
       # works for me with Outlook 2013 and Android 5.0.1
       location /Microsoft-Server-ActiveSync {
            alias /volume1/web/horde/rpc.php;
            fastcgi_split_path_info ^(.+\.php)(/.+)$;
            fastcgi_keep_conn on;
            fastcgi_param               SCRIPT_FILENAME /volume1/web/horde/rpc.php;
            fastcgi_pass                unix:/run/php-fpm/php56-fpm.sock;
            include                     /etc/nginx/fastcgi.conf;
        }

        location /autodiscover/autodiscover.xml {
            alias /volume1/web/horde/rpc.php;
            fastcgi_split_path_info ^(.+\.php)(/.+)$;
            fastcgi_keep_conn on;
            fastcgi_param               SCRIPT_FILENAME /volume1/web/horde/rpc.php;
            fastcgi_pass                unix:/run/php-fpm/php56-fpm.sock;
            include                     /etc/nginx/fastcgi.conf;
        }
        location /Autodiscover/Autodiscover.xml {
            alias /volume1/web/horde/rpc.php;
            fastcgi_split_path_info ^(.+\.php)(/.+)$;
            fastcgi_keep_conn on;
            fastcgi_param               SCRIPT_FILENAME /volume1/web/horde/rpc.php;
            fastcgi_pass                unix:/run/php-fpm/php56-fpm.sock;
            include                     /etc/nginx/fastcgi.conf;
        }
        location /AutoDiscover/AutoDiscover.xml {
            alias /volume1/web/horde/rpc.php;
            fastcgi_split_path_info ^(.+\.php)(/.+)$;
            fastcgi_keep_conn on;
            fastcgi_param               SCRIPT_FILENAME /volume1/web/horde/rpc.php;
            fastcgi_pass                unix:/run/php-fpm/php56-fpm.sock;
            include                     /etc/nginx/fastcgi.conf;
        }

        location ^~ /(static|themes)/ {
            expires                     4w;
            add_header                  Cache-Control public;
        }

        location ^~ /services/ajax.php {
            fastcgi_split_path_info     ^(.+\.php)(/.+)$;
            fastcgi_keep_conn on;
            fastcgi_pass                unix:/run/php-fpm/php56-fpm.sock;
            fastcgi_param               SCRIPT_FILENAME $document_root$fastcgi_script_name;
            include                     /etc/nginx/fastcgi.conf;
        }

        location ~ \.php {
#            fastcgi_split_path_info     ^(.+\.php)(/.+)$;
#            fastcgi_keep_conn on;
            fastcgi_pass                unix:/run/php-fpm/php56-fpm.sock;
#            fastcgi_param               SCRIPT_FILENAME $document_root$fastcgi_script_name;
            include                     /etc/nginx/fastcgi.conf;
        }

        try_files                       $uri $uri/ /rampage.php?$args;

    }

# deny access to .htaccess files, if Apaches docment root
# concurs with nginxs one
#
    location ~ /\.ht {
        deny all;
    }
#    location ~ /(config|lib|locale|po|scripts|templates)/ {
#        deny all;
#    }
    location ^~ /rpc/ {
        if (!-e $request_filename){
            rewrite ^(.*)$ /rpc/index.php/$1 break;
        }
    }
#    location ^~ /admin/ {
#        allow 192.168.0.0/16;
#        allow 10.10.0.0/16;
#        deny all;
#    }


# Media: images, icons, video, audio, HTC, archives
#    location ~* \.(?:jpe?g|gif|png|ico|cur|gz|bz2|tbz|tgz|svg|svgz|mp4|ogg|ogv|webm|htc|css|js|pdf|zip|rar|tar|txt|pl|conf)$ {
#        try_files $uri =404;
#        expires 1w;
#        access_log off;
#        add_header Cache-Control "public";
#    }

}


3. Testen, ob es funktioniert
Probiere mit
Rich (BBCode):
sudo nginx -t
ob die Konfig korrekt gelesen werden kann und fehlerfrei ist.
Wenn der Test erfolgreich war kannst Du mit 4. weitermachen!



4. Restart vom nginx Service
Um die Anpassungen zu testen gib einfach als Admin User folgenden Befehl in die Konsole ein:
Rich (BBCode):
synoservicecfg --restart nginx


5.ActiveSync aktivieren
Im Horde WebFrontend muss der Abschnitt für ActiveSync aktiviert werden.
Dazu solltest Du folgenden Abschnitt in der Datei
Rich (BBCode):
/volume1/web/horde/config/conf.php
finden:

Rich (BBCode):
$conf['activesync']['params']['driverconfig'] = 'horde';
$conf['activesync']['storage'] = 'Sql';
$conf['activesync']['emailsync'] = true;
$conf['activesync']['version'] = '14.1';
$conf['activesync']['auth']['type'] = 'basic';
$conf['activesync']['autodiscovery'] = 'full';
$conf['activesync']['outlookdiscovery'] = false;
$conf['activesync']['logging']['type'] = false;
$conf['activesync']['ping']['heartbeatmin'] = 60;
$conf['activesync']['ping']['heartbeatmax'] = 2700;
$conf['activesync']['ping']['heartbeatdefault'] = 480;
$conf['activesync']['ping']['deviceping'] = true;
$conf['activesync']['ping']['waitinterval'] = 15;
$conf['activesync']['enabled'] = true;


6. Logging
Im www.horde.conf habe ich eine Log-Datei eingefügt. Die befindet sich
Rich (BBCode):
/var/log/nginx/horde_user.log
Dort kannst Du die Zugriffe einsehen.

Ich hoffe ich habe nicht vergessen ...
Viel Erfolg und lG aus Wien
PaTheRat
 

synneutestuser

Benutzer
Mitglied seit
29. Jan 2015
Beiträge
7
Punkte für Reaktionen
0
Punkte
0
Hallo PaTheRat

Danke für die Anleitung

Wollte das ActiveSync nur im lokalen WLan durchführen ohne SSL.
Mein Webserver läuft mit Apache22.

Vielen Dank nochmals für die schnelle Antwort.

VG aus Regensburg
 

PaTheRat

Benutzer
Mitglied seit
14. Nov 2016
Beiträge
38
Punkte für Reaktionen
0
Punkte
6
Lieber syneutestuser,

es funktioniert nur über einen SSL Zugang.
Viel Erfolg an andere Interessierte ...
... bei Fragen einfach melden.

lG aus Wien
PaTheRat
 

synneutestuser

Benutzer
Mitglied seit
29. Jan 2015
Beiträge
7
Punkte für Reaktionen
0
Punkte
0
Hallo PaTheRat

Hab ein leichtes Verständnisproblem mit den Zertifikaten.
Bei mir sind im Ordner /usr/local/etc/certificate/WebStation/ keine Zertifikate abgelegt.
Wo bekomme ich ein passendes Zertifikat her??

Möchte Horde nur in meinem lokalen Netzwerk betreiben, somit hab ich auch keine eigene Domain.

Funktioniert dann das ActiveSync überhaupt??

Vielen Dank für deine Hilfe und deine Geduld.


VG syneutestuser
 

PaTheRat

Benutzer
Mitglied seit
14. Nov 2016
Beiträge
38
Punkte für Reaktionen
0
Punkte
6
Lieber synneutestuser,

ich habe mein CACert.org Zertifikat dazu in die Syno eingespielt. Ich benutze dazu ein WildCard Zertifikat, d.h. ich kann jede gewünschte SubDomain mit meinem Zertifikat abbilden.
Es gibt dazu aber auch andere Anbieter --> wurde letztlich ebenfalls in einem Thread diskutiert ...

Eine entsprechende Anleitung habe ich gegenständlich nicht zur Hand. Ich denke aber, dass du im Forum fündig wirst!

Danach habe ich exemplarisch eine webpage eingerichtet. Damit wird eben im Ordner /usr/local/etc/certificate/WebStation/ ein solches Zertifikat (eine Kombination von meinem Zertifikat und dem Syno-eigenen) angelegt. Erst danach geht es wirklich weiter.
Ich denke, dass die Verwendung von ActiveSync nur über ein Zertifikat funktioniert. Ob es nur lokal läuft kann ich leider nicht sagen. Aber ich denke, dass das ebenfalls nicht geht!

Solltest Du etwas anderes in Erfahrung bringen, wäre ich und auch andere ebenfalls daran interessiert.
lG aus Wien
PaTheRat
 

synneutestuser

Benutzer
Mitglied seit
29. Jan 2015
Beiträge
7
Punkte für Reaktionen
0
Punkte
0
Hallo PaTheRat

Hab jetzt das AktiveSync im lokalen Netzwerk ohne SSL und ohne Zertifikat zum laufen gebracht.

Als Admin in Horde anmelden, in den ActiveSync Einstellungen als Authentication HTTP Basic einstellen.
Dann auf der Diskstation im Verzeichnis Web eine .htaccess Datei anlegen mit nachfolgendem Inhalt.

RewriteEngine on

RewriteRule ^Microsoft-Server-ActiveSync /horde/rpc.php [PT,L,QSA]

und schon hats funktioniert.

VG aus Regensburg
 

PaTheRat

Benutzer
Mitglied seit
14. Nov 2016
Beiträge
38
Punkte für Reaktionen
0
Punkte
6
Hallo synneutestuser,

Danke für Deine Info ... es freut mich, dass Du eine Lösung für Dich gefunden hast.

lG aus Wien
PaThe.Rat
 
Status
Für weitere Antworten geschlossen.
 

Kaffeautomat

Wenn du das Forum hilfreich findest oder uns unterstützen möchtest, dann gib uns doch einfach einen Kaffee aus.

Als Dankeschön schalten wir deinen Account werbefrei.

:coffee:

Hier gehts zum Kaffeeautomat