X-Git-Url: http://wagnertech.de/git?a=blobdiff_plain;f=doc%2Fhtml%2Fch02s06.html;h=bf355e738f53ad6ff618d8b55e11104ea606b070;hb=45c3836ab6e9f3f8e4be45cdb2ba3baadf5e5088;hp=b38812d08de5a395282c67c150fc5fc81624e432;hpb=e449cab205e224f7e2cc3cdd37338e3716115979;p=kivitendo-erp.git diff --git a/doc/html/ch02s06.html b/doc/html/ch02s06.html index b38812d08..bf355e738 100644 --- a/doc/html/ch02s06.html +++ b/doc/html/ch02s06.html @@ -1,6 +1,6 @@ - 2.6. Webserver-Konfiguration

2.6. Webserver-Konfiguration

2.6.1. Grundkonfiguration mittels CGI

[Anmerkung]Anmerkung

Für einen deutlichen Performanceschub sorgt die Ausführung + 2.6. Webserver-Konfiguration

2.6. Webserver-Konfiguration

2.6.1. Grundkonfiguration mittels CGI

[Anmerkung]Anmerkung

Für einen deutlichen Performanceschub sorgt die Ausführung mittels FastCGI/FCGI. Die Einrichtung wird ausführlich im Abschnitt Konfiguration für FastCGI/FCGI beschrieben.

Der Zugriff auf das Programmverzeichnis muss in der Apache Webserverkonfigurationsdatei httpd.conf eingestellt @@ -15,8 +15,7 @@ Alias /kivitendo-erp/ /var/www/kivitendo-erp/ </Directory> <Directory /var/www/kivitendo-erp/users> - Order Deny,Allow - Deny from All + Require all granted </Directory>

Ersetzen Sie dabei die Pfade durch diejenigen, in die Sie vorher das kivitendo-Archiv entpacket haben.

[Anmerkung]Anmerkung

Vor den einzelnen Optionen muss bei einigen Distributionen ein Plus ‘+’ gesetzt werden.

Bei einigen Distribution (Ubuntu ab 14.04, Debian ab 8.2) muss @@ -42,9 +41,7 @@ Alias /kivitendo-erp/ /var/www/kivitendo-erp/ führt dazu dass ein kivitendo Aufruf der Kernmasken mittlerweile deutlich länger dauert als früher, und dass davon 90% für das Laden der Module verwendet wird.

Mit FastCGI werden nun die Module einmal geladen, und danach - wird nur die eigentliche Programmlogik ausgeführt.

2.6.2.3. Getestete Kombinationen aus Webservern und Plugin

Folgende Kombinationen sind getestet:

  • Apache 2.2.11 (Ubuntu) und mod_fcgid.

  • Apache 2.2.11 / 2.2.22 (Ubuntu) und mod_fastcgi.

  • Apache 2.4.7 (Ubuntu 14.04.2 LTS) und mod_fcgid.

Dabei wird mod_fcgid empfohlen, weil mod_fastcgi seit geraumer - Zeit nicht mehr weiter entwickelt wird. Im Folgenden wird auf - mod_fastcgi nicht mehr explizit eingegangen.

Als Perl Backend wird das Modul FCGI.pm + wird nur die eigentliche Programmlogik ausgeführt.

2.6.2.3. Getestete Kombinationen aus Webservern und Plugin

Folgende Kombinationen sind getestet:

  • Apache 2.4.7 (Ubuntu 14.04.2 LTS) und mod_fcgid.

  • Apache 2.4.18 (Ubuntu 16.04 LTS) und mod_fcgid

  • Apache 2.4.29 (Ubuntu 18.04 LTS) und mod_fcgid

Als Perl Backend wird das Modul FCGI.pm verwendet.

[Warnung]Warnung

FCGI-Versionen ab 0.69 und bis zu 0.71 inklusive sind extrem strict in der Behandlung von Unicode, und verweigern bestimmte Eingaben von kivitendo. Falls es Probleme mit Umlauten in Ihrer @@ -72,12 +69,14 @@ Alias /url/for/kivitendo-erp/ /path/to/kivitendo-erp/ </Directory> <DirectoryMatch /path/to/kivitendo-erp/users> -Require all granted +Require all denied </DirectoryMatch>

[Warnung]Warnung

Wer einen älteren Apache als Version 2.4 im Einsatz hat, muss entsprechend die Syntax der Directorydirektiven verändert. Statt

Require all granted

muß man Folgendes einstellen:

   Order Allow,Deny
-  Allow from All 

Seit mod_fcgid-Version 2.3.6 gelten sehr kleine Grenzen für + Allow from All

und statt

Require all denied

muss stehen:

+  Order Deny,Allow
+  Deny from All 

Seit mod_fcgid-Version 2.3.6 gelten sehr kleine Grenzen für die maximale Größe eines Requests. Diese sollte wie folgt hochgesetzt werden:

FcgidMaxRequestLen 10485760

Das Ganze sollte dann so aussehen:

AddHandler fcgid-script .fpl
 AliasMatch ^/url/for/kivitendo-erp/[^/]+\.pl /path/to/kivitendo-erp/dispatcher.fpl
@@ -87,13 +86,11 @@ FcgidMaxRequestLen 10485760
 <Directory /path/to/kivitendo-erp>
   AllowOverride All
   Options ExecCGI Includes FollowSymlinks
-  Order Allow,Deny
-  Allow from All
+  Require all granted
 </Directory>
 
 <DirectoryMatch /path/to/kivitendo-erp/users>
-  Order Deny,Allow
-  Deny from All
+Require all denied
 </DirectoryMatch>

Hierdurch wird nur ein zentraler Dispatcher gestartet. Alle Zugriffe auf die einzelnen Scripte werden auf diesen umgeleitet. Dadurch, dass zur Laufzeit öfter mal Scripte neu geladen werden, @@ -107,10 +104,16 @@ AliasMatch ^/url/for/kivitendo-erp-fcgid/[^/]+\.pl /path/to/kivitendo-erp/dispat Alias /url/for/kivitendo-erp-fcgid/ /path/to/kivitendo-erp/

Dann ist unter /url/for/kivitendo-erp/ die normale Version erreichbar, und unter /url/for/kivitendo-erp-fcgid/ die - FastCGI-Version.

2.6.3. Weitergehende Konfiguration

Für einen deutlichen Sicherheitsmehrwert sorgt die Ausführung + FastCGI-Version.

2.6.3. Authentifizierung mittels HTTP Basic Authentication

+ Kivitendo unterstützt, dass Benutzerauthentifizierung über den Webserver mittels des »Basic«-HTTP-Authentifizierungs-Schema erfolgt + (siehe RFC 7617). Dazu ist es aber nötig, dass der dabei vom Client + mitgeschickte Header Authorization vom Webserver an Kivitendo über die Umgebungsvariable + HTTP_AUTHORIZATION weitergegeben wird, was standardmäßig nicht der Fall ist. Für Apache kann dies über die + folgende Konfigurationsoption aktiviert werden: +

SetEnvIf Authorization "(.*)" HTTP_AUTHORIZATION=$1

2.6.4. Weitergehende Konfiguration

Für einen deutlichen Sicherheitsmehrwert sorgt die Ausführung von kivitendo nur über https-verschlüsselten Verbindungen, sowie weiteren Zusatzmassnahmen, wie beispielsweise Basic Authenticate. Die Konfigurationsmöglichkeiten sprengen allerdings den Rahmen dieser Anleitung, hier ein Hinweis auf einen entsprechenden Foreneintrag - (Stand Sept. 2015) -

\ No newline at end of file + (Stand Sept. 2015) und einen aktuellen (Stand Mai 2017) + SSL-Konfigurations-Generator.

\ No newline at end of file