fTento tutoriál vám ukáže, jak nainstalovat FileRun na Ubuntu 20.04 LTS s webovým serverem Apache/Nginx. FileRun je alternativa Disku Google/Fotografie/Hudby s vlastním hostitelem.
Funkce FileRun
- Není vyžadován žádný index. Může přistupovat k souborům v systému souborů přímo.
- Kompatibilní s NextCloud.
- Automatické verzování souborů.
- 100% brandovatelné. Nahrajte své vlastní logo.
- Rozšiřitelné. Existuje mnoho pluginů, které umožňují vytvářet a upravovat kancelářské soubory, CAD soubory atd.
- Hostující uživatelé.
- Uspořádejte, synchronizujte a sdílejte své fotografie.
- Vestavěný hudební přehrávač a organizér
Požadavky
Abyste mohli postupovat podle tohoto návodu, budete potřebovat název domény a server. Zaregistroval jsem své doménové jméno na NameCheap, protože cena je nízká a poskytují ochranu soukromí whois doživotně zdarma. Ke spuštění FileRun stačí server s 1G RAM. Jakmile budete mít server, nainstalujte na něj Ubuntu a postupujte podle pokynů níže.
FileRun je napsán v PHP a používá databázi MySQL/MariaDB. Chcete-li postupovat podle tohoto návodu, předpokládá se, že jste již nastavili zásobník LAMP nebo LEMP na Ubuntu 20.04. Pokud ne, podívejte se na jeden z následujících výukových programů:
- Jak nainstalovat zásobník LAMP na server Ubuntu 20.04
- Jak nainstalovat zásobník LEMP na server Ubuntu 20.04
Až dokončíte nastavení zásobníku LAMP nebo LEMP, vraťte se sem a čtěte dále.
Krok 1:Stáhněte si FileRun na Ubuntu 20.04
Přihlaste se na svůj server přes SSH. Ke stažení nejnovější verze FileRun na váš server můžete vždy použít následující příkaz.
wget -O FileRun.zip https://filerun.com/download-latest
Po stažení rozbalte archiv pomocí unzip
.
sudo apt install unzip sudo mkdir -p /var/www/filerun/ sudo unzip FileRun.zip -d /var/www/filerun/
-d
volba určuje cílový adresář. Webové soubory FileRun budou extrahovány do /var/www/filerun/
. Potom musíme změnit vlastníka tohoto adresáře na www-data
aby webový server mohl zapisovat do tohoto adresáře.
sudo chown www-data:www-data /var/www/filerun/ -R
Krok 2:Vytvořte databázi a uživatele v MariaDB
Přihlaste se k databázovému serveru MariaDB pomocí následujícího příkazu.
sudo mysql
Alternativně můžete také použít tento příkaz k přihlášení.
sudo mariadb
Poté vytvořte databázi pro FileRun. Tento tutoriál pojmenuje databázi filerun
. Můžete použít jakékoli jméno.
create database filerun;
Vytvořte uživatele databáze. Opět můžete pro tohoto uživatele použít preferované jméno. Nahraďte your-password
s vaším preferovaným heslem.
create user filerun@localhost identified by 'your-password';
Udělte tomuto uživateli všechna oprávnění pro filerun
databáze.
grant all privileges on filerun.* to filerun@localhost;
Vyprázdněte oprávnění a ukončete.
flush privileges; exit;
Krok 3:Vytvořte konfigurační soubor Apache nebo Nginx
Apache
Pokud dáváte přednost použití webového serveru Apache, vytvořte konfigurační soubor virtuálního hostitele v /etc/apache2/sites-available/
adresář.
sudo nano /etc/apache2/sites-available/filerun.conf
Do souboru vložte následující text. Nahraďte filerun.example.com
s vlastním názvem domény. Nezapomeňte ve správci DNS nastavit záznam A pro název domény.
<VirtualHost *:80> ServerName filerun.example.com DocumentRoot /var/www/filerun <Directory "/var/www/filerun"> Options Indexes FollowSymLinks AllowOverride All Require all granted </Directory> ErrorLog ${APACHE_LOG_DIR}/filerun.error.log CustomLog ${APACHE_LOG_DIR}/filerun.access.log combined </VirtualHost>
Uložte a zavřete soubor. Poté povolte rewrite
modul.
sudo a2enmod rewrite
Poté povolte tohoto virtuálního hostitele.
sudo a2ensite filerun.conf
Restartujte webový server Apache, aby se změna projevila.
sudo systemctl restart apache2
Nginx
Pokud dáváte přednost použití webového serveru Nginx, vytvořte filerun.conf
soubor v /etc/nginx/conf.d/
adresář.
sudo nano /etc/nginx/conf.d/filerun.conf
Do souboru vložte následující text. Nahraďte filerun.example.com
s vlastním názvem domény. Nezapomeňte ve správci DNS nastavit záznam A pro název domény.
server { listen [::]:80; listen 80; server_name filerun.example.com; access_log /var/log/nginx/filerun.access.log; error_log /var/log/nginx/filerun.error.log; root /var/www/filerun/; index index.php index.html; location / { try_files $uri $uri/ /index.php; } error_page 404 /404.html; error_page 500 502 503 504 /50x.html; client_max_body_size 500M; location = /50x.html { root /usr/share/nginx/html; } location ~ \.php$ { fastcgi_pass unix:/run/php/php7.4-fpm.sock; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; include snippets/fastcgi-php.conf; } #enable gzip compression gzip on; gzip_vary on; gzip_min_length 1000; gzip_comp_level 5; gzip_types application/json text/css application/x-javascript application/javascript image/svg+xml; gzip_proxied any; # A long browser cache lifetime can speed up repeat visits to your page location ~* \.(jpg|jpeg|gif|png|webp|svg|woff|woff2|ttf|css|js|ico|xml)$ { access_log off; log_not_found off; expires 360d; } # disable access to hidden files location ~ /\.ht { access_log off; log_not_found off; deny all; } }
Uložte a zavřete soubor. Otestujte konfiguraci Nginx a poté znovu načtěte Nginx, aby se změny projevily.
sudo nginx -t sudo systemctl reload nginx
Krok 4:Instalace a povolení modulů PHP
Spuštěním následujících příkazů nainstalujte moduly PHP požadované nebo doporučené programem FileRun.
sudo apt install imagemagick ffmpeg php-imagick php7.4-mysql php7.4-fpm php7.4-common php7.4-gd php7.4-json php7.4-curl php7.4-zip php7.4-xml php7.4-mbstring php7.4-bz2 php7.4-intl
Filerun používá ionCube k šifrování svého souboru PHP, takže k dešifrování souborů PHP musíme nainstalovat zavaděč PHP ionCube. Stáhněte si zavaděče ionCube.
wget https://downloads.ioncube.com/loader_downloads/ioncube_loaders_lin_x86-64.tar.gz
Rozbalte jej do /usr/lib/php/
.
sudo tar -xzf ioncube_loaders_lin_x86-64.tar.gz -C /usr/lib/php
Nyní musíme povolit rozšíření PHP ioncube.
Apache
Pokud používáte Apache , poté vytvořte soubor PHP ini pro ionCube.
sudo nano /etc/php/7.4/apache2/conf.d/00-ioncube.ini
Přidejte do tohoto souboru následující řádek.
zend_extension = /usr/lib/php/ioncube/ioncube_loader_lin_7.4.so
Uložte a zavřete soubor. Potřebujeme vytvořit druhý soubor PHP ini.
sudo nano /etc/php/7.4/apache2/conf.d/filerun.ini
Přidejte následující řádky. Toto je změna některých výchozích konfigurací PHP.
expose_php = Off error_reporting = E_ALL & ~E_NOTICE display_errors = Off display_startup_errors = Off log_errors = On ignore_repeated_errors = Off allow_url_fopen = On allow_url_include = Off variables_order = "GPCS" allow_webdav_methods = On memory_limit = 128M max_execution_time = 300 output_buffering = Off output_handler = "" zlib.output_compression = Off zlib.output_handler = "" safe_mode = Off register_globals = Off magic_quotes_gpc = Off upload_max_filesize = 20M post_max_size = 20M enable_dl = Off disable_functions = "" disable_classes = "" session.save_handler = files session.use_cookies = 1 session.use_only_cookies = 1 session.auto_start = 0 session.cookie_lifetime = 0 session.cookie_httponly = 1 date.timezone = "UTC"
Uložte a zavřete soubor. Znovu načtěte Apache, aby se změny projevily.
sudo systemctl reload apache2
Nginx
Pokud používáte Nginx , upravte php.ini
soubor.
sudo nano /etc/php/7.4/fpm/php.ini
Přidejte následující řádek přímo pod [PHP]
řádek.
zend_extension=/usr/lib/php/ioncube/ioncube_loader_lin_7.4.so
Uložte a zavřete soubor. Potřebujeme vytvořit druhý soubor PHP ini.
sudo nano /etc/php/7.4/fpm/conf.d/10-ioncube.ini
Přidejte následující řádky. Toto je změna některých výchozích konfigurací PHP.
expose_php = Off error_reporting = E_ALL & ~E_NOTICE display_errors = Off display_startup_errors = Off log_errors = On ignore_repeated_errors = Off allow_url_fopen = On allow_url_include = Off variables_order = "GPCS" allow_webdav_methods = On memory_limit = 128M max_execution_time = 300 output_buffering = Off output_handler = "" zlib.output_compression = Off zlib.output_handler = "" safe_mode = Off register_globals = Off magic_quotes_gpc = Off upload_max_filesize = 20M post_max_size = 20M enable_dl = Off disable_functions = "" disable_classes = "" session.save_handler = files session.use_cookies = 1 session.use_only_cookies = 1 session.auto_start = 0 session.cookie_lifetime = 0 session.cookie_httponly = 1 date.timezone = "UTC"
Uložte a zavřete soubor. Poté restartujte Nginx a PHP7.4-FPM.
sudo systemctl restart nginx php7.4-fpm
Nyní byste měli být schopni navštívit webového průvodce instalací FileRun na adrese http://filerun.example.com
, ale před zadáním jakýchkoli informací povolme HTTPS.
Krok 5:Povolte HTTPS
Abychom šifrovali HTTP provoz, když navštívíte webové rozhraní FileRun, můžeme povolit HTTPS instalací bezplatného certifikátu TLS vydaného z Let’s Encrypt. Spuštěním následujících příkazů nainstalujte klienta Let’s Encrypt (certbot) na Ubuntu 20.04.
sudo apt update sudo apt install certbot
Pokud používáte Nginx , musíte také nainstalovat plugin Certbot Nginx.
sudo apt install python3-certbot-nginx
Poté spusťte následující příkaz pro získání a instalaci certifikátu TLS.
sudo certbot --nginx --agree-tos --redirect --hsts --staple-ocsp --email [email protected] -d filerun.example.com
Pokud používáte Apache , musíte také nainstalovat plugin Certbot Apache.
sudo apt install python3-certbot-apache
Poté spusťte tento příkaz pro získání a instalaci certifikátu TLS.
sudo certbot --apache --agree-tos --redirect --hsts --staple-ocsp --email [email protected] -d filerun.example.com
Vysvětlení:
--nginx
:Použijte plugin nginx.--apache
:Použijte plugin Apache.--agree-tos
:Souhlas se smluvními podmínkami.--redirect
:Vynutit HTTPS přesměrováním 301.--hsts
:Přidejte hlavičku Strict-Transport-Security do každé odpovědi HTTP. Vynucení prohlížeče, aby pro doménu vždy používal TLS. Chrání před odstraněním SSL/TLS.--staple-ocsp
:Umožňuje sešívání OCSP. Platná odpověď OCSP je přišita k certifikátu, který server nabízí během TLS.
Certifikát by nyní měl být získán a automaticky nainstalován.
Krok 6:Dokončete instalaci ve webovém prohlížeči
Přejděte na https://filerun.example.com
spustíte webového průvodce instalací. Poté klikněte na Next
tlačítko.
Zkontroluje, zda váš systém splňuje požadavky, jako jsou rozšíření PHP. Pokud jsou splněny všechny požadavky, klikněte na Next
.
V dalším kroku zadejte uživatelské jméno MariaDB, heslo a název databáze, které jste vytvořili v kroku 2.
Po kliknutí na tlačítko Další průvodce instalací automaticky vytvoří uživatelský účet. Klikněte na Next
pokračovat.
Na další obrazovce se můžete přihlásit pomocí účtu superuživatele. Při prvním přihlášení musíte vytvořit domovskou složku pro účet superuživatele.
Domovskou složku pro superuživatele můžete vytvořit pomocí následujícího příkazu.
sudo mkdir /var/www/superuser sudo chown www-data /var/www/superuser/ -R
Poté zadejte cestu ke složce ve webovém rozhraní FileRun. A uložte změny.
Dále přejděte na Security
-> API
aktivovat rozhraní API, aby se klientské aplikace mohly synchronizovat se serverem.
Nainstalujte klienta FileRun Desktop Sync Client
Na počítači používá FileRun klienta Nextcloud k synchronizaci se serverem. Na ploše Ubuntu můžete nainstalovat klienta Nextcloud pomocí:
sudo apt install nextcloud-desktop
Informace o tom, jak nainstalovat klientské aplikace na jiné platformy, naleznete na stránce stahování FileRun.
Jak nastavit upozornění e-mailem
Pokud existuje více než jeden uživatel, pak je dobré, aby FileRun mohl odesílat e-mailová upozornění, jako jsou e-maily pro resetování hesla. Informace o tom, jak nastavit e-mailový server, naleznete v následujícím návodu. Poznámka že vřele doporučuji provozovat poštovní server iRedMail na čerstvém čistém OS. Instalace iRedMail na OS, který má jiné webové aplikace, může selhat a pravděpodobně přerušit stávající aplikace.
- Jak snadno nastavit plně vybavený poštovní server na Ubuntu 20.04 pomocí iRedMail
Pokud nechcete provozovat svůj vlastní e-mailový server, můžete místo toho nastavit přenos SMTP. Podívejte se prosím na následující tutoriál.
- Jak nastavit přenos Postfix SMTP na serveru Ubuntu 20.04