Nextcloud - ghid de inițiere
Nextcloud este o platformă găzduită de dumneavoastră pentru stocarea, partajarea fișierelor și colaborare – o alternativă privată la Google Drive și Dropbox, pe care o controlați complet. Serverul vine cu Nextcloud complet instalat și configurat cu parola de administrator specificată la comandă. Trebuie doar să direcționați domeniul către adresa IP a serverului, iar cloud-ul privat este gata de folosit.
Pasul 1 – Verificați funcționarea Nextcloud
Adresa IP și parola root a serverului sunt afișate pe pagina Server Details din panoul clientului. Nextcloud este deja accesibil prin adresa IP – deschideți http://your.server.ip în browser pentru a verifica funcționarea. Ar trebui să vedeți pagina de autentificare Nextcloud.
Autentificare administrator Nextcloud:
- Nume de utilizator:
admin - Parolă: parola de administrator introdusă la comandă
Panoul de administrare este disponibil la http://your.server.ip/settings/admin.
Notă: Autentificarea în Nextcloud funcționează doar cu numele de utilizator, nu cu e-mailul. Chiar dacă adăugați ulterior un e-mail în profil, folosiți admin ca nume de autentificare.
Dacă ați plasat serverul în spatele unui router VyOS într-o rețea privată, configurați redirecționarea porturilor (22, 80 și 443) pentru ca Nextcloud să fie accesibil de pe internet sau conectați-vă prin VPN și accesați serverul pe IP-ul privat.
Pasul 2 – Direcționați domeniul către server
Accesați setările DNS ale registratorului de domeniu și creați înregistrări A care indică adresa IP a serverului:
| Tip | Nume | Valoare |
|---|---|---|
| A | @ | your.server.ip |
| A | www | your.server.ip |
Modificările DNS durează de obicei câteva minute, dar pot dura până la 24 de ore. Puteți verifica starea pe dnschecker.org.
Pasul 3 – Accesarea Nextcloud
După propagarea DNS, Nextcloud este online:
- Nextcloud:
http://yourdomain.com - Panou de administrare:
http://yourdomain.com/settings/admin
Autentificați-vă cu numele de utilizator admin și Admin Password de la Pasul 1.
Pasul 4 – Activarea SSL (recomandat)
Implicit, site-ul funcționează prin HTTP. Pentru a activa HTTPS cu un certificat gratuit Let’s Encrypt, conectați-vă prin SSH și rulați:
ssh root@your.server.ip
/opt/setup/get-ssl.sh
Scriptul va verifica DNS-ul, va obține un certificat Let’s Encrypt și va trece automat Nextcloud pe HTTPS. Va actualiza și setarea domeniului de încredere în Nextcloud. Reînnoirea automată este deja configurată.
După finalizare, Nextcloud este disponibil la https://yourdomain.com.
Pasul 5 – Conectarea stocării Fiberax S3 (opțional)
Puteți conecta stocarea Fiberax S3 la Nextcloud ca folder extern. Astfel, dumneavoastră și utilizatorii puteți stoca fișiere direct în S3 – ideal pentru backup-uri, media sau seturi mari de date.
Cerințe:
- Un serviciu activ Fiberax S3 Storage (comandați-l din panoul clientului dacă nu aveți unul)
- A bucket creat în panoul S3
- Datele dumneavoastră de acces S3 (endpoint, Access Key, Secret Key) – le găsiți la S3 Credentials în serviciul S3
5.1 Activarea aplicației External Storage
Autentificați-vă în Nextcloud ca administrator. Deschideți meniul utilizatorului din dreapta sus > Apps. Găsiți „External storage support” și faceți clic pe Activați.
5.2 Adăugarea bucket-ului S3
Accesați Settings > Administration > External storages. Faceți clic pe „Add storage” și selectați „S3 Storage”.
Completați următoarele câmpuri:
| Câmp | Valoare |
|---|---|
| Folder name | Orice nume (de ex. „S3Storage”) |
| External storage | S3 Storage |
| Authentication | Access key |
| Bucket | Numele bucket-ului din panoul S3 |
| Hostname | Endpoint-ul S3 (de ex. s3.w1.fiberax.com) |
| Port | Lăsați gol (implicit 443) |
| Region | Lăsați gol |
| Storage Class | Lăsați gol |
| Enable SSL | ✓ Bifat |
| Enable Path Style | ✓ Bifat |
| Enable multipart copy | ✓ Bifat |
| Access Key | Access Key din S3 Credentials |
| Secret Key | Secret Key din S3 Credentials |
| Available for | Toți utilizatorii sau selectați anumiți utilizatori/grupuri |
Important: Enable Path Style trebuie bifat pentru Fiberax S3. Fără el, Nextcloud nu se va putea conecta. Lăsați goale câmpurile Port, Region și Storage Class.
5.3 Verificarea conexiunii
După salvare, lângă montare apare un cerc verde dacă conexiunea reușește. Utilizatorii vor vedea folderul S3 în aplicația Files.
Sfat: Puteți folosi și conturi de serviciu S3 în locul Access Key principal. Creați în panoul S3 un cont de serviciu cu acces doar de citire sau de citire-scriere la un anumit bucket – este mai sigur pentru mediile partajate.
Pasul 6 – Folosirea unei baze de date externe (opțional)
Implicit, Nextcloud folosește o bază de date MariaDB locală pe același server. Funcționează bine în majoritatea cazurilor. Totuși, dacă trebuie să scalați – de exemplu, când numărul de utilizatori sau fișiere crește semnificativ – puteți muta baza de date pe un server separat.
Avantajele unei baze de date externe:
- Baza de date primește CPU și RAM dedicate – Nextcloud rămâne rapid sub încărcare mare
- Scalare independentă – serverul bazei de date și serverul Nextcloud pot fi mărite separat
- Backup-uri separate – baza de date și aplicația se restaurează mai ușor independent
6.1 Pregătirea bazei de date externe
Pe serverul extern de baze de date (un server separat sau un serviciu Managed MySQL), creați o bază de date și un utilizator pentru Nextcloud:
CREATE DATABASE nextcloud CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;
CREATE USER 'nextcloud'@'%' IDENTIFIED BY 'your_strong_password';
GRANT ALL PRIVILEGES ON nextcloud.* TO 'nextcloud'@'%';
FLUSH PRIVILEGES;
6.2 Exportul datelor din baza de date locală
Conectați-vă prin SSH la serverul Nextcloud și exportați baza de date curentă:
sudo -u www-data php /var/www/nextcloud/occ maintenance:mode --on
source /root/.nc_credentials
mysqldump -u nextcloud -p"$nc_mysql_pass" nextcloud > /tmp/nextcloud-db.sql
6.3 Importul datelor în baza de date externă
mysql -h db.server.ip -u nextcloud -p nextcloud < /tmp/nextcloud-db.sql
6.4 Actualizarea configurației Nextcloud
Editați /var/www/nextcloud/config/config.php și modificați setările bazei de date:
'dbtype' => 'mysql',
'dbhost' => 'db.server.ip',
'dbname' => 'nextcloud',
'dbuser' => 'nextcloud',
'dbpassword' => 'your_strong_password',
Înlocuiți db.server.ip cu adresa IP a serverului de baze de date. Dacă ambele servere sunt în același centru de date virtual, folosiți IP-ul privat pentru performanță și securitate mai bune.
6.5 Verificarea și dezactivarea bazei de date locale
sudo -u www-data php /var/www/nextcloud/occ maintenance:mode --off
sudo -u www-data php /var/www/nextcloud/occ status
Dacă Nextcloud afișează installed: true și funcționează în browser, migrarea a reușit. Apoi puteți opri MariaDB local pentru a elibera resurse:
systemctl stop mariadb
systemctl disable mariadb
Important: Păstrați backup-ul /tmp/nextcloud-db.sql până confirmați că totul funcționează. Asigurați-vă că serverul extern de baze de date permite conexiuni de la adresa IP a serverului Nextcloud.
După instalare
Reînnoirea certificatului SSL
Certificatele Let’s Encrypt sunt valabile 90 de zile. Reînnoirea automată este configurată. O puteți testa cu:
certbot renew --dry-run
Fail2Ban – protecție împotriva atacurilor brute-force
Serverul dumneavoastră include Fail2Ban preconfigurat pentru a proteja atât SSH, cât și Nextcloud împotriva atacurilor brute-force.
| Regulă | Încercări maxime | Durata blocării |
|---|---|---|
| SSH | 5 autentificări eșuate | 10 minute |
| Nextcloud | 5 autentificări eșuate | 1 oră |
Comenzi utile:
# Check banned IPs
fail2ban-client status nextcloud
fail2ban-client status sshd
# Unban an IP
fail2ban-client set nextcloud unbanip 1.2.3.4
Dacă vă blocați accidental, conectați-vă prin consola VNC din panoul clientului și deblocați-vă IP-ul.
Administrarea serviciilor
Stack-ul Nextcloud rulează prin systemd. Comenzi uzuale:
# Check service status
systemctl status apache2
systemctl status mariadb
systemctl status redis
systemctl status php8.3-fpm
# Restart services
systemctl restart apache2
systemctl restart php8.3-fpm
Actualizarea Nextcloud
Când apare o versiune nouă, veți vedea o notificare în panoul de administrare. Puteți actualiza prin interfața web (Settings > Administration > Overview) sau prin SSH:
sudo -u www-data php /var/www/nextcloud/updater/updater.phar
sudo -u www-data php /var/www/nextcloud/occ upgrade
Clienți desktop și mobili
Nextcloud oferă clienți de sincronizare pentru toate platformele:
- Desktop: Windows, macOS, Linux – descărcați de la nextcloud.com/install
- Mobil: Android (Google Play / F-Droid), iOS (App Store)
La configurarea clientului, introduceți URL-ul Nextcloud (de ex. https://yourdomain.com) și autentificați-vă cu datele dumneavoastră.
Adăugarea utilizatorilor
Accesați Settings > Users pentru a crea conturi pentru echipă. Fiecare utilizator primește propriul spațiu de stocare, calendar, contacte și acces la folderele partajate, inclusiv stocarea S3.
Aplicații utile
Extindeți Nextcloud din App Store integrat (Apps din meniul din dreapta sus):
| Aplicație | Ce face |
|---|---|
| Nextcloud Office | Editarea documentelor, foilor de calcul și prezentărilor în browser |
| Talk | Apeluri audio/video și chat |
| Calendar (preinstalat) | Calendare partajate cu sincronizare CalDAV |
| Contacts (preinstalat) | Agendă cu sincronizare CardDAV |
| Deck | Panouri de proiect în stil Kanban |
| Notes | Notițe în Markdown |
Ce este preconfigurat
- Cache: APCu (local) + Redis (distribuit și blocarea fișierelor) prin Unix socket
- Joburi de fundal: Cron de sistem la fiecare 5 minute (recomandat de Nextcloud)
- Încărcări de fișiere: Până la 16 GB per fișier
- Memorie PHP: 512 MB
- Aplicații: Calendar și Contacts sunt preinstalate
Datele de acces la server
Datele de acces MariaDB sunt stocate în /root/.nc_credentials. Nextcloud este preconfigurat să le folosească.
Software inclus
| Componentă | Versiune |
|---|---|
| Ubuntu | 24.04 LTS |
| Apache | 2.4 |
| MariaDB | 10.11 |
| PHP (FPM) | 8.3 |
| Redis | 7.0 |
| Nextcloud | Cea mai recentă |
| Certbot | Cea mai recentă |
| Fail2Ban | 1.0 |
Depanare
| Problemă | Soluție |
|---|---|
| Nextcloud nu se deschide în browser | Verificați dacă înregistrarea A a domeniului indică IP-ul serverului. Folosiți dnschecker.org pentru verificare |
| Scriptul SSL eșuează | Probabil DNS-ul nu s-a propagat încă. Așteptați 10-15 minute și rulați /opt/setup/get-ssl.sh din nou |
| „Access through untrusted domain” | Domeniul nu este în lista de încredere. Conectați-vă prin SSH și rulați:sudo -u www-data php /var/www/nextcloud/occ config:system:set trusted_domains 1 --value=yourdomain.com |
| Stocarea S3 afișează un indicator roșu/galben | Verificați că este bifat Enable Path Style . Verificați endpoint-ul, numele bucket-ului și datele de acces în panoul S3 |
| Ați uitat parola de administrator | Conectați-vă prin SSH și rulați:sudo -u www-data php /var/www/nextcloud/occ user:resetpassword admin |
| Performanță slabă | Cache-ul Redis este preconfigurat. Verificați dacă rulează: systemctl status redis |
| Nu se pot încărca fișiere mari | Limitele PHP sunt preconfigurate la 16 GB. Dacă trebuie să le ajustați, editați /etc/php/8.3/fpm/conf.d/99-nextcloud.ini și reporniți PHP-FPM: systemctl restart php8.3-fpm |
| Blocat de Fail2Ban | Deblocați-vă IP-ul prin consola VNC din panoul clientului |
| Ați uitat parola root | Resetați-o prin consola VNC din panoul clientului |