Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
Beide Seiten der vorigen Revision Vorhergehende Überarbeitung Nächste Überarbeitung | Vorhergehende Überarbeitung | ||
fh-complete:apache [2016/09/01 15:26] kamel |
— (aktuell) | ||
---|---|---|---|
Zeile 1: | Zeile 1: | ||
- | [[fh-complete:server|zurück zur Übersicht]] | ||
- | ====== Apache ====== | ||
- | ===== SSL Konfiguration ===== | ||
- | Zum Aktivieren der Verschlüsselung muss ein Zertifikat und der dazupassende Private Key vorhanden sein. | ||
- | <code> | ||
- | fhcomplete.crt | ||
- | fhcomplete.key | ||
- | </code> | ||
- | |||
- | Zuerst muss das SSL Modul im Apache aktiviert werden | ||
- | <code> | ||
- | a2enmod ssl | ||
- | </code> | ||
- | |||
- | Danach wird unter /etc/apache2/sites-available/ die default Konfiguration kopiert (zb default-ssl) und angepasst: | ||
- | <code> | ||
- | <VirtualHost *:443> ### hier muss :443 stehen statt :80 | ||
- | ServerAdmin webmaster@localhost | ||
- | |||
- | ### Server Name muss hinzugefuegt werden | ||
- | ServerName cis.fhcomplete.org | ||
- | |||
- | |||
- | |||
- | ### Hier wird SSL aktiviert und Pfad zu den Zertifikaten angeben | ||
- | SSLEngine on | ||
- | SSLCertificateFile /path/to/certificate/fhcomplete.crt | ||
- | SSLCertificateKeyFile /path/to/certificate/fhcomplete.key | ||
- | |||
- | DocumentRoot /var/www/cis/htdocs/ | ||
- | <Directory /> | ||
- | Options FollowSymLinks | ||
- | AllowOverride None | ||
- | </Directory> | ||
- | <Directory /var/www/cis/htdocs/> | ||
- | Options Indexes FollowSymLinks MultiViews | ||
- | AllowOverride AuthConfig Limit | ||
- | Order allow,deny | ||
- | allow from all | ||
- | </Directory> | ||
- | ... | ||
- | </VirtualHost> | ||
- | </code> | ||
- | |||
- | Danach muss die Seite aktiviert und apache neu gestartet werden: | ||
- | <code> | ||
- | a2ensite default-ssl | ||
- | /etc/init.d/apache2 restart | ||
- | </code> | ||
- | |||
- | ==== Automatische Umleitung von http auf https ==== | ||
- | |||
- | Um HTTP Zugriff auf HTTPS umzuleiten muss ein Redirect Eintrag hinzugefügt werden: | ||
- | |||
- | /etc/apache2/sites-enabled/000-default | ||
- | <code> | ||
- | <VirtualHost *:80> | ||
- | ServerAdmin webmaster@localhost | ||
- | DocumentRoot /var/www | ||
- | Redirect permanent / https://cis.fhcomplete.org/ | ||
- | ... | ||
- | </VirtualHost> | ||
- | </code> | ||
- | |||
- | ==== Sonstiges ==== | ||
- | |||
- | In der Datei /etc/apache2/ports.conf muss der Port 443 aktivert sein. In der Regel ist dies aber bereits der Fall | ||
- | |||
- | === Prüfen von Zertifikaten === | ||
- | Anzeigen von Zertifikatsinformationen: | ||
- | <code> | ||
- | openssl x509 -text -in fhcomplete.crt | ||
- | </code> | ||
- | |||
- | |||
- | |||
- | === Testumgebung einrichten === | ||
- | == Erstellen des Zertifikats == | ||
- | Für Testumgebungen kann mit folgendem Befehl ein selbst signiertes Zertifikat erstellt werden: | ||
- | <code> | ||
- | openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout fhcomplete.key -out fhcomplete.crt | ||
- | </code> | ||
- | |||
- | Damit die Dokumentenerstellung funktioniert muss das Zertifikat im Zertifikatsspeicher des Betriebssystems abgelegt werden damit dem Zertifikat vertraut wird. | ||
- | Dazu wird das Zertifikat nach /usr/local/share/ca-certificates kopiert | ||
- | <code> | ||
- | cp fhcomplete.crt /usr/local/share/ca-certificates/ | ||
- | </code> | ||
- | |||
- | Danach muss der Zertifikatsspeicher aktualisiert werden: | ||
- | <code> | ||
- | update-ca-certificates | ||
- | </code> | ||
- | |||
- | == Server und Client auf selben Rechner == | ||
- | Wenn Server und Client am selben Rechner laufen muss im Apache ein eigener Port eingerichtet werden damit die Dokumentenerstellung korrekt funktioniert. | ||
- | |||
- | Die Daten für die Dokumentenerstellung werden dann über einen separaten Port geholt. | ||
- | Dazu muss der zusätzliche Port in /etc/apache2/ports.conf aktiviert werden: | ||
- | <code> | ||
- | Listen 5555 | ||
- | </code> | ||
- | |||
- | Unter /etc/apache2/sites-available muss ein eigener Virtulhost für diesen Port angelegt werden und AllowOverride auf None gesetzt werden: | ||
- | <code> | ||
- | <VirtualHost *:5555> | ||
- | .... | ||
- | <Directory /fhcomplete/rdf> | ||
- | Options Indexes FollowSymLinks MultiViews | ||
- | AllowOverride None | ||
- | Order deny,allow | ||
- | Deny from all | ||
- | Allow from 127.0.0.1 | ||
- | </Directory> | ||
- | .... | ||
- | </VirtualHost> | ||
- | </code> | ||
- | |||
- | Diese Konfiguration sollte nur für Testumgebungen verwendet werden!!! | ||
- | Im der cis.config.inc.php und vilesci.config.inc.php muss dann der XML_ROOT auf diesen Port zeigen. | ||
- | zB define('XML_ROOT','https://vilesci.fhcomplete.org:5555/rdf/'); |