Benutzer-Werkzeuge

Webseiten-Werkzeuge


tachtler:horde5_-_mnemo

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen RevisionVorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
Nächste ÜberarbeitungBeide Seiten der Revision
tachtler:horde5_-_mnemo [2016/05/04 13:08] klaustachtler:horde5_-_mnemo [2016/05/04 14:27] klaus
Zeile 323: Zeile 323:
 </code> </code>
  
 +===== Konfiguration: Webserver =====
 +
 +Nachfolgende Konfigurationen sind durchzuführen um den [[http://httpd.apache.org/|Apache HTTP Server]] in Bezug auf [[http://www.horde.org|Horde]] Groupware **Turba** anzupassen.
 +
 +^ Quelle                        ^ Link                                                                       ^
 +| Horde - Mnemo - Konfiguration | [[http://www.horde.org/apps/mnemo/docs/INSTALL]]                           |
 +
 +==== /etc/httpd/conf.d/php-horde-mnemo.conf ====
 +
 +:!: **WICHTIG** - Die Änderungen sind **__nicht__** in der Konfigurationsdatei
 +  * ''/etc/httpd/conf.d/php-horde-mnemo.conf''
 +durchzuführen, **__sondern__** es soll ein 
 +  * eigener **VHOST** für [[http://www.horde.org|Horde]] Groupware
 +erstellt werden!
 +
 +:!: **HINWEIS** - Alle Inhalte in der Konfigurationsdatei
 +  * ''/etc/httpd/conf.d/php-horde-mnemo.conf''
 +sollten **__auskommentiert__** werden, wie nachfolgend dargestellt:
 +<code apache>
 +# Tachtler - DISABLED -
 +#<DirectoryMatch /usr/share/horde/mnemo/(config|locale|templates)>
 +#     Deny from all
 +#</DirectoryMatch>
 +</code>
 +
 +Anschließend, die Ergänzungen in der Konfigurationsdatei:
 +  * ''/etc/httpd/conf.d/php-horde-horde.conf''
 +<code apache>
 +#
 +# horde.tachtler.net (Horde Groupware)
 +#
 +<VirtualHost *:80>
 +        ServerAdmin webmaster@tachtler.net
 +        ServerName horde.tachtler.net
 +        ServerAlias www.horde.tachtler.net
 +        ServerPath /
 +
 +        AddType application/x-httpd-php .php
 +
 +        Alias /horde /usr/share/horde
 +
 +        Alias /Microsoft-Server-ActiveSync /usr/share/horde/rpc.php
 +
 +        Alias /autodiscover/autodiscover.xml /usr/share/horde/rpc.php
 +        Alias /Autodiscover/Autodiscover.xml /usr/share/horde/rpc.php
 +        Alias /AutoDiscover/AutoDiscover.xml /usr/share/horde/rpc.php
 +
 +        # Exclude file from password protection
 +        SetEnvIf Request_URI "(rpc.php)$"  allow
 +        SetEnvIf Request_URI "(rpc.php/.*)$"  allow
 +        SetEnvIf Request_URI "(rpc.php/turba/master-benutzer@tachtler.net/)$"  allow
 +        SetEnvIf Request_URI "(sapi/profile/client)$"  allow
 +        SetEnvIf Request_URI "(devinfo)$"  allow
 +        SetEnvIf Request_URI "(Microsoft-Server-ActiveSync)$"  allow
 +
 +        DocumentRoot "/usr/share/horde"
 +        <Directory "/usr/share/horde">
 +                Options All
 +                AllowOverride All
 +                <RequireAny>
 +                        Require env allow
 +                        <RequireAll>
 +                                # Tachtler - LDAP
 +                                AuthType Basic
 +                                AuthName "Tachtler's Horde (horde.tachtler.net)"
 +                                AuthBasicProvider ldap
 +                                AuthLDAPURL "ldaps://ldap.tachtler.net:636/ou=People,dc=tachtler,dc=net?uid"
 +                                AuthLDAPBindDN "cn=Ersatzauthentifizierer,dc=tachtler,dc=net"
 +                                AuthLDAPBindPassword "geheim"
 +                                # Tachtler (enable for LDAP access)
 +                                Require ldap-user benutzer
 +                        </RequireAll>
 +                </RequireAny>
 +                
 +                # ActiveSync
 +                <IfModule rewrite_module>
 +                        RewriteEngine On
 +                        RewriteRule ^/Microsoft-Server-ActiveSync /rpc.php [PT,L,QSA]
 +                        RewriteRule .* - [E=HTTP_MS_ASPROTOCOLVERSION:%{HTTP:Ms-Asprotocolversion}]
 +                        RewriteRule .* - [E=HTTP_X_MS_POLICYKEY:%{HTTP:X-Ms-Policykey}]
 +                        RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
 +                </IfModule>
 +
 +                <IfModule rewrite_module>
 +                        RewriteEngine On
 +                        RewriteBase   /horde/
 +                        RewriteCond   %{REQUEST_FILENAME}  !-d
 +                        RewriteCond   %{REQUEST_FILENAME}  !-f
 +                        RewriteRule ^(.*)$ rampage.php [QSA,L]
 +                </IfModule>
 +        </Directory>
 +
 +        # Content rewrite rules from php-horde-content.conf
 +        <Directory "/usr/share/horde/content">
 +                <IfModule rewrite_module>
 +                        RewriteEngine On
 +                        RewriteCond   %{REQUEST_FILENAME}  !-d
 +                        RewriteCond   %{REQUEST_FILENAME}  !-f
 +                        RewriteRule ^(.*)$ index.php [QSA,L]
 +                </IfModule>
 +        </Directory>
 +
 +        # Deny access to files that are not served directly by the webserver
 +        <DirectoryMatch "/usr/share/horde/(config|lib|locale|scripts|templates)">
 +                Require all denied
 +        </DirectoryMatch>
 +
 +        # Deny access to files that are not served directly by the webserver for imp
 +        <DirectoryMatch "/usr/share/horde/imp/(config|lib|locale|templates)">
 +                Require all denied
 +        </DirectoryMatch
 +        
 +        # Deny access to files that are not served directly by the webserver for turba
 +        <DirectoryMatch "/usr/share/horde/turba/(config|lib|locale|scripts|templates)">
 +                Require all denied
 +        </DirectoryMatch>
 +        
 +        # Deny access to files that are not served directly by the webserver for kronolith
 +        <DirectoryMatch "/usr/share/horde/kronolith/(config|lib|locale|templates)">
 +                Require all denied
 +        </DirectoryMatch>
 +
 +        <Directory "/usr/share/horde/kronolith/feed/">
 +                <IfModule rewrite_module>
 +                        RewriteEngine On
 +                        RewriteCond   %{REQUEST_FILENAME}  !-d
 +                        RewriteCond   %{REQUEST_FILENAME}  !-f
 +                        RewriteRule   ^(.*)$ index.php?c=$1 [QSA,L]
 +                </IfModule>
 +        </Directory>
 +
 +        # Deny access to files that are not served directly by the webserver for nag
 +        <DirectoryMatch "/usr/share/horde/nag/(config|lib|locale|templates)">
 +                Require all denied
 +        </DirectoryMatch>
 +
 +        # Deny access to files that are not served directly by the webserver for mnemo
 +        <DirectoryMatch "/usr/share/horde/mnemo/(config|locale|templates)">
 +                Require all denied
 +        </DirectoryMatch>
 +
 +        <Directory "/usr/share/horde/rpc">
 +                <IfModule rewrite_module>
 +                        RewriteEngine On
 +                        RewriteCond   %{REQUEST_FILENAME}  !-d
 +                        RewriteCond   %{REQUEST_FILENAME}  !-f
 +                        RewriteRule   ^(.*)$ index.php/$1 [QSA,L]
 +                </IfModule>
 +        </Directory>
 +
 +        <Files "test.php">
 +                Options -Indexes +FollowSymLinks
 +                AllowOverride None
 +                # Tachtler - LDAP
 +                AuthType Basic
 +                AuthName "Tachtler's Horde - Test (horde.tachtler.net)"
 +                AuthBasicProvider ldap
 +                AuthLDAPURL "ldaps://ldap.tachtler.net:636/dc=tachtler,dc=net?uid"
 +                AuthLDAPBindDN "cn=Ersatzauthentifizierer,dc=tachtler,dc=net"
 +                AuthLDAPBindPassword "geheim"
 +                <RequireAll>
 +                        # Tachtler (enable for LDAP access)
 +                        Require ldap-user master-benutzer
 +                </RequireAll>
 +        </Files>
 +        
 +        <IfModule deflate_module>
 +                AddOutputFilterByType DEFLATE text/html text/plain text/xml text/css text/javascript
 +                AddOutputFilterByType DEFLATE application/javascript application/x-javascript
 +                <Location />
 +                        <IfModule setenvif_module>
 +                                SetOutputFilter DEFLATE
 +                                BrowserMatch ^Mozilla/4 gzip-only-text/html
 +                                BrowserMatch ^Mozilla/4\.0[678] no-gzip
 +                                BrowserMatch \bMSIE !no-gzip !gzip-only-text/html
 +                                SetEnvIfNoCase Request_URI \.(?:gif|jpe?g|png)$ no-gzip dont-vary
 +                        </IfModule>
 +                        <IfModule headers_module>
 +                                Header append Vary User-Agent env=!dont-vary
 +                        </IfModule>
 +                </Location>
 +        </IfModule>
 +
 +        DirectoryIndex index.php
 +
 +        ErrorLog logs/horde_error.log
 +        SetEnvIf X-Forwarded-For "^.*\..*\..*\..*" forwarded
 +        CustomLog logs/horde_access.log combined_deflate env=!forwarded
 +        CustomLog logs/horde_access.log combined_deflate_proxypass env=forwarded
 +</code>
 +
 +**__Erklärung der Ergänzungen:__**
 +
 +  * <code apache>        # Deny access to files that are not served directly by the webserver for mnemo
 +        <DirectoryMatch "/usr/share/horde/mnemo/(config|locale|templates)">
 +                Require all denied
 +        </DirectoryMatch>
 +</code>
 +
 +Ergänzungen im **VHOST** für [[http://www.horde.org|Horde]] Groupware, um den Zugriff auf bestimmte Bereiche einzuschränken.
 +
 +==== Neustart ====
 +
 +Bevor **__weitere__** **Konfigurationsschritte** erfolgen, sollte einem **Neustart** nichts im Wege stehen, welcher mit nachfolgendem Befehl durchgeführt werden kann:
 +<code>
 +# systemctl restart httpd.service
 +</code>
 +
 +:!: **HINWEIS** - **Es erfolgen __keine__ weiteren Ausgaben, wenn der Neustart erfolgreich war !**
 +
 +==== Apache Webserver Überprüfung ====
 +
 +Ob der [[http://httpd.apache.org|Apache HTTP Server]], sprich der ''httpd''-Dienst/Deamon auch tatsächlich als Hintergrundprozess läuft, kann mit nachfolgendem Befehl überprüft werden:
 +<code>
 +# systemctl status httpd.service
 +httpd.service - The Apache HTTP Server
 +   Loaded: loaded (/usr/lib/systemd/system/httpd.service; enabled)
 +   Active: active (running) since Fri 2014-11-21 10:26:51 CET; 4s ago
 +  Process: 10513 ExecStop=/bin/kill -WINCH ${MAINPID} (code=exited, status=0/SUCCESS)
 + Main PID: 10525 (httpd)
 +   Status: "Processing requests..."
 +   CGroup: /system.slice/httpd.service
 +           ├─10525 /usr/sbin/httpd -DFOREGROUND
 +           ├─10526 /usr/sbin/httpd -DFOREGROUND
 +           ├─10527 /usr/sbin/httpd -DFOREGROUND
 +           ├─10528 /usr/sbin/httpd -DFOREGROUND
 +           ├─10529 /usr/sbin/httpd -DFOREGROUND
 +           └─10530 /usr/sbin/httpd -DFOREGROUND
 +
 +Nov 21 10:26:51 rechner90.idmz.tachtler.net systemd[1]: Started The Apache HTT...
 +Hint: Some lines were ellipsized, use -l to show in full.
 +</code>
 +
 +bzw.
 +
 +<code>
 +# ps auxwf | grep httpd
 +root     10538  0.0  0.0 112640   924 pts/0    S+   10:27   0:00                      \_ grep --color=auto httpd
 +root     10525  0.0  0.1 213700  4776 ?        Ss   10:26   0:00 /usr/sbin/httpd -DFOREGROUND
 +apache   10526  0.0  0.0 213700  2868 ?        S    10:26   0:00  \_ /usr/sbin/httpd -DFOREGROUND
 +apache   10527  0.0  0.0 213700  2868 ?        S    10:26   0:00  \_ /usr/sbin/httpd -DFOREGROUND
 +apache   10528  0.0  0.0 213700  2868 ?        S    10:26   0:00  \_ /usr/sbin/httpd -DFOREGROUND
 +apache   10529  0.0  0.0 213700  2868 ?        S    10:26   0:00  \_ /usr/sbin/httpd -DFOREGROUND
 +apache   10530  0.0  0.0 213700  2868 ?        S    10:26   0:00  \_ /usr/sbin/httpd -DFOREGROUND
 +</code>
 +
 +Eine weitere Überprüfung, ob der **erste Start** erfolgreich war, kann durch Einsicht der LOG-Dateien
 +  * **''/var/log/httpd/error_log''**
 +durchgeführt werden.
 +
 +Ausgabe der LOG-Datei **''/var/log/httpd/error''** mit nachfolgendem Befehl, die Ausgabe sollte wie nachfolgend dargestellt aussehen:
 +<code>
 +# cat /var/log/httpd/error_log
 +[Fri Nov 21 10:26:51.978953 2014] [suexec:notice] [pid 10525] AH01232: suEXEC mechanism enabled (wrapper: /usr/sbin/suexec)
 +[Fri Nov 21 10:26:51.995381 2014] [auth_digest:notice] [pid 10525] AH01757: generating secret for digest authentication ...
 +[Fri Nov 21 10:26:51.997618 2014] [lbmethod_heartbeat:notice] [pid 10525] AH02282: No slotmem from mod_heartmonitor
 +[Fri Nov 21 10:26:52.004882 2014] [mpm_prefork:notice] [pid 10525] AH00163: Apache/2.4.6 (CentOS) configured -- resuming normal operations
 +[Fri Nov 21 10:26:52.004970 2014] [core:notice] [pid 10525] AH00094: Command line: '/usr/sbin/httpd -D FOREGROUND' 
 +</code>
 +
 +===== Konfiguration: Horde5 - Mnemo =====
 +
 +Die **Basis**-Konfiguration des [[http://www.horde.org|Horde]] Framework kann komfortabel über den Aufruf der Web-Anwendung erfolgen. Nachfolgende Schritte zeigen die **Grundlegende Einrichtung.**
 +
 +==== Mnemo - Schritt 1 ====
 +
 +Aufruf der Web-Anwendung über den Browser und den definierten **virtuellen Host**, hier: 
 +  * [[http://www.horde.tachtler.net|http://www.horde.tachtler.net]]
 +
 +{{:tachtler:horde:horde5-erster_aufruf-mnemo.png|Horde5 - Erster Aufruf - Mnemo}}
 +
 +==== Mnemo - Schritt 2 ====
 +
 +Anschließend muss mit der **Mauszeiger** über das **[Zahnrad-Symbol] (Einstellungen)** bewegt werden, woraufhin sich nachfolgende Menüpunkte **beim darüber bewegen des [Mauszeigers]** öffnen sollten:
 +  * **Administration > Konfiguration**
 +wie nachfolgende Bildschirmkopie zeigt:
 +
 +{{:tachtler:horde:horde5-einstellungen-administration-konfiguration-mnemo.png|Horde5 - Einstellungen - Administration - Konfiguration}}
 +
 +==== Mnemo - Schritt 3 ====
 +
 +Nachdem nachfolgender Bildschirm zur Anzeige gekommen sein sollte:
 +
 +{{:tachtler:horde:horde5-mnemo-alle_db_schemas_aktualisieren.png|Horde5 - Einstellungen - Administration - Konfiguration - Notizen (mnemo) 4.x.x}}
 +
 +Zuerst sollte nun das DB-Schema aktualisiert werden, was durch anklicken der Schaltfläche **[Alle DB-Schemas aktualisieren]** mit der **[linken Maustaste]** erfolgen kann:
 +
 +{{:tachtler:horde:horde5-mnemo-alle_db_schemas_aktualisieren_fertig.png|Horde5 - Einstellungen - Administration - Konfiguration - Notizen (mnemo) 4.x.x - Alle DB-Schemas aktualisieren - fertig}}
 +
 +==== Mnemo - Schritt 4 ====
 +
 +Anschließend sollte nun eine **erste Konfiguration** erzeugt werden, was durch anklicken der Schaltfläche **[Alle Konfigurationen aktualisieren]** mit der **[linken Maustaste]** erfolgen kann:
 +
 +{{:tachtler:horde:horde5-mnemo-alle_konfigurationen_aktualisieren-fertig.png|Horde5 - Einstellungen - Administration - Konfiguration - Notizen (mnemo) 4.x.x - Alle Konfigurationen aktualisieren - fertig}}
 +
 +==== Mnemo - Schritt 5 ====
 +
 +Nachdem nachfolgender Bildschirm zur Anzeige gekommen sein sollte:
 +
 +Horde5 - Einstellungen - Administration - Konfiguration - Notizen (mnemo) 4.x.x
 +horde5-nag-konfiguration.png
 +
 +Sollte hier mit der **[linken Maustaste]** der 
 +  * **[Link: Notizen (mnemo) 4.x.x]**
 +angeklickt werden.
 +
 +Anschließend können die Konfigurationen in den einzelnen Punkten durchgeführt werden:
 +
 +^ ???                     ^^^
 +^ Einstellung                                 ^ Standard           ^ Wert                ^
 +| ''''                |                    |                     |
 +
 +:!: **HINWEIS** - **Das erzeugen einer Aufgaben-Konfiguration ist __NICHT__ erforderlich, da hier die Standardwerte genutzt werden !**
 +
 +Ab sofort können Notizen genutzt werden!
  
  
 :!: FIXME - **Hier geht es weiter... / To be continued...** :!: FIXME - **Hier geht es weiter... / To be continued...**
  
tachtler/horde5_-_mnemo.txt · Zuletzt geändert: 2016/05/04 14:37 von klaus