Nextcloud je Open Source sada softwaru klient-server pro vytváření a používání služeb hostování souborů. Jedná se o bezplatné řešení cloudového úložiště s vlastním hostováním podobné Dropboxu, Disku Google atd. S Nextcloud se nemusíte starat o drahé alternativy a protože budete hostovat své vlastní soubory, nemusíte se obávat o soukromí nebo o někom, kdo shromažďuje vaše údaje.
NextCloud lze nainstalovat na soukromý domácí server nebo virtuální privátní server v cloudu. Soubory lze poté nahrát a poté synchronizovat na místní plochu, notebook nebo dokonce smartphone. Tímto způsobem máte plnou kontrolu nad svými daty.
Funkce NextCloud
- NextCloud má synchronizační klienty pro Linux, Mac OS, Windows, Android a IOS
- End to end šifrování – soubory jsou při nahrávání na server šifrovány
- NextCloud je zdarma a má otevřený zdroj
- Lze integrovat s online kancelářským balíkem (Collobora, OnlyOffice), takže můžete vytvářet a upravovat soubory doc, ppt, xls přímo z NextCloud.
- Obchod s aplikacemi obsahuje stovky aplikací pro rozšíření funkcí (jako je aplikace kalendáře, aplikace na psaní poznámek, aplikace pro videokonference atd.).
Související obsah
- Jak nainstalovat a nakonfigurovat NextCloud na Debian 11 a LEMP
Předpoklady
Chcete-li postupovat podle tohoto průvodce, ujistěte se, že máte:
- Aktuální server založený na Rocky Linux/RHEL 8
- Přístup k internetu
- Root přístup k serveru nebo sudo přístup
Obsah
- Ujistěte se, že jsou serverové balíčky aktuální
- Zakažte SELinux
- Instalace mysql
- Vytvoření uživatele mysql pro NextCloud
- Instalace PHP
- Nainstalujte Nginx
- Stáhněte si a nakonfigurujte Nextcloud
- Nakonfigurujte Nginx pro obsluhu NextCloud z virtuálního hostitele
- Aktualizujte konfiguraci PHP
- Přístup k Nextcloud z webové adresy URL
Ujistěte se, že serverové balíčky jsou aktuální
Ujistíme se, že naše serverové balíčky jsou aktuální pomocí tohoto příkazu:
sudo dnf -y update
Zakázat SELinux
Dále deaktivujeme SELinux. Nastavíme SELinux na permisivní. Upravte tento soubor:
vim /etc/selinux/config
Pak aktualizujte tento řádek:
SELINUX=permisive
Instalace mysql
Mysql je populární systém pro správu relací. Je k dispozici ve výchozích úložištích jako mysql-server
.
Nainstalujte jej pomocí tohoto příkazu:
sudo dnf install mysql-server
Budete muset spustit a povolit, abyste zajistili, že se vždy spustí při spuštění serveru.
sudo systemctl start mysql
sudo systemctl status mysqld
Jakmile je služba mysql spuštěna, musíte ji zabezpečit. Mysql poskytuje nástroj příkazového řádku, který to udělá:
sudo mysql_secure_installation
Výše uvedený příkaz vás provede výzvami k zabezpečení a nastavení hesla uživatele root pro instanci mysql.
Další informace o instalaci a nastavení mysql naleznete v této příručce zde
Vytvoření uživatele mysql pro NextCloud
Vždy se doporučuje mít vyhrazeného uživatele pro každou aplikaci, která se připojuje k DB. Podívejte se na tohoto průvodce správou oprávnění mysql zde. Nastavíme databázi, uživatele a heslo, které bude nextcloud používat:
Připojte se k serveru mysql:
mysql -u root -p
Po zadání hesla zadejte do výzvy mysql následující:
create database nextcloud;
create user 'nextcloud_user'@'%' identified by 'S0mStrongPa$$word';
grant all privileges on nextcloud.* to 'nextcloud_user'@'%';
Nyní, když jsme nakonfigurovali naše připojení mysql, pojďme k další části, kde nainstalujeme a nakonfigurujeme PHP a Nginx.
Instalace PHP
NextCloud funguje dobře s PHP 6.4. Chcete-li nainstalovat php 7.4, musíme povolit úložiště remi, abychom získali nejnovější verzi.
Povolte Remi repo pomocí tohoto příkazu:
sudo dnf install dnf-utils http://rpms.remirepo.net/enterprise/remi-release-8.rpm
Povolte php 7.4 pomocí modulu dnf:
sudo dnf module enable php:remi-7.4
Poté nainstalujte php a závislosti
sudo dnf install -y php php-gd php-curl php-zip php-dom php-xml php-simplexml php-mbstring php-intl php-json
Další informace o nastavení Apache a PHP naleznete v tomto průvodci zde. Podívejte se na vydání remi zde.
Instalace Nginx
Dále nainstalujme Nginx do našeho systému. Tento příkaz použijte k instalaci nginx
sudo dnf install -y nginx
Spusťte a zkontrolujte stav Nginx
$ sudo systemctl start nginx
$ sudo systemctl status nginx
● nginx.service - The nginx HTTP and reverse proxy server
Loaded: loaded (/usr/lib/systemd/system/nginx.service; disabled; vendor preset: disabled)
Drop-In: /usr/lib/systemd/system/nginx.service.d
└─php-fpm.conf
Active: active (running) since Fri 2021-10-15 17:33:39 UTC; 7s ago
Process: 1138614 ExecStart=/usr/sbin/nginx (code=exited, status=0/SUCCESS)
Process: 1138607 ExecStartPre=/usr/sbin/nginx -t (code=exited, status=0/SUCCESS)
Process: 1138605 ExecStartPre=/usr/bin/rm -f /run/nginx.pid (code=exited, status=0/SUCCESS)
Main PID: 1138615 (nginx)
Tasks: 3 (limit: 23800)
Memory: 5.3M
CGroup: /system.slice/nginx.service
├─1138615 nginx: master process /usr/sbin/nginx
├─1138616 nginx: worker process
└─1138617 nginx: worker process
Oct 15 17:33:38 test-app-server systemd[1]: Starting The nginx HTTP and reverse proxy server...
Oct 15 17:33:39 test-app-server nginx[1138607]: nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
Active: active (running)
označte, že služba je nyní spuštěna.
Stáhněte si a nakonfigurujte Nextcloud
Nyní, když jsme úspěšně nakonfigurovali LEMP server v našem systému, stáhněte si a nastavte NextCloud. Nejnovější verzi NextCloud můžete získat z instalační stránky NextCloud. Tento příkaz použijte ke stažení serveru NextCloud:
cd /tmp
curl -LO https://download.nextcloud.com/server/releases/nextcloud-22.2.0.zip
Nyní se změňme na cestu k adresáři pro obsluhu NextCloud v /var/www
poté tam rozbalte stažený soubor:
cd /var/www
sudo unzip /tmp/nextcloud-22.2.0.zip
sudo chown -R nginx:nginx nextcloud
sudo chmod -R 755 nextcloud
Nextcloud vyžadoval adresář pro uchování dat. Vytvořte tedy datový adresář a nastavte správná oprávnění pro adresář nextcloud
sudo mkdir -p /var/nextcloud/data sudo chown -R nginx:nginx /var/nextcloud sudo chmod -R 755 /var/nextcloud
Nakonfigurujte Nginx pro obsluhu NextCloud z virtuálního hostitele
Podařilo se nám stáhnout obsah NextCloud do /var/www/nextcloud
. Dalším krokem je nastavení Nginx, aby jej obsluhoval.
Pojďme vytvořit virtuální web v adresáři, kde nginx poskytuje obsah zde /etc/nginx/conf.d
:
sudo vim /etc/nginx/conf.d/nextcloud.conf
Přidejte následující obsah:
server {
listen 80;
server_name nextcloud.citizix.com;
root /var/www/nextcloud;
index index.php;
location / {
try_files $uri $uri/ /index.php?$args;
}
location = /favicon.ico {
log_not_found off;
access_log off;
}
location ~* \.(js|css|png|jpg|jpeg|gif|ico)$ {
expires max;
log_not_found off;
}
location = /robots.txt {
allow all;
log_not_found off;
access_log off;
}
location ~ \.php$ {
include /etc/nginx/fastcgi_params;
fastcgi_pass unix:/run/php-fpm/www.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
}
}
Aktualizace konfigurace PHP
Dále se postaráme o nějakou konfiguraci php. K poskytování obsahu php používáme php-fpm. Ve výchozím nastavení je nakonfigurován tak, aby fungoval s Apache, takže aktualizujme uživatele a skupinu v souboru /etc/php-fpm.d/www.conf
na nginx.
Upravte soubor
vim /etc/php-fpm.d/www.conf
Pak aktualizujte tyto
user = nginx
group = nginx
Změňme také adresář relace, abychom se mohli přihlásit. Aktualizujte adresář relace PHP, aby jej vlastnil nginx:
sudo chown nginx.nginx -R /var/lib/php/session/
Jakmile budou provedeny výše uvedené změny, musíme restartovat server nginx a server php-fom. K tomu použijte tyto příkazy v terminálu.
sudo systemctl restart php-fpm nginx
Přístup k Nextcloud z webové adresy URL
Poté přejděte na svou nastavenou doménu, http://nextcloud.citizix.com/nextcloud
pro mě. Budete požádáni o vytvoření uživatelského účtu. Zadejte uživatelské jméno a heslo, které bude nový uživatel používat:

Poté zadejte Podrobnosti databáze:

Poté klikněte na Dokončit. Budete přesměrováni na přihlašovací stránku, kde k přihlášení použijete údaje o vytvořeném uživateli. Po úspěšném přihlášení získáte Dashboard.
Závěr
V této příručce se nám podařilo nastavit LEMP na serveru Rocky Linux 8 nebo RHEL, aby obsluhoval cloud Next.