Per accedere a una condivisione Windows o Samba in ownCloud Server, abilita l'app Supporto per archiviazione esterna e aggiungi un punto di montaggio di archiviazione SMB/CIFS dalla pagina di amministrazione di ownCloud. Utilizza l'indirizzo del server della condivisione, il nome della condivisione e credenziali SMB valide; in genere non è necessario montare mount.cifsprima la condivisione con Linux.
Questo metodo espone i file di rete esistenti all'interno dell'interfaccia File di ownCloud, preservando al contempo le autorizzazioni imposte dal server SMB. Le istruzioni seguenti si applicano all'interfaccia di archiviazione esterna classica di ownCloud Server, documentata per le versioni 10.16 e 11.0, e non a ownCloud Infinite Scale.
1. Verifica i prerequisiti di condivisione SMB e ownCloud
È necessario disporre dell'accesso di amministratore a ownCloud, di un server SMB raggiungibile, di una cartella condivisa a cui si ha accesso autorizzato e di un account SMB con le autorizzazioni di lettura o scrittura necessarie. Assicurarsi che la porta TCP 445 sia raggiungibile tra ownCloud e il file server, preferibilmente tramite una rete privata affidabile o una VPN, anziché esporre SMB a Internet pubblico.
A titolo di esempio concreto, supponiamo che il server SMB sia files.internal.example, la condivisione sia Projectse l'account di servizio sia ACME\oc-share. La cartella da visualizzare in ownCloud sarà Team Projects. Questi sono valori fittizi; sostituite i dati con quelli del vostro server reale.
Su un'installazione Linux convenzionale, potrebbero essere necessari il client Samba e l'estensione client PHP SMB appropriata. Ad esempio, su un host basato su Debian, installare il client di test da riga di comando:
sudo apt update
sudo apt install smbclient
Prima di installare un'estensione, verifica quale versione di PHP e quale metodo di installazione utilizza ownCloud. Le istruzioni di installazione di ownCloud Server 10.16 Ubuntu descrivono php7.4-smbclientla configurazione per PHP 7.4; utilizza quel pacchetto solo se corrisponde al tuo ambiente PHP e al repository effettivamente supportati. Dopo aver abilitato l'estensione, riavvia il servizio PHP o il server web su cui è in esecuzione ownCloud e verifica il caricamento del modulo con il comando `pthread` php -m | grep -i smbclient. Il comando `pthread` verifica PHP tramite riga di comando; il processo web può avere una configurazione diversa.
Per l'immagine Docker ufficiale di ownCloud Server 11.0, la documentazione SMB afferma che le dipendenze SMB di runtime sono incluse, sebbene l'immagine non includa il smbclientcomando per i test manuali. Non dare per scontato che gli stessi comandi host-package siano validi all'interno di ogni immagine container.
2. Verifica l'accesso dal server ownCloud
Prima di modificare le impostazioni di ownCloud, testa la risoluzione dei nomi, l'autenticazione e la condivisione stessa dall'host di ownCloud o dal suo ambiente di rete. Su un host con smbclient, esegui:
smbclient -L //files.internal.example -U 'ACME/oc-share'
smbclient //files.internal.example/Projects -U 'ACME/oc-share' -c 'ls'
Quando richiesto, inserisci la password dell'account SMB anziché inserirla nella riga di comando. Il primo comando elenca le condivisioni disponibili; il secondo verifica l'accesso alla condivisione specifica. L'elenco non costituisce prova dei permessi di scrittura. Se il comando non riesce, prima di procedere, verifica il nome o l'indirizzo IP del server, l'ortografia della condivisione, le credenziali, il dominio, le regole del firewall e i permessi effettivi sul server Windows o Samba. La guida ownCloud SMB/CIFS consiglia inoltre di eseguire dei test smbclientprima della configurazione.
3. Abilita il supporto per la memoria esterna
- Accedi a ownCloud con un account amministratore.
- Apri Impostazioni → App e assicurati che il supporto per la memoria esterna sia abilitato.
- Vai su Impostazioni → Amministrazione → Archiviazione (le etichette di navigazione potrebbero variare leggermente a seconda dell'interfaccia).
- Se la pagina visualizza la casella di controllo " Abilita archiviazione esterna" , utilizza "Aggiungi archiviazione" per selezionare SMB/CIFS .
Non è necessario abilitare l'opzione " Consenti agli utenti di montare l'archiviazione esterna" solo per creare una condivisione gestita dall'amministratore. Questa impostazione separata permette agli utenti di creare i propri punti di montaggio, potenzialmente includendo connessioni a servizi di rete che l'amministratore altrimenti non esporrebbe. Consultare il manuale di configurazione dell'archiviazione esterna di ownCloud .
4. Configurare il mount SMB/CIFS
Nella nuova riga di archiviazione, inserisci le informazioni di connessione. L'esempio seguente mantiene separato il nome della condivisione SMB dal nome della cartella visualizzato dagli utenti in ownCloud.
| Campo ownCloud | Valore di esempio | Scopo |
| Nome della cartella | Progetti di gruppo | Nome visualizzato nell'interfaccia File |
| Archiviazione esterna | PMI / CIFS | Utilizza direttamente il backend SMB |
| Host | files.internal.example | Nome host o indirizzo IP del server SMB |
| Condividi | Progetti | Nome di condivisione remota, senza percorso UNC completo |
| Sottocartella remota | Team (facoltativo) | Limita il montaggio a una cartella esistente nella condivisione |
| Dominio | ACME (se necessario) | Dominio o gruppo di lavoro associato all'account |
| Autenticazione | Nome utente e password | Credenziali esplicite per questa condivisione |
| Disponibile per | Gruppo ownCloud selezionato | Limita la visibilità del supporto |
Inserisci oc-sharecome nome utente dopo aver specificato ACMEil dominio nel campo apposito. Non inserire nulla //files.internal.example/Projectsnel campo Host e non confondere il nome della condivisione con una sottocartella facoltativa. Per una sottocartella remota, ownCloud consente $userdi selezionare una directory esistente corrispondente al nome utente ownCloud corrente; non crea tale directory.
Per un account di servizio comune, l'utilizzo di nome utente e password è semplice, ma l'accesso è soggetto alle autorizzazioni SMB di tale account. Se gli utenti si autenticano a SMB con le proprie credenziali ownCloud corrispondenti, l' opzione "Credenziali di accesso, salva nella sessione" potrebbe essere più adatta. Tuttavia, ownCloud documenta importanti limitazioni relative alle credenziali di sessione: le scansioni in background e la condivisione diretta dello storage montato non possono funzionare come con le credenziali memorizzate. La scelta deve basarsi sui requisiti effettivi di autenticazione e scansione, non solo sulla comodità. Consultare la sezione " Meccanismi di autenticazione per lo storage esterno" .
Limita l'accesso ai soli utenti o gruppi ownCloud a cui è destinato; altrimenti, un mount creato da un amministratore è disponibile per impostazione predefinita a tutti gli utenti. Se il personale deve solo visualizzare i file, attiva l' opzione di sola lettura per il mount e applica l'accesso di sola lettura anche al server SMB. Lascia la condivisione dal mount disabilitata a meno che la tua policy di accesso non lo richieda.
5. Risolvere un problema di mount non disponibile prima di utilizzarlo
Una volta inseriti i campi obbligatori, ownCloud salva automaticamente la riga relativa allo storage. L'indicatore di stato verde indica che la connessione è pronta; un indicatore rosso o giallo richiede ulteriori verifiche. ownCloud può contrassegnare uno storage esterno non funzionante come non disponibile per dieci minuti, quindi, dopo aver risolto il problema, fai clic sull'indicatore di stato o ricarica la pagina di amministrazione.
- Autenticazione non riuscita: ricontrollare la password SMB, il dominio, il formato del nome utente, lo stato di blocco dell'account e le autorizzazioni di condivisione. Confrontare con il
smbclienttest effettuato utilizzando lo stesso account.
- Connessione scaduta: verifica DNS, routing, accesso del firewall alla porta TCP 445 e se il servizio SMB è in esecuzione. Esegui il test dalla stessa rete containerizzata se ownCloud è containerizzato.
- Il backend SMB/CIFS non è presente: verificare che l'app Supporto per l'archiviazione esterna sia abilitata e che l'estensione SMB necessaria sia caricata nel runtime PHP che gestisce ownCloud, ove applicabile.
- Alcune cartelle non sono presenti: verificare le autorizzazioni della sottocartella remota e del filesystem SMB. L'assegnazione a un gruppo ownCloud non può concedere l'accesso negato dal server remoto.
- I file modificati esternamente non vengono visualizzati: verificare la frequenza di controllo del filesystem del mount, i processi in background e il meccanismo di scansione. Le credenziali SMB di sola sessione impediscono le scansioni in background; evitare di pianificarle
occ files:scancome presunta soluzione a questa limitazione.
Un mount CIFS a livello kernel esposto a ownCloud come storage locale è solitamente la soluzione di ripiego errata. ownCloud avverte che, se un mount di questo tipo scompare, potrebbe rilevare una directory locale vuota e propagare eventi di eliminazione. Utilizzare invece il backend SMB/CIFS diretto; fare riferimento all'avviso ufficiale relativo allo storage locale .
6. Verifica la condivisione in File
Accedi come utente autorizzato in Disponibile per . Apri File e individua Progetti di team . Esplora una directory esistente e apri un piccolo file di prova. Se sia l'account SMB che il mount di ownCloud consentono la scrittura, carica un file di prova innocuo e verifica che appaia sul server SMB; eliminalo dopo la verifica. Per i mount di sola lettura, verifica invece che la modifica sia bloccata.
Infine, verifica che la riga relativa allo storage rimanga verde dopo il ricaricamento della pagina e che nessun altro utente al di fuori del gruppo autorizzato possa visualizzare il mount. Questi controlli stabiliscono che ownCloud può raggiungere la condivisione SMB corretta, che l'account remoto dispone dell'accesso previsto e che il mount è visibile solo al pubblico a cui è destinato.