Accès aux fichiers Nextcloud avec WebDAV

Nextcloud fully supports the WebDAV protocol, and you can connect and synchronize with Nextcloud Files over WebDAV. In this chapter, you will learn how to connect Linux, macOS, Windows, and mobile devices to your Nextcloud server.

WebDAV stands for Distributed Authoring and Versioning. It is an HTTP extension that makes it easy to create, read, and edit files hosted on remote Web servers. With a WebDAV, client you can access your Nextcloud Files (including shares) on Linux, macOS and Windows in a similar way as any remote network share, and stay synchronized.

Before we get into configuring WebDAV, let’s take a quick look at the recommended way of connecting client devices to Nextcloud.

Official Nextcloud desktop and mobile clients

The recommended way to synchronize a computer with a Nextcloud server is by using the official Nextcloud sync clients. You can configure the client to save files in any local directory and you can choose which directories on the Nextcloud server to sync with. The client displays the current connection status and logs all activity, so you always know which remote files have been downloaded to your PC and you can verify that files created and updated on your local PC are properly synchronized with the server.

The recommended way to synchronize Android and Apple iOS devices is by using the official Nextcloud mobile apps.

To connect the official Nextcloud apps to a Nextcloud server use the same URL you use to access Nextcloud from your web browser - e.g.:

https://cloud.example.com

https://cloud.example.com/nextcloud (if Nextcloud is installed in a subdirectory)

Third-party WebDAV clients

If you prefer, you may also connect your computer to your Nextcloud server by using any third-party client that supports the WebDAV protocol (including what may be built into your operating system).

You can also use third-party WebDAV capable apps to connect your mobile device to Nextcloud.

When using third-party clients, keep in mind that they may not be optimized for use with Nextcloud or implement capabilities you consider important to your use case.

Mobile clients that Nextcloud community members have reported using include:

The URL to use when configuring third-party apps to connect to Nextcloud is a bit lengthier than the one for official clients:

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

https://cloud.example.com/nextcloud/remote.php/dav/files/USERNAME/ (if Nextcloud is installed in a subdirectory)

Note

When using a third-party WebDAV client (including your operating system’s built-in client), you should use an application password for login rather than your regular password. In addition improved security, this increases performance significantly <https://github.com/nextcloud/server/issues/32729#issuecomment-1556667151>_. To configure an application password, log into the Nextcloud Web interface, click on the avatar in the top right and choose Personal settings. Then choose Security in the left sidebar and scroll to the very bottom. There you can create an app password (which can also be revoked in the future without changing your main user password).

Note

In the following examples, you should replace example.com/nextcloud with the URL of your Nextcloud server (omit the directory part if the installation is in the root of your domain), and USERNAME with the username of the connecting user.

Utilisez l’URL WebDAV (Paramètres en bas à gauche) depuis votre compte Nextcloud.

Accéder aux fichiers en utilisant Linux

Vous pouvez accéder aux fichiers sous Linux en utilisant les méthodes suivantes.

Gestionnaire de fichiers Nautilus

Lorsque vous configurez votre compte Nextcloud dans le Centre de Contrôle GNOME, vos fichiers seront automatiquement montés par Nautilus en tant que partage WebDAV, à moins que vous ne désélectionniez l’accès aux fichiers.

Vous pouvez aussi monter vos fichiers Nextcloud manuellement. Utilisez le protocole davs:// pour connecter le gestionnaire de fichier Nautilus à votre partage Nextcloud:

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

Note

Si votre connexion serveur n’est pas sécurisée en HTTPS, utilisez dav:// à la place de davs:// :

Screenshot of configuring Nautilus file manager to use WebDAV

Note

The same method works for other file managers that use GVFS, such as MATE’s Caja and Cinnamon’s Nemo.

Accès aux fichiers avec KDE et le gestionnaire de fichiers Dolphin

Pour accéder à vos fichier Nextcloud depuis le gestionnaire de fichier Dolphin avec KDE, utilisez le protocole webdavs://:

webdav://example.com/nextcloud/remote.php/dav/files/USERNAME/
Screenshot of configuring Dolphin file manager to use WebDAV

Vous pouvez créer un lien permanent à votre serveur Nextcloud :

  1. Open Dolphin and click « Network » in the left-hand « Places » column.

  2. Cliquez sur l’icône Ajouter un dossier réseau. La boîte de dialogue doit apparaître avec WebDAV sélectionné.

  3. Sélectionnez WebDAV si il n’est pas sélectionné.

  4. Cliquez sur Suivant.

  5. Entrez les paramètres suivants :

    • Name: the name you want to see in the Places bookmark, for example, Nextcloud.

    • User: the Nextcloud username you used to log in, for example, admin.

    • Server: the Nextcloud domain name, for example, example.com (without http:// before or directories afterwards).

    • Dossier – Entrez le chemin « nextcloud/remote.php/dav/files/USERNAME/ ».

  6. (Optionnel) Cochez la case « Créer icône » pour faire apparaître un signet dans la colonne Emplacements.

  7. (Optionel) Configuration spécifique ou fourniture d’un certificat SSL via la checkbox « Port & Cryptage »

Créer un point de montage WebDAV en ligne de commande Linux

Vous pouvez créer un point de montage WebDAV en ligne de commande Linux. Ceci est utile si vous préferrez accéder à Nextcloud de la même manière que n’importe quel autre système de ficher distant. L’exemple suivant montre comment créer un point de montage personnel et activer sa connexion automatiquement à chaque fois que vous vous connectez à votre ordinateur Linux.

  1. Installer le driver WebDAV davfs2, qui autorise le montage de partages WebDAV comme n’importe quel autre filesystem distant. Utilisez cette commande pour l’installer sur Debian/Ubuntu

    apt-get install davfs2
    
  2. Utilisez cette commande pour l’installer sur CentOS, Fedora, and openSUSE

    yum install davfs2
    
  3. Ajoutez vous dans le groupe davfs2

    usermod -aG davfs2 <username>
    
  4. Then create a nextcloud directory in your home directory for the mount point, and .davfs2/ for your personal configuration file:

    mkdir ~/nextcloud
    mkdir ~/.davfs2
    
  5. Copiez /etc/davfs2/secrets dans ~/.davfs2:

    cp  /etc/davfs2/secrets ~/.davfs2/secrets
    
  6. Mettez vous owner avec les permissions read-write owner seulement

    chown <linux_username>:<linux_username> ~/.davfs2/secrets
    chmod 600 ~/.davfs2/secrets
    
  7. Ajoutez vos information de connexion Nextcloud à la fin du fichier secrets, en mettant l’URL de votre serveur, l’identifiant et le mot de passe de votre compte Nextcloud

    https://example.com/nextcloud/remote.php/dav/files/USERNAME/ <username> <password>
    or
    $PathToMountPoint $USERNAME $PASSWORD
    for example
    /home/user/nextcloud john 1234
    
  8. Ajouter l’information de montage dans /etc/fstab

    https://example.com/nextcloud/remote.php/dav/files/USERNAME/ /home/<linux_username>/nextcloud davfs user,rw,auto 0 0
    
  9. Ensuite testez le montage et l’authentification en exécutant la commande suivante. Si votre configuration est correcte, vous n’avez pas besoin de passer en mode root

    mount ~/nextcloud
    
  10. Vous devriez aussi être capable de le démonter

    umount ~/nextcloud
    

Maintenant, chaque fois que vous vous connecterez à votre système Linux, votre partage Nextcloud devrait automatiquement se connecter via WebDAV dans votre répertoire ~/nextcloud . Si vous préférez le monter manuellement, remplacez auto par noauto dans /etc/fstab.

Anomalies connues

Problème

Ressource temporairement inaccessible

Solution

Si vous rencontrez des problèmes lorsque vous créer un fichier dans le répertoire, éditez le fichier /etc/davfs2/davfs2.conf et ajoutez

use_locks 0

Problème

Alerte de certificat

Solution

Si vous utilisez un certificat auto-signé, vous allez obtenir une alerte. Pour retirer l’alerte, vous devez configurer davfs2 pour reconnaître votre certificat. Copiez mycertificate.pem dans /etc/davfs2/certs/. Puis éditez /etc/davfs2/davfs2.conf et retirer le commentaire devant la ligne servercert. Maintenant, ajoutez le chemin de votre certificat comme dans cet exemple

servercert /etc/davfs2/certs/mycertificate.pem

Accéder aux fichiers avec macOS

Note

The macOS Finder suffers from a series of implementation problems and should only be used if the Nextcloud server runs on Apache and mod_php, or Nginx 1.3.8+. Alternative macOS-compatible clients capable of accessing WebDAV shares include open source apps like Cyberduck (see instructions here) and Filezilla. Commercial clients include Mountain Duck, Forklift, Transmit, and Commander One.

Pour accéder aux fichiers avec le Finder de macOS :

  1. From the Finder’s top menu bar, choose Go > Connect to Server…:

    Screenshot of entering your Nextcloud server address on macOS
  2. When the Connect to Server… window opens, enter your Nextcloud server’s WebDAV address in the Server Address: field, i.e.:

    https://cloud.YOURDOMAIN.com/remote.php/dav/files/USERNAME/
    
    Screenshot: Enter Nextcloud server address in "Connect to Server…" dialog box
  3. Cliquez sur Se connecter. Votre serveur WebDAV doit apparaître sur le bureau comme un disque partagé.

Accéder aux fichiers avec Microsoft Windows

If you use the native Windows implementation of WebDAV, you can map Nextcloud to a new drive using Windows Explorer. Mapping to a drive enables you to browse files stored on a Nextcloud server the way you would browse files stored in a mapped network drive.

Cette fonctionnalité nécessite une connexion réseau. Si vous voulez travailler sur vos fichiers en local, utilisez le « Desktop Sync Client » pour synchroniser vos fichiers depuis votre serveur Nextcloud vers un ou plusieurs répertoires sur votre disque dur local.

Note

Windows 10 now defaults to allow Basic Authentication if HTTPS is enabled before mapping your drive.

On older versions of Windows, you must permit the use of Basic Authentication in the Windows Registry:

  • launch regedit and navigate to HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\WebClient\Parameters.

  • Create or edit the BasicAuthLevel (Windows Vista, 7 and 8), or UseBasicAuth (Windows XP and Windows Server 2003), DWORD value and set its value data to 1 for SSL connections. A value of 0 means that Basic Authentication is disabled, and a value of 2 allows both SSL and non-SSL connections (not recommended).

  • Then exit Registry Editor, and restart the computer.

Connecter un lecteur réseau en ligne de commande

L’exemple suivant montre comment connecter un lecteur réseau en ligne de commande. Pour connecter le lecteur :

  1. Ouvrez une fenêtre d’invite de commandes dans Windows.

  2. Entrez la commande suivante pour connecter Nextcloud au lecteur Z de votre ordinateur

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

    with <drive_path> as the URL to your Nextcloud server. For example:

    net use Z: https://example.com/nextcloud/remote.php/dav/files/USERNAME/ /user:youruser yourpassword
    

    L’ordinateur liste les fichiers de votre compte Nextcloud sur le lecteur Z.

Note

If you get the following error System error 67 has occurred. The network name cannot be found., open the Services app and make sure that the WebClient service is running and started automatically at startup.

Note

Though not recommended, you can also mount the Nextcloud server using HTTP, leaving the connection unencrypted.

If you plan to use HTTP connections on devices while in a public place, we strongly recommend using a VPN tunnel to provide the necessary security.

Une syntaxe alternative de cette commande est :

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

Connecter des lecteurs réseaux avec Windows Explorer

To map a drive using Microsoft Windows Explorer:

  1. Ouvrez Windows Explorer sur votre ordinateur Windows.

  2. Faites un clic-droit sur le dossier Ordinateur et sélectionnez Connectez un lecteur réseau… depuis le menu déroulant.

  3. Choisissez le lecteur de réseau local que vous souhaitez connecter à Nextcloud.

  4. Spécifiez l’adresse de votre instance Nextcloud, suivi de /remote.php/dav/files/USERNAME/.

    Par exemple

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

    Note

    For SSL-protected servers, check Reconnect at sign-in to ensure that the mapping is persistent upon subsequent reboots. If you want to connect to the Nextcloud server as a different user, check Connect using different credentials.

    Screenshot of mapping WebDAV on Windows Explorer
  1. Cliquez sur le bouton Terminer.

L’explorateur Windows connecte le lecteur de fichiers et rend votre instance Nextcloud disponible.

Accéder aux fichiers avec Cyberduck

Cyberduck is an open source FTP, SFTP, WebDAV, OpenStack Swift, and Amazon S3 browser designed for file transfers on macOS and Windows.

Note

Cet exemple utilise la version 4.2.1 de Cyberduck.

Pour utiliser Cyberduck :

  1. Specify a server without any leading protocol information.

    For example: example.com

  2. Specify the appropriate port.

    The port you choose depends on whether or not your Nextcloud server supports SSL. Cyberduck requires that you select a different connection type if you plan to use SSL.

    For example:
    • 80 for unencrypted WebDAV

    • 443 for secure WebDAV (HTTPS/SSL)

  3. Use the “More Options” drop-down menu to add the rest of your WebDAV URL into the “Path” field.

    For example: remote.php/dav/files/USERNAME/

Désormais, Cyberduck permet l’accès aux fichiers du serveur Nextcloud.

Accéder aux partages publics avec WebDAV

Nextcloud provides the possibility to access public shares anonymously over WebDAV.

Pour accéder au partage public, ouvrez

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

in a WebDAV client, use the share token as username and the (optional) share password as the password. For example, with a share link https://example.com/s/kFy9Lek5sm928xP, kFy9Lek5sm928xP will be the username.

Note

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

Problèmes connus

Problème

Windows ne se connecte pas avec HTPPS.

Solution 1

Le client WebDAV pour Windows ne supporte pas Server Name Indication (SNI) avec les connexions cryptées. Si vous rencontrez une erreur en connectant une instance Nextcloud SSL-encrypted, contactez votre fournisseur pour qu’il vous fournisse une adresse IP dédiée à votre serveur SSL.

Solution 2

Le client Windows WebDAV pourrait ne pas supporter les connections TLSv1.1 / TLSv1.2. Si vous avez restreint la configuration de votre serveur dans le but de fournir uniquement des connections TLSv1.1 et plus, la connexion à votre serveur pourrait échouer. Référez vous à la documentation WinHTTP pour plus d’informations.

Problème

Vous avez obtenu le message d’erreur suivant : Erreur 0x800700DF : La taille du fichier dépasse la limite autorisée ; il ne peut être enregistré.

Solution

Windows limite la taille maximum des fichiers transférés via un partage WebDAV. Vous pouvez augmenter la valeur FileSizeLimitInBytes dans HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\WebClient\Parameters en cliquant sur Modifier.

Pour augmenter la limite à la valeur maximal de 4GB, selectionnez Decimal, entrez la valeur 4294967295, et relancez Windows ou redémarrez le service WebClient.

Problème

Adding a WebDAV drive on Windows via the above described steps does not display the correct size of in Nextcloud available space and instead shows the size of the C: drive with its available space.

Answer

Unfortunately is this a limitation of WebDAV itself, because it does not provide a way for the client to get the available free space from the server. Windows automatically falls back to show the size of the C: drive with its available space instead. So unfortunately there is no real solution to this problem.

Problème

Problème d’accès à vos fichiers avec Microsoft Office via WebDAV

Solution

Les problèmes connus et leurs solutions sont documentés dans l’article KB2123563.

Problème

Cannot map Nextcloud as a WebDAV drive in Windows using a self-signed certificate.

Solution

  1. Access to your Nextcloud instance via your favorite Web browser.

  2. Cliquez jusqu’à ce que vous arriviez à l’erreur de certificat dans la ligne d’état du navigateur.

  3. View the certificate, then from the Details tab, select “Copy to File”.

  4. Save the file to your desktop with an arbitrary name, for example myNextcloud.pem.

  5. Go to Start menu > Run, type MMC, and click “OK” to open Microsoft Management Console.

  6. Go to File > Add/Remove Snap-In.

  7. Select Certificates, Click “Add”, choose “My User Account”, then “Finish”, and finally “OK”.

  8. Creusez jusqu’aux autorités de confiance de certification de la racine, aux certificats.

  9. Right-Click Certificate, Select All Tasks, and Import.

  10. Select the saved certificate from the Desktop.

  11. Select Place all Certificates in the following Store, and click Browse.

  12. Check the Box that says Show Physical Stores, expand out Trusted Root Certification Authorities, select Local Computer there, click “OK”, and Complete the Import.

  13. Check the list to make sure the certificate shows up. You will probably need to Refresh before you see it.

  14. Exit MMC.

For Firefox users:

  1. Launch your browser, go to Application menu > History > Clear recent history…

  2. Select “Everything” in the “Time range to clear” dropdown menu

  3. Select the “Active Logins” check box

  4. Click the “Clear now” button

  5. Close the browser, then re-open and test.

For Chrome-based browsers (Chrome, Chromium, Microsoft Edge) users:

  1. Open Windows Control Panel, navigate down to Internet Options

  2. In the Content tab, click the Clear SSL State button.

  3. Close the browser, then re-open and test.

Accès aux fichiers en utilisant cURL

Comme WebDAV est une extension de HTTP, cURL peut être utilisé pour scripter des opérations sur les fichiers.

Note

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.

Pour créer un dossier avec la date du jour comme nom :

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

Pour téléverser un fichier error.log dans ce répertoire :

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

Pour déplacer un fichier :

$ 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

Pour obtenir les propriétés des fichiers dans le dossier racine :

    $ 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>

Accessing files using WinSCP

WinSCP is an open source free SFTP, FTP, WebDAV, S3, and SCP client for Windows. Its main function is file transfer between a local and a remote computer. Beyond this, WinSCP offers scripting and basic file management functionality.

You can download the portable version of WinSCP and run it on Linux through Wine.

To run WinSCP on Linux, download wine through your distribution’s package manager, then run it with the command: wine WinSCP.exe.

To connect to Nextcloud:

  • Start WinSCP

  • Press “Session” in the menu

  • Press the “New Session” menu option

  • Set the “File protocol” dropdown to WebDAV

  • Set the “Encryption” dropdown to TLS/SSL Implicit encryption

  • Fill in the hostname field: example.com

  • Fill in the username field: NEXTCLOUDUSERNAME

  • Fill in the password field: NEXTCLOUDPASSWORD

  • Press the “Advanced…” button

  • Navigate to “Environment”, “Directories” on the left side

  • Fill in the “Remote directory” field with the following: /nextcloud/remote.php/dav/files/NEXTCLOUDUSERNAME/

  • Press the “OK” button

  • Press the “Save” button

  • Select the desired options and press the “OK” button

  • Press the “Login” button to connect to Nextcloud

Note

It is recommended to use an app password for the password if you use TOTP as WinSCP does not understand TOTP with Nextcloud at the time of writing (2022-11-07).