GNU/Linux >> Tutoriels Linux >  >> Cent OS

Comment installer OwnCloud 8 avec Nginx et MariaDB sur CentOS 7

Ce tutoriel existe pour ces versions d'OS

  • CentOS 7.3
  • CentOS 7

Sur cette page

  1. Prérequis
  2. À faire
  3. Désactiver SELinux et configurer le pare-feu
  4. Installer et configurer LEMP
    1. Étape 1 :Activer epel-repository
  5. Étape 2 : Installer Nginx, MariaDB et php-fpm
  6. Étape 3 :Démarrer et configurer MariaDB
  7. Étape 4 - Configurer php-fpm
  8. Étape 5 :Démarrer nginx
  • Créer une base de données et configurer SSL
    1. Étape 1 :Créer une base de données et un utilisateur
    2. Étape 2 :Créer un certificat SSL
  • Installer OwnCloud
    1. Configurer un hôte virtuel pour OwnCloud
  • Tester OwnCloud
  • Conclusion
  • Liens
  • OwnCloud est un logiciel serveur pour la synchronisation de données et le partage de fichiers avec une interface Web facile à utiliser, disponible sous une licence open source. Owncloud peut être installé sur un serveur Web Linux ou Windows, est facile à configurer et dispose d'une documentation en ligne complète. Le client natif est disponible pour Windows, MacOS et Linux (application de bureau). Il existe également une application mobile pour Android et iOS.

    Ce tutoriel décrit l'installation d'Owncloud 8 sur CentOS 7 avec le serveur web nginx et la base de données MariaDB.

    La dernière version à ce jour est OwnCloud 8.0.

    Prérequis

    • CentOS 7

    À faire

    Voici les étapes que nous allons suivre dans ce didacticiel :

    • Désactivez SELinux et configurez firewalld.
    • Installer et configurer Nginx, MariaDB, php-fpm.
    • Créer une base de données et configurer SSL.
    • Installez OwnCloud.
    • Configurer un hôte virtuel pour OwnCloud.
    • Testez OwnCloud dans le navigateur.

    Désactiver SELinux et configurer firewalld

    Pour désactiver SELinux, éditez le fichier /etc/sysconfig/selinux et remplacez l'application par désactivé.

    vim /etc/sysconfig/selinux

    Exécutez ces commandes pour ouvrir les ports 80/http et 443/https dans firewalld afin que nous puissions atteindre l'interface OwnCloud par http et https plus tard.

    firewall-cmd --permanent --add-service=http
    firewall-cmd --permanent --add-service=https
    firewall-cmd --reload

    Installer et configurer LEMP

    Voici les étapes pour configurer le serveur de base LEMP (Linux - Nginx - MariaDB - PHP) pour exécuter OwnCloud sur.

    Étape 1 - Activer epel-repository

    Pour installer LEMP (Linux, Nginx, MariaDB et PHP), vous devez activer epel-repository.

    yum -y install epel-release

    Étape 2 - Installer Nginx, MariaDB et php-fpm

    sudo rpm -Uvh http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm
    yum -y install nginx mariadb mariadb-server php-fpm php-cli php-gd php-mcrypt php-mysql php-pear php-xml bzip2 vim

    Étape 3 - Démarrer et configurer MariaDB

    systemctl start mariadb
    mysql_secure_installation

    la première fois que vous appuyez simplement sur Entrée.

    Change the root password? [Y/n] Y
    Remove anonymous users? [Y/n] Y
    Disallow root login remotely? [Y/n] Y
    Remove test database and access to it? [Y/n] Y Reload privilege tables now? [Y/n] Y

    Étape 4 - Configurer php-fpm

    Modifier le fichier /etc/php-fpm.d/www.conf.

    vim /etc/php-fpm.d/www.conf

    assurez-vous que la ligne listen est :

    listen = 127.0.0.1:9000

    Et éditez la ligne pour user - group :

    user = nginx
    group = nginx

    Créer un répertoire pour le chemin de session.

    mkdir -p /var/lib/php/session
    chown nginx:nginx -R /var/lib/php/session/

    Démarrez php-fpm.

    systemctl start php-fpm

    Étape 5 - Démarrer nginx

    systemctl start nginx

    À cette étape, vous pouvez visiter votre serveur Web http://192.168.1.101/.

    Créer une base de données et configurer SSL

    Étape 1 - Créer une base de données et un utilisateur

    Connectez-vous à MariaDB avec le client en ligne de commande mysql :

    mysql -u root -p

    Créez la base de données :

    create database owncloud_db;

    Ajouter un utilisateur :

    create user [email protected] identified by 'ownclouduser';

    Accorder des autorisations à l'utilisateur sur la base de données

    grant all privileges on owncloud_db.* to [email protected] identified by 'ownclouduser';
    flush privileges;

    Étape 2 - Créer un certificat SSL

    mkdir -p /etc/nginx/cert/
    cd /etc/nginx/cert/
    openssl req -new -x509 -days 365 -nodes -out /etc/nginx/cert/owncloud.crt -keyout /etc/nginx/cert/owncloud.key

    la commande générera un owncloud.crt et un owncloud.key dans le répertoire /etc/nginx/cert/.

    Modifier le fichier de certificat d'autorisation.

    chmod 600 owncloud.crt
    chmod 600 owncloud.key

    Installer OwnCloud

    Téléchargez la source de l'application avec wget.

    yum -y install wget
    cd /tmp/
    wget https://download.owncloud.org/community/owncloud-8.0.0.tar.bz2

    Extrayez et déplacez le répertoire owncloud vers /usr/share/nginx/html.

    tar -xjvf owncloud-8.0.0.tar.bz2
    mv owncloud/ /usr/share/nginx/html/

    Changez le propriétaire du répertoire owncloud en nginx.

    cd /usr/share/nginx/html/
    chown nginx:nginx -R owncloud/

    Créez un répertoire appelé data sur le répertoire owncloud et changez le propriétaire en nginx.

    mkdir -p owncloud/data/
    chown nginx:nginx -R owncloud/data/

    Configurer un hôte virtuel pour OwnCloud

    La dernière étape consiste à configurer un hôte virtuel pour owncloud.

    cd /etc/nginx/conf.d/
    mv default.conf default

    ajouter la configuration d'owncloud à /etc/nginx/conf.d/

    vim owncloud.conf

    Collez la configuration ci-dessous :

    upstream php-handler {
        server 127.0.0.1:9000;
        #server unix:/var/run/php5-fpm.sock;
    }
    
    server {
            listen 80;
            server_name 192.168.1.101; #YourIP or domain
            return 301 https://$server_name$request_uri;  # redirect all to use ssl
    }
    
    
    server {
            listen 443 ssl;
            server_name 192.168.1.101; #YourIP or domain
    
            #SSL Certificate you created
            ssl_certificate /etc/nginx/cert/owncloud.crt; 
            ssl_certificate_key /etc/nginx/cert/owncloud.key;
    
            # owncloud path
            root /usr/share/nginx/html/owncloud/;
    
            client_max_body_size 10G; # set max upload size
            fastcgi_buffers 64 4K;
    
            rewrite ^/caldav(.*)$ /remote.php/caldav$1 redirect;
            rewrite ^/carddav(.*)$ /remote.php/carddav$1 redirect;
            rewrite ^/webdav(.*)$ /remote.php/webdav$1 redirect;
    
            index index.php;
            error_page 403 /core/templates/403.php;
            error_page 404 /core/templates/404.php;
    
            location = /robots.txt {
                allow all;
                log_not_found off;
                access_log off;
            }
    
            location ~ ^/(data|config|\.ht|db_structure\.xml|README) {
                    deny all;
            }
    
            location / {
                    # The following 2 rules are only needed with webfinger
                    rewrite ^/.well-known/host-meta /public.php?service=host-meta last;
                    rewrite ^/.well-known/host-meta.json /public.php?service=host-meta-json last;
    
                    rewrite ^/.well-known/carddav /remote.php/carddav/ redirect;
                    rewrite ^/.well-known/caldav /remote.php/caldav/ redirect;
    
                    rewrite ^(/core/doc/[^\/]+/)$ $1/index.html;
    
                    try_files $uri $uri/ index.php;
            }
    
            location ~ ^(.+?\.php)(/.*)?$ {
                    try_files $1 = 404;
    
                    include fastcgi_params;
                    fastcgi_param SCRIPT_FILENAME $document_root$1;
                    fastcgi_param PATH_INFO $2;
                    fastcgi_param HTTPS on;
                    fastcgi_pass php-handler;
            }
    
            # Optional: set long EXPIRES header on static assets
            location ~* ^.+\.(jpg|jpeg|gif|bmp|ico|png|css|js|swf)$ {
                    expires 30d;
                    # Optional: Don't log access to assets
                    access_log off;
            }
    
    }
    
    

    Et puis redémarrez la pile LEMP :

    systemctl restart nginx mariadb php-fpm

    Configurez maintenant les services LEMP pour qu'ils démarrent au démarrage.

    systemctl enable nginx
    systemctl enable php-fpm
    systemctl enable mariadb

    Redémarrez ensuite votre serveur :

    reboot

    Tester OwnCloud

    http://192.168.1.101 et vous serez redirigé vers la connexion ssl https://192.168.1.101.

    Créez un compte administrateur et remplissez toutes les bases de données (nom d'utilisateur, mot de passe, nom de base de données), puis cliquez sur Terminer la configuration.

    Conclusion

    OwnCloud est la bonne solution pour un cloud privé aujourd'hui. Facile à utiliser et à configurer et avec une interface conviviale qui le rend facile à utiliser et à installer. Owncloud est rapide, stable et possède de nombreuses fonctionnalités.

    • Propre cloud
    • CentOS
    • Nginx
    • MariaDB
    • PHP

    Cent OS
    1. Comment installer et configurer Nginx sur CentOS 7

    2. Comment installer et configurer ownCloud sur CentOS 8

    3. Comment installer et configurer Nextcloud sur CentOS 7 / RHEL 7

    4. Comment installer Nextcloud avec Nginx et PHP 7.3 sur CentOS 8

    5. Installez Magento sur CentOS 7, avec Nginx, PHP-FPM et MariaDB

    Installation et configuration de PhpMyAdmin avec Nginx sur CentOS 7

    Comment installer et configurer Cacti sur CentOS 7

    Comment installer et configurer ownCloud sur CentOS 7

    Comment installer OwnCloud 8 avec Nginx et PHP-FPM sur CentOS 6

    Comment installer ownCloud sur CentOS 8

    Comment installer et configurer MariaDB dans CentOS / RHEL 7