diff --git a/admin_manual/configuration_server/harden_server.rst b/admin_manual/configuration_server/harden_server.rst index 6dd5b3760..2d395d9c2 100644 --- a/admin_manual/configuration_server/harden_server.rst +++ b/admin_manual/configuration_server/harden_server.rst @@ -76,7 +76,7 @@ setting the ``enable_previews`` switch to ``false`` in ``config.php``. As an administrator you are also able to manage which preview providers are enabled by modifying the ``enabledPreviewProviders`` option switch. -.. _use-https-label: +.. _use_https_label: Use HTTPS --------- diff --git a/admin_manual/configuration_server/security_setup_warnings.rst b/admin_manual/configuration_server/security_setup_warnings.rst index e8ab5e574..e3d6ce1f5 100644 --- a/admin_manual/configuration_server/security_setup_warnings.rst +++ b/admin_manual/configuration_server/security_setup_warnings.rst @@ -53,9 +53,9 @@ server to support it, and then there are some settings in the **Security** section of your ownCloud Admin page to enable. The following manual pages describe how to enable HTTPS on the Apache and Nginx Web servers. -:ref:`enabling-ssl-label` (on Apache) +:ref:`enabling_ssl_label` (on Apache) -:ref:`use-https-label` +:ref:`use_https_label` :ref:`nginx_configuration_example` @@ -63,7 +63,8 @@ The test with getenv(\"PATH\") only returns an empty response ------------------------------------------------------------- Some environments are not passing a valid PATH variable to ownCloud. The -:ref:`using_php-fpm` provides the information about how to configure your environment. +:ref:`php_fpm_tips_label` provides the information about how to configure your +environment. The "Strict-Transport-Security" HTTP header is not configured ------------------------------------------------------------- diff --git a/admin_manual/installation/command_line_installation.rst b/admin_manual/installation/command_line_installation.rst index a05bd0f5b..2d293505b 100644 --- a/admin_manual/installation/command_line_installation.rst +++ b/admin_manual/installation/command_line_installation.rst @@ -11,14 +11,14 @@ line: and unpack the tarball in the appropriate directories. (See :doc:`linux_installation` and :doc:`source_installation`.) -2. Apply the correction permissions to your ownCloud files and directories (see -:ref:`strong_perms_label`.) +2. Change the ownership of your ``owncloud`` directory to your HTTP user, like +this example for Debian/Ubuntu. You must run ``occ`` as your HTTP user; see +:ref:`http_user_label`:: + + $ sudo chown -R www-data:www-data /var/www/owncloud/ 3. Use the ``occ`` command to complete your installation. This takes the place -of running the graphical Installation Wizard. - -You must run ``occ`` as your HTTP user; see :ref:`http_user_label`. This example -shows how to complete your ownCloud installation with ``occ`` on Ubuntu Linux:: +of running the graphical Installation Wizard:: $ cd /var/www/owncloud/ $ sudo -u www-data php occ maintenance:install --database @@ -38,4 +38,9 @@ Supported databases are:: - pgsql (PostgreSQL) - oci (Oracle) -See :ref:`command_line_installation_label` for more information. +See :ref:`command_line_installation_label` for more information. + +Finally, apply the correct strong permissions to your ownCloud files and +directories (see :ref:`strong_perms_label`). This is an extremely important +step. It helps protect your ownCloud installation, and ensures that it will run +correctly. diff --git a/admin_manual/installation/nginx_configuration.rst b/admin_manual/installation/nginx_configuration.rst index 72da6fd9b..eda1d3493 100644 --- a/admin_manual/installation/nginx_configuration.rst +++ b/admin_manual/installation/nginx_configuration.rst @@ -132,7 +132,7 @@ Nginx Configuration - Remove **ssl_certificate** and **ssl_certificate_key**. - Remove **fastcgi_params HTTPS on;** -.. note:: If you are using php-fpm please read :ref:`using_php-fpm` +.. note:: If you are using php-fpm please read :ref:`php_fpm_tips_label` Suppressing Log Messages ------------------------ diff --git a/admin_manual/installation/source_installation.rst b/admin_manual/installation/source_installation.rst index 56042f251..624f9605d 100644 --- a/admin_manual/installation/source_installation.rst +++ b/admin_manual/installation/source_installation.rst @@ -14,7 +14,20 @@ If there are no packages for your Linux distribution, or you prefer installing from sources, you can setup ownCloud from scratch using a classic LAMP stack (Linux, Apache, MySQL/MariaDB, PHP). This document provides a complete walk-through for installing ownCloud on Ubuntu 14.04 LTS Server with Apache and -MySQL. +MariaDB. + +* :ref:`prerequisites_label` +* :ref:`ubuntu_installation_label` +* :ref:`apache_configuration_label` +* :ref:`enabling_ssl_label` +* :ref:`installation_wizard_label` +* :ref:`strong_permissions_label` +* :ref:`selinux_tips_label` +* :ref:`php_ini_tips_label` +* :ref:`php_fpm_tips_label` +* :ref:`other_HTTP_servers_label` + +.. _prerequisites_label: Prerequisites ------------- @@ -26,9 +39,9 @@ Prerequisites `PHP manual `_ for information on modules. Your Linux distribution should have packages for all required modules. -To run ownCloud, your Web server must have the following installed: +To run ownCloud, your Web server must have the following PHP modules installed: -* php5 (>= 5.4) +* php5 (>= 5.5) * PHP module ctype * PHP module dom * PHP module GD @@ -50,7 +63,7 @@ Database connectors (pick the one for your database:) *Recommended* packages: -* PHP module curl (highly recommended, some functionality, e.g. http user +* PHP module curl (highly recommended, some functionality, e.g. HTTP user authentication, depends on this) * PHP module fileinfo (highly recommended, enhances file analysis performance) * PHP module bz2 (recommended, required for extraction of apps) @@ -62,7 +75,9 @@ Database connectors (pick the one for your database:) Required for specific apps: * PHP module ldap (for LDAP integration) -* `php5-libsmbclient `_ +* `php5-libsmbclient + `_ (SMB/CIFS integration) * PHP module ftp (for FTP storage / external user authentication) * PHP module imap (for external user authentication) @@ -90,9 +105,12 @@ For preview generation (*optional*): * You don’t need the WebDAV module for your Web server (i.e. Apache’s ``mod_webdav``) to access your ownCloud data via WebDAV. ownCloud has a built-in WebDAV server of its own, SabreDAV. + +.. _ubuntu_installation_label: -Example installation on Ubuntu 14.04 LTS Server +Example Installation on Ubuntu 14.04 LTS Server ----------------------------------------------- + On a machine running a pristine Ubuntu 14.04 LTS server, install the required and recommended modules for a typical ownCloud installation, using Apache and MariaDB, by issuing the following commands in a terminal:: @@ -112,8 +130,8 @@ Apache and MariaDB, by issuing the following commands in a terminal:: Now download the archive of the latest ownCloud version: * Go to the `ownCloud Download Page `_. -* Click the **Archive file for server owners** button. -* Click **Download Unix**. +* Go to **Download ownCloud Server > Download > Archive file for + server owners** and download either the tar.bz2 or .zip archive in step 1. * This downloads a file named owncloud-x.y.z.tar.bz2 (where x.y.z is the version number of the current latest version). * Download its corresponding checksum file, e.g. owncloud-x.y.z.tar.bz2.md5, @@ -137,37 +155,49 @@ Now download the archive of the latest ownCloud version: tar -xjf owncloud-x.y.z.tar.bz2 -* Copy the ownCloud files to their final destination in the document root of - your web server:: +* This unpacks to a single ``owncloud`` directory. Copy the ownCloud directory + to its final destination in the document root of your web server:: cp -r owncloud /path/to/webserver/document-root where ``/path/to/webserver/document-root`` is replaced by the document root of your Web server. On Ubuntu systems this - ``/var/www/html/owncloud``, so your copying command is:: + ``/var/www/owncloud``, so your copying command is:: - cp -r owncloud /var/www/html + cp -r owncloud /var/www/ + + .. _apache_configuration_label: Apache Web Server Configuration ------------------------------- On Debian, Ubuntu, and their derivatives, Apache installs with a useful configuration so all you have to do is create a -:file:`/etc/apache2/sites-available/owncloud.conf` file with these lines in it: +:file:`/etc/apache2/sites-available/owncloud.conf` file with these lines in +it: .. code-block:: xml - Alias /owncloud /var/www/owncloud - + Alias /owncloud /var/www/owncloud + + Options +FollowSymlinks AllowOverride All - -Then create a symlink to :file:`/etc/apache2/sites-enabled`:: + + Dav off + + + SetEnv HOME /var/www/owncloud + SetEnv HTTP_HOME /var/www/owncloud + + + +Then create a symlink to :file:`/etc/apache2/sites-enabled`:: ln -s /etc/apache2/sites-available/owncloud.conf /etc/apache2/sites-enabled/owncloud.conf Additional Apache Configurations --------------------------------- +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ * For ownCloud to work correctly, we need the module ``mod_rewrite``. Enable it by running:: @@ -185,16 +215,6 @@ Additional Apache Configurations a2enmod setenvif -* You should make sure that any built-in WebDAV module of your Web server is - disabled (at least for the ownCloud directory), as it will interfere with - ownCloud's built-in WebDAV support. - - If you need the WebDAV support in the rest of your configuration, you can turn - it off specifically for the ownCloud entry by adding the following line in - the `` 5.5.22 or >= 5.6.6,** +**Security: Use at least PHP => 5.5.22 or >= 5.6.6** Due to `a bug with security implications `_ in older PHP releases with the handling of XML data you are highly encouraged to run @@ -355,6 +391,8 @@ read PHP settings in ``.htaccess`` unless the ``htscanner`` PECL extension is installed. If ``php-fpm`` is used without this PECL extension installed, settings and permissions must be set in the ``owncloud/.user.ini`` file. +.. _other_HTTP_servers_label: + Other Web Servers ----------------- diff --git a/admin_manual/release_notes.rst b/admin_manual/release_notes.rst index a91d22387..38e65c1c4 100644 --- a/admin_manual/release_notes.rst +++ b/admin_manual/release_notes.rst @@ -110,8 +110,9 @@ The ownCloud 8 server is not supported on any version of Windows. The 8.1.0 release has a minor bug which makes app updates fail at first try. Reload the apps page and try again, and the update will succeed. -The ``forcessl`` option within the ``config.php`` and the ``Enforce SSL`` option within the -Admin-Backend was removed. This now needs to be configured like described in :ref:`use-https-label`. +The ``forcessl`` option within the ``config.php`` and the ``Enforce SSL`` option +within the Admin-Backend was removed. This now needs to be configured like +described in :ref:`use_https_label`. WebDAV file locking was removed in oC 8.1 which causes Finder on Mac OS X to mount WebDAV read-only.