zur → Übersicht von OwnCloud
Siehe z.B. : http://wiki.ubuntuusers.de/Apache/SSL
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
In vorhandene /etc/apache2/ports.conf eintragen:
<IfModule mod_ssl.c> Listen 443 </IfModule>
# a2enmod ssl # service apache2 force-reload
Neu anlegen: /etc/apache2/sites-available/ssl
<virtualhost *:443> SSLEngine On SSLCertificateFile /etc/apache2/ssl/apache.pem DocumentRoot /var/www/owncloud </virtualhost>
# 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)
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)
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 <VirtualHost *:80>):
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.