Restricționează tipurile de fișiere permise pe grup în Nextcloud, după conținutul real

Ghid practic pentru „Tipuri de fișiere permise” în Nextcloud: nouă categorii, reguli pe grupuri și pentru linkuri publice, presetări, verificare la nivel de stocare pe web, clienți și WebDAV, cu mesaje clare de refuz.

Dacă administrezi un Nextcloud pentru o familie, un club sau o echipă mică, probabil ai trăit deja această discuție: cineva pune un fișier într-un folder partajat, iar tu observi abia mai târziu că nu era ceea ce pretindea a fi. Blocarea pe baza extensiei din Nextcloud ajută puțin, dar extensia este doar o etichetă pusă pe fișier. Redenumește un program în photo.jpg și eticheta minte. Singura modalitate fiabilă de a restricționa tipurile de fișiere în Nextcloud este să te uiți la ce conține de fapt fișierul.

Asta face Tipuri de fișiere permise. Este un plugin pentru Nextcloud care îți permite să stabilești, pe grupuri, ce feluri de fișiere pot fi încărcate, judecând după octeții fișierului (numerele sale magice) și după numele lui, împreună. Ambele trebuie să fie permise: un program redenumit în photo.jpg rămâne un program, iar o imagine numită setup.exe este tot refuzată. Acest tutorial parcurge instalarea, cele nouă categorii, regulile pe grupuri și pentru linkurile publice și modul de a testa înainte de a aplica ceva în producție.

Cerințe preliminare

  • Nextcloud 30 până la 34, cu PHP 8.1 sau mai nou.
  • Un cont MediaLab Works cu abonament activ, o licență pe viață în fereastra ei de actualizare sau perioada de probă gratuită de 30 de zile.
  • Acces la shell pe server (pentru comenzile de instalare și comanda de test occ).
  • Nimic altceva: aplicația nu are nevoie de instrumente externe.

Pasul 1: Instalează și activează aplicația

Autentifică-te în contul tău MediaLab Works, deschide Licenses și descarcă arhiva filetypes-x.y.z.tar.gz. Apoi extrage-o în folderul de aplicații, astfel încât să obții apps/filetypes/, cu proprietarul utilizatorul serverului web:

cd /var/www/nextcloud/apps
sudo tar -xzf ~/filetypes-x.y.z.tar.gz
sudo chown -R www-data:www-data filetypes

Activeaz-o din linia de comandă sau din pagina Apps:

sudo -u www-data php occ app:enable filetypes

Pasul 2: Activează licența

Deschide Administration settings → Allowed file types → License, lipește cheia de licență și salvează. Aplicația contactează serverul de licențe, leagă cheia de această instanță și afișează licența ca Active. Licența este verificată o dată pe zi; fără internet, aplicația funcționează încă 7 zile după ultima verificare reușită, apoi se oprește până când poate verifica din nou. Dacă licența expiră, nu se șterge nimic: încărcările pur și simplu nu mai sunt verificate, iar regulile tale se aplică din nou când licența este validă.

Pasul 3: Cunoaște cele nouă categorii

Înainte să bifezi căsuțe, e util să știi cum sunt sortate fișierele. Aplicația grupează totul în nouă categorii:

  • Images
  • Videos
  • Audio
  • Documents — text simplu, text bogat, fișiere office, PDF, cărți electronice, e-mail și altele asemănătoare
  • Archives
  • Code and web pages — HTML, JavaScript, scripturi, SVG și altele asemănătoare
  • Programs and installers — executabile Windows și Linux, APK, deb/rpm/AppImage, JAR și altele asemănătoare
  • Fonts
  • Anything else

Două dintre ele merită atenție. Fișierele SVG intră la Code and web pages, nu la imagini, pentru că asta sunt. Iar un script salvat ca .txt rămâne un script, așa că nu va trece drept document. Ține cont de ambele când îți concepi regulile.

Pasul 4: Stabilește reguli pe grupuri

Deschide Administration settings → Allowed file types. Pagina afișează un rând pentru fiecare grup, o căsuță pentru fiecare categorie și o opțiune No restriction pe fiecare rând. Bifează ce pot încărca membrii acelui grup.

Câteva puncte ușor de ratat:

  • Regulile se combină permisiv. O persoană din mai multe grupuri poate încărca orice poate oricare dintre grupurile sale. Dacă un utilizator restricționat poate încărca totuși orice, caută un al doilea grup cu No restriction.
  • Administratorii nu sunt speciali. Grupul admin are nevoie de propriul rând (sau de No restriction) dacă nu vrei ca administratorii să fie limitați.
  • Everyone else este un rând separat pentru persoanele care nu sunt în niciun grup cu regulă. Este fără restricții implicit, ceea ce le păstrează comportamentul anterior.
  • Public links are propriul rând și acoperă încărcările făcute de persoane fără cont — file drop și partajări cu încărcare activată.

Pasul 5: Pornește de la o presetare

Nu trebuie să bifezi fiecare căsuță manual. Trei presetări îți oferă un punct de plecare rezonabil:

  • media only
  • media + documents
  • everything but code and programs

Alege una, ajustează rândurile pentru grupurile tale, apoi apasă Save. Regulile se aplică de la următoarea încărcare.

Pasul 6: Află unde rulează verificarea

Verificarea rulează la nivelul stocării, deci nu este legată de o singură interfață. Acoperă interfața web, clienții desktop și mobil, WebDAV, încărcările prin linkuri publice și fișierele salvate de alte aplicații (Text, Office și altele asemănătoare). Asta contează în practică: o regulă care ar păzi doar formularul de încărcare din web ar fi ușor de ocolit cu un client de sincronizare sau cu o cerere curl prin WebDAV. Aici, aceeași regulă urmărește fișierul oriunde ar ajunge.

O excepție deliberată: fișierele scrise de comenzile occ și de sarcinile de fundal nu sunt verificate, pentru că nu reprezintă cineva care încarcă.

Pasul 7: Vezi ce văd utilizatorii

Când un fișier este refuzat, este eliminat imediat, iar persoana este informată de ce, în client sau pe pagina web. Mesajul numește fișierul, categoria în care a fost detectat și ce este permis, de exemplu:

"setup.exe" is not accepted: it is Programs and installers, and you may only upload Images, Videos, Documents.

Un astfel de mesaj îți economisește un tichet de suport. Utilizatorul știe imediat dacă a ales fișierul greșit sau dacă regula este pur și simplu mai strictă decât presupunea.

Pasul 8: Testează înainte de a aplica

Există două moduri de a verifica un fișier fără să atingi regulile active.

Try it pe pagina de setări: alege un fișier de pe calculatorul tău și vezi în ce categorie se încadrează (după octeți și după nume) și ce grupuri îl pot încărca. Se trimit doar primii 64 KB, iar nimic nu este stocat.

Dintr-un terminal, pentru un fișier aflat deja pe server:

sudo -u www-data php occ filetypes:test <file> [name]

Aceasta îți spune în ce categorie se încadrează fișierul local și cine îl poate încărca. Rulează-o pe câteva dintre fișierele cu care utilizatorii tăi lucrează efectiv — un export office, un PDF scanat, un logo SVG — înainte de a înăspri regulile unui grup.

Sfaturi și depanare

Un fișier este refuzat deși extensia lui este permisă. Octeții lui spun altceva. Un script salvat ca .txt sau un SVG va fi clasificat drept Code and web pages. Verifică-l cu Try it sau cu occ filetypes:test.

Fișierele care erau deja în cloud sunt încă acolo. Așa este gândit. Regulile se aplică încărcărilor, mutărilor și copierilor noi; fișierele existente nu sunt atinse. Dacă ai nevoie de o bază curată, verifică separat conținutul vechi.

Un utilizator dintr-un grup restricționat poate încărca totuși orice. Face parte și din alt grup cu No restriction, iar grupul cel mai permisiv câștigă. Verifică mai întâi apartenența la grupuri, apoi regulile.

Linkurile publice sunt încă deschise. Ține minte că Public links are propriul rând. Înăsprirea regulilor pe grupuri nu face nimic pentru file drop anonim până nu editezi și acel rând.

Confidențialitate. Se citesc doar primii 64 KB ai unui fișier pentru a-i stabili natura, iar aplicația nu stochează nimic despre fișier.

Concluzie

Blocarea pe baza extensiei este un semn pe ușă; regulile bazate pe conținut sunt încuietoarea. Tipuri de fișiere permise îți oferă nouă categorii ușor de înțeles, reguli pe grupuri, un rând separat pentru toți ceilalți și unul pentru linkuri publice, plus aplicarea la nivelul stocării pe web, clienți și WebDAV — cu mesaje de refuz care se explică singure. Pornește de la o presetare, testează câteva fișiere reale cu Try it sau occ filetypes:test și înăsprește regulile câte un grup pe rând.

Pentru parcursul complet, vezi ghidul utilizatorului; pentru notele de versiune, changelog-ul. Mai mult material despre self-hosting găsești în Bază de cunoștințe, iar dacă ceva se comportă neașteptat, verifică FAQ sau contactează-ne.

Postarea a fost scrisă cu ajutorul AI pe baza documentației produselor noastre sau a surselor indicate și verificată automat înainte de publicare.

Citește și

Ai un server Emby, Jellyfin sau Nextcloud?

Plugin-urile și aplicațiile noastre adaugă Live TV, subtitrări, înregistrare și securitate pe serverul tău, cu probă gratuită.