Jak nainstalovat vlastníCloud 9.1 s Nginx a MariaDB na CentOS 7

  • 6 min číst
  • Prosince 17, 2016

Jak nainstalovat vlastníCloud 9.1 s Nginx a MariaDB na CentOS 7

OwnCloud je serverový software pro synchronizaci dat a sdílení souborů s snadno použitelným webovým rozhraním, které je k dispozici pod licencí open source. VlastníCloud lze nainstalovat na webový server Linux nebo Windows, snadno se konfigurovat a má rozsáhlou on-line dokumentaci. Nativní klient je k dispozici pro Windows, MacOS a Linux (Desktop Application). K dispozici je také mobilní aplikace pro Android a iOS.

V tomto tutoriálu vás seznámím s instalací a konfigurací ownCloud 9.1 na serveru CentOS 7. Ukážeme vám, jak nakonfigurovat vlastní kód s Nginx a PHP 7 (jako FPM) a MariaDB jako databázový systém.

Předpoklady

  • Server CentOS 7
  • Root Privileges

Krok 1 - Nginx a PHP7-FPM nainstalujte

Než začneme s instalací Nginx a php7-fpm, musíme přidat úložiště EPEL, které obsahuje další software, který není dostupný z repozitáře základny CentOS. Nainstalujte EPEL tímto příkazem yum.

yum -y nainstalovat epel-release

Nyní nainstalujte Nginx z repozitáře Epel.

yum -y nainstalovat nginx

Nyní musíme přidat další repozitář pro php7-fpm. Existuje několik repozitářů pro PHP 7, které jsou k dispozici na internetu, zde budu používat webtatic repository.

Přidejte webový archiv:

rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm

Dále nainstalujte PHP7-FPM s dalšími balíčky pro instalaci ownCloud.

yum -y nainstalovat php70w-fpm php70w-cli php70w-gd php70w-mcrypt php70w-mysql php70w-hruška php70w-xml php70w-mbstring php70w-pdo php70w-json

Zkontrolujte verzi PHP ze serverového terminálu, abyste zajistili, že instalace byla úspěšná.

php-v

Zkontrolujte verzi PHP

Krok 2 - Konfigurace PHP7-FPM

V tomto kroku nastavíme php-fpm pro spuštění s nginx. Php7-fpm se spustí pod uživatelem nginx a naslouchá na portu 9000.

Upravte výchozí konfiguraci php7-fpm pomocí vim.

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

V řádku 8 a 10 změňte uživatele a skupinu na hodnotu 'Nginx".

user = nginx
skupina = nginx

V řádku 22 se ujistěte, že php-fpm běží pod portem 9000 serveru.

poslouchat = 127.0.0.1: 9000

Rozbalte řádky 366-370 pro proměnné prostředí systému php-fpm.

env [HOSTNAME] = $ HOSTNAME
env [PATH] = / usr / local / bin: / usr / bin: / bin
env [TMP] = / tmp
env [TMPDIR] = / tmp
env [TEMP] = / tmp

Uložte soubor a opusťte editor

Potom vytvořte nový adresář pro cestu relace v adresáři "/ var / lib /" a změňte vlastníka na uživatele 'nginx'.

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

Spusťte php-fpm a nginx a přidejte jej tak, aby začaly v době spuštění.

sudo systemctl spustit php-fpm
sudo systemctl spustit nginx
sudo systemctl povolit php-fpm
sudo systemctl povolit nginx

Nakonfigurujte PHP-FPM na CentOS

Konfigurace PHP7-FPM je hotová.

Krok 3 - instalace a konfigurace aplikace MariaDB

VlastníCloud podporuje databázi PostgreSQL a MySQL, v tomto tutoriálu použijeme MariaDB pro vlastní databázi Clloud. Nainstalujte balíček mariadb-server z repozitáře CentOS příkazem yum.

yum -y nainstalovat mariadb mariadb-server

Spusťte službu MariaDB a nakonfigurujte kořenové heslo MariaDB.

systemctl start mariadb
mysql_secure_installation

Na požádání zadejte své root heslo.

Nastavit heslo uživatele root? [Y / N] Y
Nové heslo:
Znovu zadejte nové heslo:
Chcete odstranit anonymní uživatele? [Y / N] Y
Zakázat vzdáleně přihlášení do kořenového adresáře? [Y / N] Y
Odebrat zkušební databázi a získat přístup k ní? [Y / N] Y
Obnovit tabulky oprávnění nyní? [Y / N] Y

Heslo uživatele MariaDB bylo nastaveno, nyní se můžeme přihlásit do prostředí MySQL a vytvořit novou databázi a uživatele pro ownCloud. Vytvoříme novou databázi "

Vytvoříme novou databázi "owncloud_db"pod uživatelem"ownclouduser's heslem'ownclouduser @'. Pro instalaci si prosím vyberte jiné a bezpečné heslo!

mysql -u root -p
Napište heslo

Zadejte níže uvedený dotaz MySQL a vytvořte novou databázi a nového uživatele.

vytvořit databázi owncloud_db;
vytvořit uživatele [chráněného e-mailem] identifikovaného pomocí 'ownclouduser @';
udělit všechna práva na owncloud_db. * na [email protected] identifikované pomocí 'ownclouduser @';
splachovací výsady;

Vytvořte novou databázi MySQL pro vlastníCloud

Byla vytvořena "owncloud_db databáze" s uživatelem "ownclouduser".

Krok 4 - Vytvoření certifikátu SSL s vlastním podpisem

V tomto tutoriálu budeme spouštět vlastní cloud pod klientským protokolem https. Můžete použít volnou SSL jistotu, jako je šifrování. V tomto tutoriálu vytvořím vlastní soubor SSL certifikátu s příkazem OpenSSL.

Vytvořte nový adresář pro soubor SSL.

mkdir -p / etc / nginx / cert /

Poté vygenerujte nový certifikát SSL s příkazem OpenSSL.

openssl req -new -x509 -dní 365 -nodes -out /etc/nginx/cert/owncloud.crt -keyout /etc/nginx/cert/owncloud.key

Zadejte podrobnosti pro certifikát SSL podle požadavku příkazu OpenSSL. Potom změňte oprávnění všech souborů certifikátů na 600 s chmodem.

chmod 600 / etc / nginx / cert / *

Vytvořte certifikát SSL s vlastním podpisem

Krok 5 - Stáhnout vlastní kód

Budeme stahovat ownCloud pomocí příkazu wget, proto musíme nejprve nainstalovat balíček wget. Navíc potřebujeme rozbalit balíček.

instalovat wget unzip

Přejděte do adresáře tmp a stáhněte si nejnovější stabilní vlastníCloud 9.1 z vlastního webu s wget.

cd / tmp
wget https://download.owncloud.org/community/owncloud-9.1.2.zip

Extrahujte vlastní zip soubor a přemístěte jej do adresáře '/ usr / share / nginx / html /'.

unzip owncloud-9.1.2.zip
mv vlastní / / usr / share / nginx / html /

Dále přejděte do kořenového adresáře webu nginx a vytvořte nový adresář pro data pro vlastní cloud.

cd / usr / share / nginx / html /
mkdir -p vlastní cloud / data /

Změňte vlastníka adresáře 'owncloud' uživatele a skupiny 'nginx'.

chown nginx: nginx -R vlastnícloud /

Krok 6 - Konfigurace virtuálního hostitele OwnCloud v Nginx

V kroku 5 jsme stáhli vlastní zdrojový kód a nakonfigurovali jej tak, aby fungoval pod webovým serverem Nginx. Musíme však nakonfigurovat virtuální hostitel pro vlastníCloud.

Vytvořte nový konfigurační soubor virtuálního hostitele "owncloud.conf" v adresáři "conf.d".

cd /etc/nginx/conf.d/
vim owncloud.conf

Vložte konfiguraci virtuálního hostitele vlastníCloud níže.

upstream php-handler {server 127.0.0.1: 9000; #server unix: /var/run/php5-fpm.sock; } server {poslouchejte 80; server_name data.owncloud.co; # vynutit https vrátit 301 https: // $ server_name $ request_uri; } server {poslouchejte 443 ssl; server_name data.owncloud.co; ssl_certificate /etc/nginx/cert/owncloud.crt; ssl_certificate_key /etc/nginx/cert/owncloud.key; # Přidejte záhlaví pro zajištění záhlaví souvisejících s bezpečností # Před zapnutím záhlaví Strict-Transport-Security si prosím nejprve přečtěte toto téma. add_header Strict-Transport-Security "max-age = 15552000; includeSubDomains"; add_header X-Content-Type-Options nosniff; add_header X-Frame-Options "SAMEORIGIN"; add_header X-XSS-Protection "1; mode = block"; add_header X-Robots-Tag žádný; add_header X-Download-Options noopen; add_header X-Permitted-Cross-Domain-Policies no; # Cesta ke kořenovému adresáři vašeho instalačního root / usr / share / nginx / html / owncloud /; location = /robots.txt {Allow all; log_not_found off; access_log off; } # Následující pravidla 2 jsou potřebná pouze pro aplikaci user_webfinger. # Odpojte jej, pokud plánujete tuto aplikaci používat. #rewrite ^ /. dobře známý / host-meta / public.php?service=host-meta last; #rewrite ^ /. dobře známý / host-meta.json /public.php?service=host-meta-json last; location = /.well-known/carddav {return 301 $ schéma: //$host/remote.php/dav; } location = /.well-known/caldav {return 301 $ schéma: //$host/remote.php/dav; } location /.well-known/acme-challenge {} # set max upload size client_max_body_size 512M; fastcgi_buffers 64 4K; # Zakažte gzip, abyste zabránili odstranění gzip záhlaví ETag; # Rozmístění, pokud je váš server vytvořen pomocí modulu ngx_pagespeed # Tento modul není momentálně podporován. #pagespeed off; error_page 403 /core/templates/403.php; error_page 404 /core/templates/404.php; location / {rewrite ^ /index.php$uri; } umístění ~ ^ / (?: build | testy | config | lib | 3rdparty | šablony | data) / {návrat 404; } location ~ ^ / (?:. | autotest | occ | issue | indie | db_ | console) {návrat 404; } location ~ ^ / (?: index | remote | public | cron | core / ajax / update | status | ocs / v [12] | updater /.+ | ocs-provider /.+ | core / templates / 40 [34 ]). php (?: $ | /) {fastcgi_split_path_info ^ (. +. php) (/.*) $; zahrnují fastcgi_params; fastcgi_param SCRIPT_FILENAME $ document_root $ fastcgi_script_name; fastcgi_param PATH_INFO $ fastcgi_path_info; fastcgi_param HTTPS on; fastcgi_param modHeadersAvailable true; # Vyvarujte se odesílání záhlaví zabezpečení dvakrát fastcgi_param front_controller_active true; fastcgi_pass php-handler; fastcgi_intercept_errors on; fastcgi_request_buffering off; } location ~ ^ / (?: updater | ocs-provider) (?: $ | /) {try_files $ uri $ uri / = 404; index index.php; } # Přidání záhlaví řízení mezipaměti pro soubory js a css # Ujistěte se, že je POHLED umístění bloku PHP ~ *. (?: css | js) $ {try_files $ uri /index.php$uri$is_args$args; add_header Cache-Control "public, max-age = 7200"; # Přidejte záhlaví pro zajištění záhlaví souvisejících se zabezpečením (Záměrem je mít duplikované záhlaví k těm výše uvedeným) # Před zapnutím záhlaví Strict-Transport-Security si nejprve přečtěte toto téma. #add_header Strict-Transport-Security "max-age = 15552000; includeSubDomains"; add_header X-Content-Type-Options nosniff; add_header X-Frame-Options "SAMEORIGIN"; add_header X-XSS-Protection "1; mode = block"; add_header X-Robots-Tag žádný; add_header X-Download-Options noopen; add_header X-Permitted-Cross-Domain-Policies no; # Volitelné: Neodhlásit se přístup k aktivům access_log off; } location ~ *. (?: svg | gif | png | html | ttf | woff | ico | jpg | jpeg) $ {try_files $ uri /index.php$uri$is_args$args; # Volitelné: Neodhlasujte přístup k jiným aktivům access_log off; }}

Uložte soubor a opusťte editor.

Nakonec otestujte konfiguraci Nginx a ujistěte se, že nedošlo k žádné chybě, a potom restartujte službu.

nginx -t
systém restart nginx

Otestujte vlastní konfiguraci Clod Nginx

Krok 7 - Konfigurujte SELinux a FirewallD

V tomto tutoriálu opustíme SELinux v režimu vynucení, takže na jeho konfiguraci potřebujeme balíček nástrojů pro správu SELinux.

Nainstalujte nástroje správy SELinux tímto příkazem yum.

yum -y instalace policycoreutils-python

Potom spusťte příkazy níže jako kořen, aby se umožnilo vlastnímu spuštění pod SELinuxem. Nezapomeňte změnit adresář ownCloud v případě, že použijete jiný adresář pro instalaci ownCloud.

semanage fcontext -a -t httpd_sys_rw_content_t '/usr/share/nginx/html/owncloud/data(/.*)?'
semanage fcontext -a -t httpd_sys_rw_content_t '/usr/share/nginx/html/owncloud/config(/.*)?'
semanage fcontext -a -t httpd_sys_rw_content_t '/usr/share/nginx/html/owncloud/apps(/.*)?'
semanage fcontext -a -t httpd_sys_rw_content_t '/usr/share/nginx/html/owncloud/assets(/.*)?'
semanage fcontext -a -t httpd_sys_rw_content_t '/usr/share/nginx/html/owncloud/.htaccess'
semanage fcontext -a -t httpd_sys_rw_content_t '/usr/share/nginx/html/owncloud/.user.ini'
restorecon -Rv '/ usr / sdílení / nginx / html / owncloud /'

Poté povolte službu firewall a otevřete port HTTP a HTTPS pro vlastní cloud.

Spusťte bránu firewall a nakonfigurujte ji tak, aby se spustila při spuštění.

systémový start firewall
systemactl povolit bránu firewall

Otevřete porty HTTP a HTTPS příkazem firewall-cmd a znovu načtěte firewall.

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

Otevřete port HTTP a HTTPS v bráně firewall

Konfigurační část serveru je dokončena.

Krok 8 - Průvodce instalací OwnCloud

Nyní otevřete webový prohlížeč a do pole URL zadejte vlastní název domény ownCloud, mine je: data.owncloud.co, a budete přesměrováni na zabezpečené připojení HTTPS.

Zadejte nové uživatelské jméno a heslo administrátora, zadejte pověření databáze a klikněte na tlačítko "Finish Setup".

Průvodce instalací vlastníCloud

Správce souborů správce panelů.

vlastní průvodce instalacíCloud

Uživatelské nastavení.

Správce panelu a správce souborů

Nastavení administrátora.

Vlastní správce

Vlastní cloud byl úspěšně nainstalován pomocí serverů Nginx, PHP7-FPM a MariaDB na serveru CentOS 7.

Odkaz

Zdroj

Související příspěvek:

Napsat komentář

Vaše e-mailová adresa nebude zveřejněna. Povinné položky jsou označeny *