[[fhc:server|zurück zur Übersicht]]
====== Apache ======
===== SSL Konfiguration =====
Zum Aktivieren der Verschlüsselung muss ein Zertifikat und der dazupassende Private Key vorhanden sein.
fhcomplete.crt
fhcomplete.key
Zuerst muss das SSL Modul im Apache aktiviert werden
a2enmod ssl
Danach wird unter /etc/apache2/sites-available/ die default Konfiguration kopiert (zb default-ssl) und angepasst:
### 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/
Options FollowSymLinks
AllowOverride None
Options Indexes FollowSymLinks MultiViews
AllowOverride AuthConfig Limit
Order allow,deny
allow from all
...
Danach muss die Seite aktiviert und apache neu gestartet werden:
a2ensite default-ssl
/etc/init.d/apache2 restart
==== LDAP Modul aktivieren ====
Das LDAP Modul muss im Apache aktiviert werden damit eine LDAP Authenitifzierung möglich ist:
a2enmod authnz_ldap
==== 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
ServerAdmin webmaster@localhost
DocumentRoot /var/www
Redirect permanent / https://cis.fhcomplete.org/
...
==== 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:
openssl x509 -text -in fhcomplete.crt
=== Testumgebung einrichten ===
== Erstellen des Zertifikats ==
Für Testumgebungen kann mit folgendem Befehl ein selbst signiertes Zertifikat erstellt werden:
openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout fhcomplete.key -out fhcomplete.crt
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
cp fhcomplete.crt /usr/local/share/ca-certificates/
Danach muss der Zertifikatsspeicher aktualisiert werden:
update-ca-certificates
== 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:
Listen 5555
Unter /etc/apache2/sites-available muss ein eigener Virtulhost für diesen Port angelegt werden und AllowOverride auf None gesetzt werden:
....
Options Indexes FollowSymLinks MultiViews
AllowOverride None
Order deny,allow
Deny from all
Allow from 127.0.0.1
....
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/');