Accedere ai file di Nextcloud usando WebDAV

Nextcloud supporta totalmente il protocollo WebDAV, e potrai connetterti e sincronizzare i tuoi file di Nextcloud tramite WebDAV. In questo capitolo puoi imparare come connettere Linux, MacOS, Windows, e i dispositivi mobili al tuo server Nextcloud tramite WebDAV. Prima di configurare WebDAV, vediamo quali sono i modi consigliati per connettere i dispositivi client ai tuoi server Nextcloud.

Nota

Nel seguenti esempi, devi sostituire esempio.com/nextcloud con l’URL del tuo server Nextcloud (omettendo la parte del percorso se “l’installazione è alla radice del tuo dominio”), e «NOMEUTENTE» con il nome utente dell’utente che si connette.

Vedi l’URL di webdav (in basso a sinistra nelle impostazioni) nel tuo Nextcloud.

Nota

Negli esempi seguenti, devi utilizzare una password di applicazione per l’accesso, che è possibile generare nelle impostazioni di sicurezza.

Client Nextcloud Desktop e mobile

Il modo consigliato per sincronizzare un PC desktop con un server Nextcloud è utilizzando il client di sincronizzazione di Nextcloud/ownCloud. Puoi configurare il client in modo da salvare i file in qualunque cartella locale e puoi scegliere quali cartelle presenti sul server Nextcloud sincronizzare. Il client mostra lo stato di connessione attuale e registra tutte le attività, così puoi sempre sapere quale file remoto è stato scaricato sul tuo PC e puoi verificare che i file creati e aggiornati sul tuo PC locale siano propriamente sincronizzati con il server.

Il modo consigliato per sincronizzare il server Nextcloud con dispositivi Android e Apple iOS è tramite l’utilizzo di applicazioni per dispositivi mobili.

Per connettere la tua applicazione per dispositivi mobili a un server Nextcloud usa solo l’URL di base e la cartella:

example.com/nextcloud

In aggiunta alle applicazioni per dispositivi mobili fornite da Nextcloud o ownCloud, puoi usare altre applicazioni per connetterti a Nextcloud dal tuo dispositivo mobile usando WebDAV. WebDAV Navigator è una buona applicazione (proprietaria) per dispositivi Android e iPhones. L’URL da usare su questi è:

example.com/nextcloud/remote.php/dav/files/USERNAME/

Configurazione WebDAV

Se preferisci, puoi anche connettere il tuo PC desktop al tuo server Nextcloud utilizzando il protocollo WebDAV invece che usare una applicazione client specifica. Web Distributed Authoring and Versioning (WebDAV) è un’estensione Hypertext Transfer Protocol (HTTP) che rende facile la creazione, lettura e modifica di file sui server Web. Con WebDAV puoi accedere alle tue risorse condivise di Nextcloud su Linux, macOS e Windows come qualunque rete remota di condivisione, e rimanere sincronizzati.

Accedere ai file usando Linux

Puoi accedere ai file nel sistema operativo Linux utilizzando i seguenti metodi.

Gestore file Nautilus

When you configure your Nextcloud account in the GNOME Control Center, your files will automatically be mounted by Nautilus as a WebDAV share, unless you deselect file access.

Puoi anche montare i tuoi file Nextcloud manualmente. Usa il protocollo davs:// per connettere il gestore file Nautilus alle tue risorse condivise Nextcloud:

davs://example.com/nextcloud/remote.php/dav/files/USERNAME/

Nota

Se la tua connessione al server non è protetta con HTTPS, usa dav:// invece che davs://:

screenshot della configurazione del file manager Nautilus per l'utilizzo di WebDAV

Nota

Lo stesso metodo funziona per gli altri gestori di file che usano GVfs, come Caja di Mate e Nepomuk di Cinnamon.

Accedere ai file con KDE e il gestore file Dolphin

Per accedere ai tuoi file Nextcloud usando il gestore file Dolphin in KDE, usa il protocollo webdav://:

webdav://example.com/nextcloud/remote.php/dav/files/USERNAME/
screenshot della configurazione del file manager Dolphin per l'utilizzo di WebDAV

Puoi creare un collegamento permanente al tuo server Nextcloud:

  1. Apri Dolphin e fai clic su «Rete» nella colonna di sinistra «Risorse».

  2. Fai clic sull’icona etichettata Aggiungi una cartella di rete. La seguente finestra di dialogo dovrebbe apparire con WebDAV già selezionato.

  3. Se WebDAV non è selezionato, selezionalo.

  4. Fai clic su Avanti.

  5. Inserisci le seguenti impostazioni:

    • Nome: Il nome che vorresti vedere nel segnalibro Risorse, ad esempio Nextcloud.

    • Utente: il nome utente Nextcloud che hai utilizzato per effettuare l’accesso, ad esempio admin.

    • Server: Il nome dominio di Nextcloud, ad esempio esempio.com (senza http:// prima o directory dopo).

    • Cartella – Inserisci il percorso nextcloud/remote.php/dav/files/NOMEUTENTE/.

  6. (Opzionale) Seleziona la casella di selezione «Crea icona» per visualizzare un segnalibro nella colonna Risorse.

  7. (Opzionale) Fornisci qualunque impostazione speciale o un certificato SSL nella casella «Porta e cifrato».

Creare montaggi WebDAV sulla riga di comando Linux.

Puoi creare il montaggio di WebDAV dalla riga di comando di Linux. Ciò è utile se preferisci accedere a Nextcloud come qualunque altro filesystem remoto montato. Il seguente esempio mostra come creare un montaggio personale e averlo montato automaticamente ogni qual volta accedi al tuo Linux computer.

  1. Installa il driver del filesystem davfs2 di WebDAV, che ti consente di montare le condivisioni WebDAV come ogni altro filesystem remoto. Usa questo comando per installarlo su Debian/Ubuntu:

    apt-get install davfs2
    
  2. Usa questo comando per installarlo su CentOS, Fedora, e openSUSE:

    yum install davfs2
    
  3. Aggiungi il tuo utente al gruppo davfs2:

    usermod -aG davfs2 <username>
    
  1. Poi, crea una cartella nextcloud nella tua cartella home per il punto di mount, e .davfs2/ per il tuo file di configurazione personale:

    mkdir ~/nextcloud
    mkdir ~/.davfs2
    
  2. Copia /etc/davfs2/secrets in ~/.davfs2:

    cp  /etc/davfs2/secrets ~/.davfs2/secrets
    
  3. Impostati come il proprietario e modifica i permessi di lettura-scrittura disponibili solo al proprietario.

    chown <linux_username>:<linux_username> ~/.davfs2/secrets
    chmod 600 ~/.davfs2/secrets
    
  4. Aggiungi le tue credenziali di accesso di Nextcloud alla fine del file secrets, usando l’URL del tuo server Nextcloud e il nome utente e la password di Nextcloud.

    https://example.com/nextcloud/remote.php/dav/files/USERNAME/ <username> <password>
    or
    $PathToMountPoint $USERNAME $PASSWORD
    for example
    /home/user/nextcloud john 1234
    
  5. Aggiungi le informazioni di montaggio a /etc/fstab:

    https://example.com/nextcloud/remote.php/dav/files/USERNAME/ /home/<linux_username>/nextcloud
    davfs user,rw,auto 0 0
    
  6. Allora verifica che si monti e si autentichi eseguendo i seguenti comandi. Se l’hai impostato correttamente non avrai bisogno dei permessi di root.

    mount ~/nextcloud
    
  7. Dovresti essere in grado anche di smontarlo:

    umount ~/nextcloud
    

Ora, ogni volta che accederai al tuo sistema Linux, la tua condivisione di Nextcloud dovrebbe essere montata automaticamente tramite WebDAV nella tua cartella ~/nextcloud. Se preferisci montarla manualmente, cambia auto in noauto in «/etc/fstab.

Problemi noti

Problema

Risorsa temporaneamente non disponibile

Soluzione

Se riscontri problemi quando crei un file in una cartella, modifica /etc/davfs2/davfs2.conf e aggiungi:

use_locks 0

Problema

Avvisi relativi al certificato

Soluzione

Se utilizzi un certificato di sicurezza auto-firmato, avrai un avviso. Per modificarlo, devi configurare davfs2 in modo da riconoscere il tuo certificato. Copia miocertificato.pem in /etc/davfs2/certs/. Poi modifica /etc/davfs2/davfs2.conf ed elimina il commento della linea servercert. Ora aggiungi il percorso della tua certificazione come nell’esempio.

servercert /etc/davfs2/certs/mycertificate.pem

Accedere ai file usando macOS

Nota

Il Finder di MacOS è soggetto ad una serie di errori di implementazione e dovrebbe essere usato solo se il server Nextcloud è basato su Apache e mod_php, o Nginx 1.3.8+. Alternativi client compatibili con macOS in grado di accedere alle condivisioni Nextcloud includono applicazioni open source come Cyberduck (leggi le istruzioni qui) e Filezilla. Client commerciali includono Mountain Duck, Forklift, Transmit, e Commander One.

Accedere ai file tramite macOS Finder:

  1. Dalla barra dei menu in alto di Finder, scegli Vai > Connettiti al server…:

Screenshot dell'inserimento dell'indirizzo del tuo server Nextcloud su macOS
  1. Quando si apre la finestra Connettiti al server…, digita il tuo indirizzo WebDAV del server Nextcloud nel campo Indirizzo server:, ossia:

    https://cloud.YOURDOMAIN.com/remote.php/dav/files/USERNAME/
    
Screenshot: inserisci l'indirizzo del server Nextcloud nella finestra di dialogo "Connetti al server..."
  1. Fai clic su Connetti. Il tuo server WebDAV dovrebbe apparire sul desktop come un’unità di disco condivisa.

Accedere ai file usando Microsoft Windows

Se utilizzi l’implementazione Windows nativa di WebDAV, puoi associare Nextcloud ad un nuovo drive utilizzando Windows Explorer. L’associazione a un drive ti consente di cercare i file archiviati su un server Nextcloud nello stesso modo in cui cercheresti i file archiviati in un drive di rete associato.

L’utilizzo di questa funzionalità richiede una connessione alla rete. Se vuoi archiviati i tuoi file non in linea, usa il Client Desktop per sincronizzare i file nel tuo Nextcloud in una o più cartelle del tuo disco fisso locale.

Nota

Windows 10 è ora impostato in modo predefinito per consentire un’autenticazione semplice se HTTPS è abilitato prima dell’associazione al tuo drive. In versioni più vecchie di Windows, devi permettere l’utilizzo dell’autenticazione semplice nel registro di Windows: avvia regedit e naviga fino a HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\WebClient\Parameters. Crea o modifica il valore DWORD BasicAuthLevel (Windows Vista, 7 and 8) o UseBasicAuth (Windows XP e Windows Server 2003) e imposta il suo valore a 1 per le connessioni SSL. Il valore 0 significa che l’autenticazione semplice è disabilitata, il valore 2 consente sia connessioni SSL che non-SSL (non consigliata). Poi esci dall’editor del registro, e riavvia il computer.

Associare drive con la riga di comando

Il seguente esempio mostra come associare un drive usando la riga di comando. Per associare il drive:

  1. Apri il prompt dei comandi su Windows.

  2. Digita la seguente riga nel prompt dei comandi per associare il drive Z del computer:

    net use Z: https://<drive_path>/remote.php/dav/files/USERNAME/ /user:youruser
    yourpassword
    

Dove <drive_path> è l’URL del tuo server Nextcloud.

Ad esempio: net use Z: https://esempio.com/nextcloud/remote.php/dav/files/NOMEUTENTE/ /user:tuoutente tuapassword

Il computer associa i file del tuo account Nextcloud al drive con lettera Z.

Nota

Anche se non consigliato, puoi anche montare il server Nextcloud usando HTTP, lasciando la connessione non cifrata. Se pianifichi di usare connessioni HTTP sui dispositivi in un luogo pubblico, consigliamo vivamente di usare un tunnel VPN per fornire la sicurezza necessaria.

Una sintassi di comando alternativa è:

net use Z: \\example.com@ssl\nextcloud\remote.php\dav /user:youruser
yourpassword

Associare i drive con Windows Explorer

Per associare un drive usando Microsoft Windows Explorer:

  1. Apri Esplora risorse sul tuo computer MS Windows.

  2. Fai clic con il tasto destro sulla voce Computer e seleziona Associa drive di rete… dal menu a tendina.

  3. Scegli un drive di rete locale a cui vuoi associare Nextcloud.

  4. Specifica l’indirizzo della tua istanza Nextcloud, seguito da /remote.php/dav/files/NOMEUTENTE/.

Ad esempio:

https://example.com/nextcloud/remote.php/dav/files/USERNAME/

Nota

Per server protetti dal protocollo SSL, seleziona Riconnettiti all’accesso per assicurare che l’associazione sia persistente in seguito a riavvi successivi. Se ti vuoi connettere al server Nextcloud come un utente diverso, seleziona Connettiti usando credenziali differenti.

screenshot della associazione di WebDAV su Windows Explorer
  1. Fai clic sul pulsante Fine.

Windows Explorer associa il drive di rete, rendendo disponibile la tua istanza Nextcloud.

Accedere ai file usando Cyberduck

Cyberduck è un browser FTP e SFTP, WebDAV, OpenStack Swift, e Amazon S3 open source progettato per trasferimenti di file su macOS e Windows.

Nota

Questo esempio usa Cyberduck versione 4.2.1.

Per usare Cyberduck:

  1. Specifica un server senza informazioni sul protocollo principale. Ad esempio:

esempio.com

  1. Specifica la porta appropriata. La porta che scegli dipende dal fatto che il tuo server Nextcloud supporti SSL. Cyberduck richiede di selezionare un diverso tipo di connessione se prevedi di utilizzare SSL. Ad esempio:

80 (per WebDAV)

443 (per WebDAV (HTTPS/SSL))

  1. Usa il menu a tendina “Altre opzioni” per aggiungere il resto del tuo URL WebDAV nel campo “Percorso”. Ad esempio:

remote.php/dav/files/NOMEUTENTE/

Ora Cyberduck consente l’accesso ai file del server Nextcloud.

Accedere alle risorse pubbliche tramite WebDAV

Nextcloud fornisce la possibilità di accedere alle risorse pubbliche tramite WebDAV.

Per accedere alle risorse pubbliche, apri:

https://example.com/nextcloud/public.php/webdav

In un client WebDAV, usa il token di condivisione come nome utente e la password di condivisione (facoltativa) come password.

Nota

SettingsAdministrationSharingAllow users on this server to send shares to other servers. This option also allows WebDAV access to public shares needs to be enabled in order to make this feature work, except if cURL is being used (see below).

Problemi noti

Problema

Windows non si connette usando HTTPS.

Soluzione 1

Il client WebDAV di Windows potrebbe non supportare il Server Name Indication (SNI) per le connessioni cifrate. Se ricevi un errore montando un’istanza di Nextcloud con protocollo SSL, contatta il tuo provider sull’assegnazione di un indirizzo IP dedicato al tuo server basato su SSL.

Soluzione 2

Il client WebDAV di Windows potrebbe non supportare le connessioni TLSv1.1 e TLSv1.2. Se hai limitato la configurazione del server per fornire solo TLSv1.1 e versioni successive, la connessione al tuo server potrebbe non riuscire. Fai riferimento alla documentazione WinHTTP per ulteriori informazioni.

Problema

Ricevi il seguente messaggio di errore: Errore 0x800700DF: La dimensione del file supera il limite consentito e non può essere salvato.

Soluzione

Windows limita la massima dimensione del file trasferito da o verso una condivisione WebDAV che potrebbe avere. Puoi aumentare il valore FileSizeLimitInBytes in HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\WebClient\Parameters facendo clic su Modifica.

Per aumentare il limite al valore massimo di 4GB, seleziona Decimal, inserisci il valore 4294967295, e riavvia Windows o riavvia il servizio WebClient.

Problema

L’accesso ai tuoi file da Microsoft Office tramite WebDAV non funziona.

Soluzione

Problemi noti e le loro soluzioni sono documentati nell’articolo KB2123563.

Problema

Impossibile associare Nextcloud come un drive WebDAV in Windows usando un certificato auto-firmato.

Soluzione

  1. Vai alla tua istanza di Nextcloud tramite il tuo browser web preferito.

  2. Fai clic fino a raggiungere l’errore del certificato nella barra di stato del browser.

  3. Visualizza il certificato, quindi dalla scheda Dettagli, seleziona Copia su file.

  4. Salva il desktop con un nome arbitrario, da esempio mioNextcloud.pem.

  5. Inizia, Esegui, MMC.

  6. File, Aggiungi/Rimuovi Snap-In.

  7. Seleziona Certificati, fai clic su Aggiungi, Il mio account utente, quindi Fine e OK.

  8. Scorri fino a Autorità di certificazione radice attendibili, Certificati.

  9. Fai clic con il tasto destro su Certificato, Seleziona tutte le attività, Importa.

  10. Selezione Salva certificato dal desktop.

  11. Seleziona Colloca tutti i certificati nel seguente archivio, fai clic su Sfoglia.

  12. Seleziona la casella che dice Mostra archivi fisici, espandi Autorità di certificazione radice attendibili, e seleziona Computer locale, fai clic su OK, completa l’importazione.

  13. Controlla l’elenco per assicurarti che venga visualizzato. Avrai probabilmente bisogno di ricaricare la pagina prima di vederlo. Esci da MMC.

  14. Apri il browser, seleziona Strumenti, Elimina la cronologia di navigazione.

  15. Seleziona tutto tranne Filtro dati InPrivate, completa.

  16. Vai su Opzioni Internet, scheda Contenuto, Cancella stato SSL.

  17. Chiudi il browser, poi riaprilo ed esegui un test.

Problema

Non puoi scaricare più di 50 MB o caricare file grandi quando il caricamento impiega più di 30 minuti usando il client web su Windows 7.

Soluzione

Soluzione alternative sono documentate nell’articolo KB2668751.

Accedere ai file usando cURL

Since WebDAV is an extension of HTTP, cURL can be used to script file operations.

Nota

SettingsAdministrationSharingAllow users on this server to send shares to other servers. If this option is disabled the option --header "X-Requested-With: XMLHttpRequest" needs to be passed to cURL.

Per creare una cartella con la data attuale come nome:

$ curl -u user:pass -X MKCOL "https://example.com/nextcloud/remote.php/dav/files/USERNAME/$(date '+%d-%b-%Y')"

Per caricare un file error.log in quella cartella:

$ curl -u user:pass -T error.log "https://example.com/nextcloud/remote.php/dav/files/USERNAME/$(date '+%d-%b-%Y')/error.log"

Per spostare un file:

$ curl -u user:pass -X MOVE --header 'Destination: https://example.com/nextcloud/remote.php/dav/files/USERNAME/target.jpg' https://example.com/nextcloud/remote.php/dav/files/USERNAME/source.jpg

Per ottenere le proprietà dei file nella cartella radice:

    $ curl -X PROPFIND -H "Depth: 1" -u user:pass https://example.com/nextcloud/remote.php/dav/files/USERNAME/ | xml_pp
    <?xml version="1.0" encoding="utf-8"?>
<d:multistatus xmlns:d="DAV:" xmlns:oc="http://nextcloud.org/ns" xmlns:s="http://sabredav.org/ns">
  <d:response>
    <d:href>/nextcloud/remote.php/dav/files/USERNAME/</d:href>
    <d:propstat>
      <d:prop>
        <d:getlastmodified>Tue, 13 Oct 2015 17:07:45 GMT</d:getlastmodified>
        <d:resourcetype>
          <d:collection/>
        </d:resourcetype>
        <d:quota-used-bytes>163</d:quota-used-bytes>
        <d:quota-available-bytes>11802275840</d:quota-available-bytes>
        <d:getetag>"561d3a6139d05"</d:getetag>
      </d:prop>
      <d:status>HTTP/1.1 200 OK</d:status>
    </d:propstat>
  </d:response>
  <d:response>
    <d:href>/nextcloud/remote.php/dav/files/USERNAME/welcome.txt</d:href>
    <d:propstat>
      <d:prop>
        <d:getlastmodified>Tue, 13 Oct 2015 17:07:35 GMT</d:getlastmodified>
        <d:getcontentlength>163</d:getcontentlength>
        <d:resourcetype/>
        <d:getetag>"47465fae667b2d0fee154f5e17d1f0f1"</d:getetag>
        <d:getcontenttype>text/plain</d:getcontenttype>
      </d:prop>
      <d:status>HTTP/1.1 200 OK</d:status>
    </d:propstat>
  </d:response>
</d:multistatus>