{{tag> owncloud}} ====== Apache SSL-Verschlüsselung aktivieren ====== zur -> [[/dokumentation:addons:owncloud:start|Übersicht von OwnCloud]] Siehe z.B. : http://wiki.ubuntuusers.de/Apache/SSL ===== Zertifikat ===== Zertifikat erstellen: # mkdir -p /etc/apache2/ssl # openssl req -new -x509 -days 3650 -nodes -out /etc/apache2/ssl/apache.pem -keyout /etc/apache2/ssl/apache.pem -> Country: DE -> State: BW -> Locality: Stuttgart -> Organization: OWNCLOUD -> Organizational Unit Name: Chief -> Common Name: owncloud.example.org Achtung: Hostname muss zum FQDN passen! -> Email Address: user@example.org Zertifikat verlinken und gegen Zugriff schützen: # ln -sf /etc/apache2/ssl/apache.pem /etc/apache2/ssl/`/usr/bin/openssl x509 -noout -hash < /etc/apache2/ssl/apache.pem`.0 # chmod 600 /etc/apache2/ssl/apache.pem Testen: Zertifikat ansehen # openssl x509 -in /etc/apache2/ssl/apache.pem -text # openssl x509 -noout -in /etc/apache2/ssl/apache.pem -fingerprint -sha1 ===== Apache für SSL konfigurieren ===== In vorhandene /etc/apache2/ports.conf eintragen: Listen 443 # a2enmod ssl # service apache2 force-reload Neu anlegen: /etc/apache2/sites-available/ssl SSLEngine On SSLCertificateFile /etc/apache2/ssl/apache.pem DocumentRoot /var/www/owncloud # a2ensite ssl # service apache2 force-reload Kommt bei a2ensite ssl eine Fehlermeldung, half es, in /etc/apache2/sites-available die Datei ssl nach ssl.conf umzubenennen. Testen mit Firefox: https://owncloud.example.org (sollte nach Zertifikatsannahme tun) ===== SSL-Port evtl. Umstellen===== Aus Sicherheitsgründen ist es evtl. sinnvoll einen Anderen Port als den für https üblichen (443) zu verwenden. Z.B. 1234: Editiere: /etc/apache2/ports.conf (443 --> 1234, evtl. mehrmals) # service apache force-reload Editiere /etc/apache2/sites-available/ssl (443 --> 1234) # service apache force-reload Testen mit Firefox: https://owncloud.example.org:1234 (sollte nach Zertifikatsannahme tun) ===== SSL erzwingen mit Umleitung auf SSL-Port ===== Damit jeder User nur verschlüsselt mit dem Owncloud Server kommuniziert, wird eine angeforderte HTTP-Verbindung auf den Port 1234 mit HTTPS umgebogen (rewrite): Siehe z.B. http://wiki.ubuntuusers.de/Apache/mod_rewrite # a2enmod rewrite # mkdir -p /var/run/apache2 # chown -R www-data /var/run/apache2 # service apache2 force-reload Rewrite Rules in /etc/apache2/sites-available/default eintragen(Innerhalb ): RewriteEngine on RewriteRule ^/(.*)$ https://%{SERVER_NAME}$1:1234 [L,R] RewriteLog "/var/log/apache2/rewrite.log" RewriteLogLevel 2 Testen im Browser: http://owncloud.example.org muss nach https://owncloud.example.org:1234 umgeschrieben werden.