Manuelle Installation unter Linux¶
Das Installieren von ownCloud auf Linux aus dem openSUSE Build Service Paket ist die von uns bevorzugte Methode (siehe Bevorzugte Linux Installationsmethode) der Installation. Diese wird von den ownCloud Ingenieuren gepflegt, und Sie können Ihren Paket-Manager verwenden, um Ihren ownCloud Server up-to-date zu halten.
Wenn Sie keine Pakete für die Linux-Distribution verwenden möchten, oder Sie bevorzugen eine Installation aus den Quelldateien, dann können Sie ownCloud von Grund auf neu mit einem klassischen LAMP (Linux, Apache, MySQL / MariaDB, PHP) installieren. Dieses Dokument enthält eine komplette Beschreibung für die Installation von ownCloud auf Ubuntu 14.04 LTS Server mit Apache und MySQL.
Voraussetzungen¶
Hinweis
Dieses Tutorial geht davon aus, das Sie Zugang zum Terminal Ihrer Maschine haben und das Sie ownCloud installieren möchten. Dafür ist zwar nicht unbedingt erforderlich in Kontakt mit Ihrem Hoster zu treten, es sei denn, es werden zusätzliche Module benötigt, die für die Intallation notwendig sind. Bei Fragen zu den benötigten Modulen sehen Sie daher auch im PHP Handbuch nach, wenn Sie dafür mehr Informationen benötigen. Ihre Linux-Distribution sollte alle Pakete für die benötigten Module enthalten.
Um ownCloud ausführen können, müssen Sie auf Ihrem Web-Server Folgendes installiert haben:
- php5 (>= 5.4)
- PHP module ctype
- PHP module dom
- PHP module GD
- PHP module iconv
- PHP module JSON
- PHP module libxml
- PHP module mb multibyte
- PHP module posix
- PHP module SimpleXML
- PHP module XMLWriter
- PHP module zip
- PHP module zlib
Datenbankverbindung (wählen Sie mindestens eine aus):
- PHP module sqlite (>= 3, wird aus Leistungsgründen in der Regel nicht empfohlen)
- PHP module mysql
- PHP module pgsql (setzt PostgreSQL >= 9.0 voraus)
Empfehlenswerte Pakete:
- PHP module curl (sehr zu empfehlen, de einige Funktionen, beispielsweise die http Benutzerauthentifizierung, davon abhängt)
- PHP module fileinfo (Sehr empfehlenswert, steigert die Leistung der Dateianalyse)
- PHP module bz2 (ist erfoderlich um Anwendungen/Apps entpacken zu können)
- PHP module intl (erhöht die Übersetzungsleistung und verbessert die Sortierung von Nicht-ASCII-Zeichen)
- PHP module mcrypt (erhöht die Dateiverschlüsselungsleistung)
- PHP module openssl (ist für den Zugriff auf HTTPS-Ressourcen erforderlich)
Erforderlich für spezielle Anwendungen/Apps:
- PHP module ldap (für die LDAP Integration)
- smbclient (für SMB Speicherung)
- PHP module ftp (für FTP Speicherung)
Empfohlen für spezifische Anwendungen/Apps (optional):
- PHP module exif (für die Imagerotation in der Bilder-App)
- PHP module gmp (für SFTP Speicherung)
Für eine verbesserte Serverleistung (optional / wählen Sie nur eine der folgenden Module aus):
- PHP module apc
- PHP module apcu
- PHP module xcache
Für die Vorschauerstellung (optional):
- PHP module imagick
- avconv oder ffmpeg
- OpenOffice oder LibreOffice
Bemerkungen:
Bitte überprüfen Sie Ihre Distribution, Betriebssystem oder Hosting-Partner-Dokumentation ob die Installation dieser Module möglich ist.
Vergewissern Sie sich ob Ihre Distribution die Anforderungen an die PHP Version erfüllt (wie oben angegeben). Wenn dies nicht der Fall ist, können Sie auch die die entsprechenden Repositorys verwenden. Wenn Sie zum Beispiel Ubuntu 10.04 LTS verwenden, können Sie Ihre PHP Version mit Hilfe einer individellen PHP PPA Version wie folgt aktualisieren:
sudo add-apt-repository ppa:ondrej/php5 sudo apt-get update sudo apt-get install php5
Das WebDAV Modul benötigen Sie für Ihren Webserver nicht (z.Bsp. bei Apache mod_webdav) denn ownCloud bingt einen eigenen WebDAV-Server mit, SabreDAV.
Beispiel Installation unter Ubuntu 14.04 LTS Server¶
Auf einer Maschine, auf der ein makelloses Ubuntu 14.04 LTS Server installiert ist, werden für eine typische ownCloud Installation die folgende Module empfohlen/verwendet/eingesetzt (Apache und MariaDB), indem Sie die folgenden Befehle in einem Terminal eingeben:
apt-get install apache2 mariadb-server libapache2-mod-php5
apt-get install php5-gd php5-json php5-mysql php5-curl
apt-get install php5-intl php5-mcrypt php5-imagick
- Das installiert die Pakete für das ownCloud Kernsystem. Wenn Sie planen, zusätzliche Apps zu verwenden, denken Sie daran, dass zusätzliche Pakete erforderlich sein könnten. Siehe Abschnitt Voraussetzungen (siehe oben) für weitere Einzelheiten.
- Bei der Ausführung von jedem der oben genannten Befehle, könnten Sie dazu dazu aufgefordert werden folgendes zu tun um den Vorgang zu starten; Drücken Sie "Y" für Ja (das heißt, wenn Ihre Systemsprache Englisch ist. Möglicherweise müssen Sie eine andere Taste drücken, wenn Sie eine andere Systemsprache verwendet).
- Bei der Installation des MySQL-Servers, werden Sie aufgefordert, ein Root-Passwort zu erstellen. Achten Sie darauf, daß Sie das Passwort, das Sie hier eingeben nicht vergessen, denn Sie benötigen es später, wenn ownCloud Ihre Datenbank einrichten soll.
Jetzt laden Sie das Archiv der neuesten ownCloud-Version herunter:
Gehen Sie zur ownCloud Installations Seite.
Klicken Sie auf den Archive File For server owners Button.
Klicken Sie dann auf Download Unix.
Die Datei mit dem Namen ownCloud-xyztar.bz2 (wobei xyz die Versionsnummer der aktuellen und neuesten Version ist) erscheint.
Speichern Sie die Datei auf Ihrer Maschine wo Sie ownCloud installieren möchten.
Überprüfen Sie die MD5 oder SHA256 Summe:
md5sum owncloud-x.y.z.tar.bz2 sha256sum owncloud-x.y.z.tar.bz2
Sie können auch die PGP-Signatur überprüfen:
wget https://download.owncloud.org/community/owncloud-x.y.z.tar.bz2.asc wget https://owncloud.org/owncloud.asc gpg --import owncloud.asc gpg owncloud-x.y.z.tar.bz2
Jetzt können Sie den Inhalt des Archivs extrahieren. Öffnen Sie das Terminal, und gehen Sie zu Ihrem Download-Verzeichnis, und führen Sie Folgendes aus:
tar -xjf owncloud-x.y.z.tar.bz2
Kopieren Sie die ownCloud Dateien an ihren endgültigen Bestimmungsort in das Document-Root Ihres Web-Servers:
cp -r owncloud /path/to/webserver/document-root
Wo sich Ihr Dokument-Root Ihres Webservers befindet sehen Sie hier: /path/to/webserver/document-root Auf Ubuntu-Systemen finden Sie es unter /var/www/owncloud, und Ihr Kopierbefehl sieht dann so aus:
cp -r owncloud /var/www/
Installationsassistent¶
Die Einrichtung Ihres ownCloud-Server stellen Sie fertig, indem Sie den the Installationsassistenten verwenden.
Nach dem Ausführen des Installationsassistenten ist Ihre ownCloud Installation abgeschlossen. Allerdings sollten Sie die folgenden Schritte ausführen wenn Sie die Sicherheit Ihres Servers verbessern wollen.
Einstellen der starken Verzeichnisberechtigung¶
Wir empfehlen, die Verzeichnisberechtigungen in Ihrer ownCloud Installation so genau wie möglich, für eine höhere Sicherheit, einzustellen. Näheres dazu finden Sie im Handbuch unter dem Abschnitt Einstellungen starke Verzeichnisberechtigung des Installationassistenten.
SELinux¶
Siehe unter SELinux Konfiguration für einen empfohlene Konfiguration für SELinux-fähige Distributionen wie Fedora und CentOS.
Apache ist die empfohlene Web-Server.
Apache Web Server Konfiguration¶
Hinweis
Sie können ownCloud über einen normalen http-Zugang verwenden, aber wir empfehlen Ihnen dringend, zu SSL / TLS zu wechseln, um Ihren gesammten Server-Datenverkehr zu verschlüsseln und die Anmeldungen der Benutzer und ihrer Daten während der Übertragung zu schützen.
SSL aktivieren¶
Wenn Apache unter Ubuntu installiert ist, erreichen Sie das schon mit einem einfach per Setup selbst signierten Zertifikat. Alles was Sie tun müssen, ist das SSL-Modul zu aktivieren und an der entsprechenden Stelle zu speichern. Öffnen Sie ein Terminal und führen Sie folgendes dazu aus:
a2enmod ssl
a2ensite default-ssl
service apache2 reload
Wenn Sie eine andere Distribution verwenden, überprüfen Sie die entsprechende Dokumentation, wo erklärt wird, wie man SSL aktivieren kann.
Hinweis
Selbstsignierte Zertifikate haben ihre Nachteile - vor allem, wenn Sie planen Sie Ihren ownCloud-Server öffentlich zugänglich zu machen. Vielleicht könnten Sie prüfen, ob Sie ein Zertifikat bekommen, das bei einem kommerziellen Unternehmen signiert wurde. Fragen Sie Ihren Domainnamen-Registrierungs oder Hosting-Service, welches Zertifikat für Sie in Frage kommt, bzw. welches Sie einsetzen/verwenden können.
Konfigurieren von ownCloud¶
Da es einen Wechsel in der Art der Konfiguration von Apache gab, müssen Sie herausfinden, welche der Apache-Version, Versionen 2.2 und 2.4, Sie verwenden.
Normalerweise können Sie das tun, indem Sie einen der folgenden Befehle eingeben:
apachectl -v
apache2 -v
Beispielausgabe:
Server version: Apache/2.4.7 (Ubuntu)
Server built: Jul 22 2014 14:36:38
Beispiel Konfiguration für Apache 2.2:
<Directory /path/to/owncloud>
Options Indexes FollowSymLinks
AllowOverride All
Order allow,deny
allow from all
</Directory>
Beispiel Konfiguration für Apache 2.4:
<Directory /path/to/owncloud>
Options Indexes FollowSymLinks
AllowOverride All
Require all granted
</Directory>
Diese Konfigurationseinträge müssen in der Konfigurationsdatei eingetragen werden und das Verzeichnis enthalten, wo ownCloud sich befindet (Pfad zu ownCloud bzw. zum Webroot des Apacheservers).
Auf einem Ubuntu-System ist in der Regel die "default-ssl" Website (zu finden unter /etc/apache2/sites-available/default-ssl.conf).
Fügen Sie in die Konfigurationsdatei unmittelbar unter der letzten Zeile folgende Angabe hinzu:
</VirtualHost>
(dies sollte eine der letzten Zeilen in der Datei sein).
Eine minimale Website-Konfigurationsdatei auf Ubuntu 14.04 könnte wie folgt aussehen:
<IfModule mod_ssl.c>
<VirtualHost _default_:443>
ServerName YourServerName
ServerAdmin webmaster@localhost
DocumentRoot /var/www
<Directory />
Options FollowSymLinks
AllowOverride None
</Directory>
<Directory /var/www/>
Options Indexes FollowSymLinks
AllowOverride None
Order allow,deny
allow from all
</Directory>
ErrorLog ${APACHE_LOG_DIR}/error.log
LogLevel warn
CustomLog ${APACHE_LOG_DIR}/ssl_access.log combined
SSLEngine on
SSLCertificateFile /etc/ssl/certs/ssl-cert-snakeoil.pem
SSLCertificateKeyFile /etc/ssl/private/ssl-cert-snakeoil.key
<FilesMatch "\.(cgi|shtml|phtml|php)$">
SSLOptions +StdEnvVars
</FilesMatch>
<Directory /usr/lib/cgi-bin>
SSLOptions +StdEnvVars
</Directory>
BrowserMatch "MSIE [2-6]" \
nokeepalive ssl-unclean-shutdown \
downgrade-1.0 force-response-1.0
BrowserMatch "MSIE [17-9]" ssl-unclean-shutdown
<Directory /var/www/owncloud>
Options Indexes FollowSymLinks
AllowOverride All
Allow from all
Require all granted
Dav Off
Satisfy Any
</Directory>
</VirtualHost>
</IfModule>
Damit ownCloud korrekt arbeitet, brauchen wir das Modul mod_rewrite. Aktivieren Sie es nur einen Neustart mit:
a2enmod rewrite
In Distributionen, die das a2enmod Modul nicht verwenden, müssen Sie dieses manuell aktivieren, indem Sie die Apache-Konfigurationsdateien, in der Regel die Datei /etc/httpd/httpd.conf anpassen. Verwenden Sie bei Fragen die entsprechende Apache Dokumentation oder Ihre Linux Dokumentation der Distribution um das entsprechend verändern zu können.
Damit die maximale Uploadgröße konfigurierbar sein wird, passen Sie die .htaccess Datei im ownCloud Ordner so an, das die Datei auf Ihrem Server mit Schreibrechten ausgestattet ist (Das sollte bereits durchgeführt wurden sein, siehe Abschnitt >Einstellen der starken Verzeichnisberechtigung).
Sie sollten sicherstellen, dass alle integrierten WebDAV-Module des Webservers gesperrt sind (zumindest für die ownCloud Verzeichnise), da sie die integrierte WebDAV-Unterstützung von ownCloud stören.
Wenn Sie die WebDAV-Unterstützung im Rest Ihrer Konfiguration benötigen, verwenden Sie dafür speziellen Eintrag, der für die ownCloud notwendig ist, indem Sie die folgende Zeile in den <Directory Abschnitt Ihres ownCloud-Server hinzufügen. Fügen Sie folgende Zeile unmittelbar nach dem allow from all / Require all granted Zeile ein:
Dav Off
Sie müssen für alle Server die konfigurierte Authentifizierung für ownCloud deaktivieren, da ownCloud intern für DAV Dienstleistungen die Standardauthentifizierung verwendet. Wenn Sie die Authentifizierung auf einem übergeordneten Ordner eingestellt haben (über beispielsweise eins AuthType Basic Directive), müssen Sie das gezielt für die Authentifizierung von ownCloud ausschalten, dazu fügen Sie folgenden Eintrag in Ihrer Konfiguration hinzu. In der obigen Beispiel-Konfigurationsdatei, fügen Sie die folgende Zeile unmittelbar nach dem allow from all / Require all granted Zeile in dem <Directory Abschnitt hinzu:
Satisfy Any
Bei der Verwendung von SSL, wird ein spezieller Hinweis auf den Servernamen verwendet. Sie sollten diesen in einer spezifizierten Serverkonfiguration als auch in dem Commonnamefeld des Zertifikats einsetzen. Wenn Sie möchten, dass Ihre ownCloud über das Internet erreichbar sein soll, dann setzen diese beides auf der Domain ein, mit der Sie Ihren ownCloud-Server erreichen wollen.
Hinweis
Standardmäßig wird der Zertifikate Commonname mit dem Host-Namen zu dem Zeitpunkt festgelegt, wenn das SSL-cert Paket installiert wird.
Abschließend starten Sie Apache neu.
Auf Ubuntu-Systemen starten Sie Apache neu, mit:
service apache2 restart
Auf systemd Systemen (Fedora, Arch Linux, OpenSUSE), führen Sie Folgendes aus:
systemctl restart httpd.service
Konfigurationshinweise für php-fpm¶
Sicherheit: Verwenden Sie mindestens PHP = & gt; 5.5.22 oder & gt; = 5.6.6,
Wegen eines Fehler mit Auswirkungen auf die Sicherheit bei älteren PHP-Versionen mit der Handhabung von XML-Daten werden Sie dringend aufgefordert, mindestens PHP 5.5.22 oder 5.6.6 zu verwenden, wenn Sie es in einer entsprechenden Umgebung einsetzen.
Systemumgebungsvariablen
Wenn Sie mit der php-fpm, Systemumgebungsvariablen wie PATH, TMP oder anderen nicht automatisch in der gleichen Weise wie bei der Verwendung von php-cli einsetzen, erfolgt ein PHP-Aufruf wie getenv('PATH'); daher dann mit der Rückgabe ein leeres Ergebnis. So müssen Sie eventuell manuell Ihr Enviroment konfigurieren, um Zugriffe auf Variablen in der appropropriate php-fpm ini/config Datein zu erlangen.
Hier sind einige Beispiel für Wurzelpfade diese ini/Config-Dateien:
Ubuntu/Mint | CentOS/Red Hat/Fedora |
/etc/php5/fpm/ | /etc/php-fpm.d/ |
In beiden Beispielen der ini/config Datei wird www.conf aufgerufen, und in Abhängigkeit von der Version Ihrer Distribution oder Ihren Anpassungen, die Sie vorgenommen haben, wird dann das entsprechende Unterverzeichnis verwendet.
Normalerweise werden Sie einige oder alle der Umgebungsvariablen bereits in der Datei vorfinden, die aber auskommentiert wie folgt aussehen:
;env[HOSTNAME] = $HOSTNAME
;env[PATH] = /usr/local/bin:/usr/bin:/bin
;env[TMP] = /tmp
;env[TMPDIR] = /tmp
;env[TEMP] = /tmp
Kommentieren Sie die entsprechenden vorhandenen Einträge aus. Dann führen Sie printenv PATH aus bis Sie Ihren Pfad bestätigt bekommen, wie zum Beispiel:
$ printenv PATH
/home/user/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:
/sbin:/bin:/
Wenn einer Ihrer Systemumgebungsvariablen werden nicht in der Datei vorhanden ist, dann müssen Sie ihn hinzufügen.
Wenn Sie Shared Hosting oder ein Bedienfeld verwenden, um Ihre ownCloud VM oder Ihren Server zu verwalten, dann können die Konfigurationsdateien fast sicher, irgendwo von Ihnen gefunden werden, aus gründern der Sicherheit und Flexibilität, überprüfen Sie die Dokumentation um die richtigen Stellen zu finden.
Bitte beachten Sie, dass es möglich ist, das unterschiedliche Einstellungen für die php-cli und die php-fpm verwendet werden, die auch auf verschiedenen Domains und Websites genutzt werden können. Der beste Weg, um die Einstellungen zu überprüfen, ist phpinfo() zu verwenden.
Maximale Uploadgröße
Wenn Sie die maximale Uploadgröße erhöhen wollen, müssen Sie auch Ihre php-fpm Konfiguration ändern und den Wert upload_max_filesize und post_max_size entsprechend anpssen. Sie müssen neu starten, php5-fpm damit Ihr HTTP Server diese Änderungen übernehmen tut.
.htaccess Hinweise für den Webserver <> Apache
ownCloud verwendet seine eigene owncloud/.htaccess Datei. php-fpm kann nicht Einstellungen aus der .htaccess lesen sofern der htscanner und PECL Erweiterung installiert ist. Wenn php-fpm ohne diese PECL Erweiterung installiert wurde, müssen die Einstellungen und Berechtigungen in der owncloud/.user.ini Datei festgelegt werden.
andere Web Server¶
Microsoft Internet Information Server (IIS)
Siehe unter Windows 7 und Windows Server 2008 für weitere Informationen.
Nginx Konfiguration
Siehe unter Nginx Konfiguration
Lighttpd Konfiguration
Siehe unter Lighttpd Konfiguration
Yaws Konfiguration
Siehe unter Yaws Konfiguration
Hiawatha Konfiguration
Siehe unter Hiawatha Konfiguration