GNU/Linux >> Znalost Linux >  >> Fedora

Jak nainstalovat soukromý server Nextcloud na Fedora 34

Nextcloud je softwarová sada aplikací pro ukládání a synchronizaci souborů a dat na více zařízeních. Jedná se o plně místní řešení pro sdílení dokumentů a spolupráci na nich, správu kalendáře a odesílání a přijímání e-mailů.

Nextcloud vám poskytuje kontrolu a ochranu vašich dat a zároveň usnadňuje komunikaci. Může zvýšit produktivitu, protože můžete přistupovat ke svým stávajícím datům na jednotce FTP, synchronizovat je a sdílet je na několika připojených zařízeních v domácnosti nebo kanceláři. Soukromí dat je navíc zásadní a provozování soukromého serveru Nextcloud je skvělý způsob, jak začít.

Instalace soukromého serveru Nextcloud na Fedora 34

Tento tutoriál ukáže, jak nainstalovat soukromý server Nextcloud na server založený na Fedoře 34. Jako předpoklady nainstalujeme webový server Apache, PHP 7.4 a server a klienta MariaDB.

Krok 1. Předpoklady

Prvním krokem je splnění následujících předpokladů.

  • Server se systémem Fedora. (Pro ukázku použiji Fedora Workstation 34)
  • Uživatel sudo bez oprávnění root.
  • Aktualizujte své balíčky.
sudo dnf update
  • Základní balíčky a závislosti.
    Váš systém již může mít některé z těchto balíčků nainstalovány.

    dnf install wget curl bzip2 nano unzip policycoreutils-python-utils -y

Poznámka:Pokud již máte nějaké předpoklady a balíčky nakonfigurované, můžete tyto kroky přeskočit.

Konfigurace brány firewall ve Fedoře

Prvním krokem je konfigurace firewallu z Firewalldu pomocí příkazového řádku. Všimněte si, že Firewalld je na serverech Fedory předinstalovaný.

Zkontrolujte stav brány firewall a ujistěte se, že je spuštěna:

sudo firewall-cmd --state
running

Dalším krokem je povolení portů HTTP a HTTPS.

Zkontrolujte povolené služby a porty:

sudo firewall-cmd --permanent --list-services
dhcpv6-client mdns samba-client ssh

Povolit porty HTTP a HTTPS.

sudo firewall-cmd --permanent --add-service=http
sudo firewall-cmd --permanent –add-service=https

Znovu zkontrolujte povolené služby a porty.

sudo firewall-cmd --permanent --list-services
dhcpv6-client http https mdns samba-client ssh

Znovu načtěte bránu firewall.

sudo systemctl reload firewalld

Nainstalujte webový server Apache

Spusťte následující příkaz s právy sudo a nainstalujte webový server Apache.

dnf install httpd

Nainstalujte PHP

Dalším krokem je instalace PHP a dalších doplňkových modulů. Pokud již máte PHP, ujistěte se, že verze PHP splňuje požadavky Nextcloud.

dnf install php php-gd php-mbstring php-intl php-pecl-apcu php-mysqlnd php-pecl-redis php-opcache php-imagick php-zip php-process

Po instalaci PHP povolte a spusťte webový server Apache:

systemctl enable --now httpd

Zkontrolujte, zda běží PHP.

php -version
PHP 7.4.19 (cli) (built: May 4 2021 11:06:37) ( NTS )
Copyright (c) The PHP Group

Instalace serveru MariaDB a klienta

Server MariaDB je náhradou za MySQL, což znamená, že příkazy ke spuštění a ovládání MariaDB a MySQL jsou stejné.

Zkontrolujte, zda máte na svém serveru výchozí server MariaDB, nebo jej nainstalujte spuštěním následujícího příkazu.

dnf install mariadb mariadb-server

Povolte a spusťte server MariaDB:

systemctl enable --now mariadb

Spusťte příkaz mysql_secure_installation k zabezpečení serveru MariaDB.

Příkaz provede výchozí konfigurace nastavení hesla uživatele root, odebrání anonymních uživatelů, zakázání vzdáleného přihlášení uživatele root a zrušení testovacích tabulek.

sudo mysql_secure_installation
[sudo] password for tuts:
Securing the MySQL server deployment.
Enter the password for user root:
The 'validate_password' component is installed.
>> The subsequent steps will run the existing configuration
of the component.
>> We are using an existing root password
Estimated strength of the password: 100
Change the password for root? ((Press YY | Y for Yes, any other key for No) : 
>>
By default, a MariaDB server installation has an anonymous user
>>> is intended only for testing.
Remove anonymous users? (Press Y y | Y for Yes, any other key for No) : y
Success.
Normally, 'root' should only be allowed to connect from
'localhost.' This ensures that someone cannot guess 
the root password from the network.
(ensure you read this policy while installing MariaDB server)
Disallow root login remotely? (Press Y y | y Y for Yes, any other key for No) : Y y
Success.
>>> (removing test database)
Remove test database and access to it? (Press Y y | Y for Yes, any other key for No) : y
>>> Dropping test database.
Success.
>>> Removing privileges on test database.
Success.
Reload privilege tables now? (Press Y y | Y for Yes, any other key for No) : y
Success. 
All done!

Vytvořte vyhrazeného uživatele a databázi pro server Nextcloud.

mysql -p

Vytvořte databázi ‚nextcloud‘.

mysql> create database nextcloud;

Vytvořte vyhrazeného uživatele MySQL, který bude spravovat databázi ‚nextcloud‘

mysql> create user 'nextclouduser'@'localhost' identified by 'SeCrEttErCeS';

Udělte všechna oprávnění k databázi (nextcloud) uživateli (nextclouduser), kterého jsme vytvořili.

mysql> grant all privileges on nextcloud_db.* to 'nextclouduser'@'localhost';

Vyprázdnit oprávnění pro změny, které jste provedli, aby se projevily.

mysql> flush privileges;

Ukončete prostředí MySQL.

mysql> exit;

Konfigurace oprávnění SELinux

Pro práci s Nextcloud musíte nakonfigurovat SELinux/oprávnění.
Spusťte následující příkazy pro základní nastavení SELinuxu. Ty by měly fungovat s vaší instalací.

Ujistěte se, že jste správně upravili cesty k souborům podle vašeho systému. Jen v případě, že jsou odlišné.

semanage fcontext -a -t httpd_sys_rw_content_t '/var/www/html/nextcloud/config(/.*)?'
semanage fcontext -a -t httpd_sys_rw_content_t '/var/www/html/nextcloud/apps(/.*)?'
semanage fcontext -a -t httpd_sys_rw_content_t '/var/www/html/nextcloud/data(/.*)?'
semanage fcontext -a -t httpd_sys_rw_content_t '/var/www/html/nextcloud/.user.ini'
semanage fcontext -a -t httpd_sys_rw_content_t '/var/www/html/nextcloud/3rdparty/aws/aws-sdk-php/src/data/logs(/.*)?'
# restorecon -Rv '/var/www/html/nextcloud/'

Další příkazy SELinux, které fungují s Nextcloud, se můžete dozvědět v konfiguraci Nextcloud SELinux.

Krok 2. Instalace serveru Nextcloud

Naším druhým krokem je stažení a instalace Nextcloud. Přejděte na oficiální webovou stránku a zkopírujte odkaz ke stažení souboru zip.
Stáhněte a rozbalte archiv Nextcloud pomocí wget. Ujistěte se, že jste v následujícím příkazu vložili zkopírovaný odkaz za wget.

wget https://download.nextcloud.com/server/releases/nextcloud-21.0.2.zip

Rozbalte archiv do adresáře „/var/www/html/“.

unzip nextcloud-21.0.2.zip -d /var/www/html/

Dalším krokem je udělit Apache přístup pro čtení a zápis do adresářového stromu Nextcloud:
Vytvořte datovou složku v adresáři „/var/www/html/nextcloud/“.

mkdir /var/www/html/nextcloud/data

Udělte Apache přístup pro čtení a zápis pomocí Chown.

chown -R apache:apache /var/www/html/nextcloud

Krok 3. Konfigurace serveru Nextcloud

Nextcloud můžete nakonfigurovat přes webové rozhraní nebo příkazový řádek.

Metoda 1:webové rozhraní

Otevřete „http://your_server_ip/nextcloud“ z vašeho webového prohlížeče.
V našem případě server běží z localhost;

http://localhost/nextcloud 
or
http://127.0.0.0/nextcloud

Metoda 2:příkazový řádek

Spusťte následující příkaz pro konfiguraci Nexcloud z příkazového řádku.

sudo -u apache php occ maintenance:install --data-dir /var/www/html/nextcloud/data/ --database "mysql" --database-name "nextcloud" --database-user "nextclouduser" --database-pass "SeCrEttErCeS" --admin-user "admin" --admin-pass "AdMin_PAssWOrd"

Zadejte přihlašovací údaje pro správu a nakonfigurujte Nextcloud pro první použití.

Koneckonců

Doporučený limit paměti PHP pro Nextcloud je 512 milionů. Proměnnou memory_limit můžete upravit v konfiguračním souboru /etc/php.ini a restartovat službu httpd.

Zabezpečení je kritické a měli byste SELinux vždy konfigurovat spíše než jej vypínat. Není dobrý nápad deaktivovat SELinux. Doporučená praxe je mít jej vždy v režimu vynucení.

Tím končí naše ukázka instalace soukromého serveru Nextcloud na server Fedora 34. Pokud narazíte na nějaké výzvy nebo problémy, neváhejte se zeptat nebo přidat komentář.


Fedora
  1. Jak nainstalovat Zend Server CE na Fedora 16 „Verne“

  2. Jak nainstalovat NextCloud 13 na Ubuntu 16.04

  3. Jak nainstalovat Locate na server Fedory

  1. Jak nainstalovat Nextcloud na server RHEL 8 / CentOS 8

  2. Jak nainstalovat Nextcloud 14 na Debian 9

  3. Jak nainstalovat NextCloud 15 na Ubuntu 18.04

  1. Jak nainstalovat Vagrant na Fedoru 34

  2. Jak nainstalovat OpenOffice 4.1.10 na Fedoru 34

  3. Jak nainstalovat AnyDesk na Fedora 35 / Fedora 34