Приступ Nextcloud фајловима преко WebDAV

Nextcloud у потпуности подржава WebDAV протокол, тако да можете да се повежете на своју Nextcloud Фајлови апликацију и синхронизујете своје фајлове преко WebDAV. У овом поглављу ћете научити како да повежете Linux, macOS, Windows, и мобилне уређаје са Nextcloud сервером.

WebDAV је скраћено од Distributed Authoring and Versioning. То је HTTP екстензија која олакшава креирање, читање и уређивање фајлова који се хостују на удаљеним серверима веб серверима. WebDAV клијентом можете да приступите својим Nextcloud Фајловима (укључујући и дељења) са Linux, macOS и Windows система на сличан начина као што се то ради у случају било ког удаљеног мрежног дељења, и да останете синхронизовани.

Пре него што пређемо на конфигураисање WebDAV, хајде да на брзину погледамо препоручени начин за повезивање клијента са Nextcloud.

Званични Nextcloud десктоп и мобилни клијенти

Препоручени начин за синхронизацију компјутера са Nextcloud сервером је употребом званичних Nextcloud клијената за синхронизацију. Клијент можете да подесите тако да чува фајлове у било који локални доректоријум и можете да изаберете који директоријуми на Nextcloud серверу ће се синхронизовати. Клијент приказује статус текуће везе и записује све активности, тако да у сваком тренутку знате који удаљени фајлови су преузети на ваш PC и можете да проверите да су фајлове креирани и ажурирани на локалном PC компјутеру исправно синхронизовани са сервером.

Препоручени начин за синхронизацију Android и Apple iOS уређаји је употребом званичних Nextcloud мобилних апликација.

Да бисте повезали званичне Nextcloud апликације са Nextcloud сервером употребите исти URL који користите да приступите Nextcloud из свог веб прегледача - нпр.:

https://cloud.example.com

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

WebDAV клијенти треће стране

Ако вам више одговара, своје компјутер такође можете да повежете са Nextcloud сервером користећи било који клијент треће стране који подржава WebDAV протокол (укључујући и оно што је можда уграђено у ваш оперативни систем).

Такође можете да користите WebDAV способне апликације треће стране за повезивање вашег мобилног уређаја са Nextcloud.

Када се користе клијенти треће стране, имајте на уму да они можда нису оптимизовани за употребу са Nextcloud или да можда не имплментирају могућности које сматрате битним у вашем случају употребе.

Мобилни клијенти које су чланови Nextcloud заједнице пријавили да раде су:

URL који треба да се користи када се конфигуришу апликације треће стране за везу са Nextcloud је мало дужи него што је то случај са званичним клијентима:

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)

Белешка

Када се користи WebDAV клијент треће стране (уљкучујући и клијент уграђен у ваш оперативни систем), требало би да за пријаву користите лозинку апликације, а не своју обичну лозинку. Уз додатну безбедност, ово значајно побољшава перформансе <https://github.com/nextcloud/server/issues/32729#issuecomment-1556667151>_. Да бисте подесили лозинку апликације, пријавите се на Nextcloud веб интерфејс, кликните на аватар у гоењем десном углу и изаберите Лична подешавања. Затим изаберите Безбедост у левој бочној траци и скролујте на само дно. Тамо можете да креирате лозинку апликације (која касније такође може и да се повуче, без промене ваше главне корисничке лозинке).

Белешка

У следећим примерима би требало да замените example.com/nextcloud са URL адресом вашег Nextcloud сервера (изоставите део са директоријумом ако је инсталација у корену вашег домена), и USERNAME са корисничким именом корисника који се повезује.

Погледајте WebDAV URL (доњи леви угао у подешавањима) на свом Nextcloud.

Приступ фајловима са Linux система

У Linux оперативним системима можете да приступите фајловима употребом следећих метода.

Nautilus фајл менаџер

Када конфигуришете свој Nextcloud налог у GNOME Control Center, Nautilus ће аутоматски да монтира ваше фајлове као WebDAV дељење, осим у случају да искључите приступ фајловима.

Nextcloud фајлове можете и ручно да монтирате. Употребите davs:// протокол да повежете Nautilus фајл менаџер са Nextcloud дељењем:

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

Белешка

Ако веза са вашим сервером није HTTPS-обезбеђена, употребите dav:// уместо davs://:

Снимак екрана конфигурисања Nautilus фајл менаџера да користи WebDAV

Белешка

Иста метода функционише и са осталим фајл менаџерима који користе GVFS, као што су MATE Caja и Cinnamon Nemo.

Приступ фајловима са KDE и Dolphin фајл менаџером

Ако желите да приступите својим Nextcloud фајловима из Dolphin фајл менаџера у KDE, употребите webdav:// протокол:

webdav://example.com/nextcloud/remote.php/dav/files/USERNAME/
Снимак екрана конфигурисања Dolphin фајл менаџера да користи WebDAV

Можете да креирате и стални линк на свој Nextcloud сервер:

  1. Отворите Dolphin и кликните на „Network” у „Places” колони са леве стране.

  2. Кликните на икону означену са Add a Network Folder. Требало би да се појави дијалог у којем је већ изабран WebDAV.

  3. Ако WebDAV није изабран, изаберите га.

  4. Кликните на Next.

  5. Унесите следећа подешавања:

    • Name: Назив који желите да видите у Places маркеру, на пример, Nextcloud.

    • User: Nextcloud корисничко име које користите за пријаву, на пример, admin.

    • Server: име домена Nextcloud сервера, на пример, example.com (без http:// испред или директоријума иза).

    • Folder – унесите путању nextcloud/remote.php/dav/files/USERNAME/.

  6. (Није обавезно) Штиклирајте поље „Create icon” да би се у колони Places појавио маркер.

  7. (Није обавезно) Наведите било какво посебно подешавање или SSL сертификат у пољу за штиклирање „Port & Encrypted”.

Креирање WebDAV монтирања из Linux командне линије

WebDAV монтирања можете да креирате и из Linux командне линије. Ово је корисни ако више волите да приступате Nextcloud серверу на исти начин као и било ком другом монтираном удаљеном фајл систему. Следећи пример приказује како да креирате лично монтирање и подесите да се аутоматски монтира сваки пут када се пријавите на ваш Linux компјутер.

  1. Инсталирајте davfs2 WebDAV фајл систем драјвер који вам омогућава да монтирате WebDAV дељења на исти начин као било који други удаљени фајл систем. Употребите следећу команду да га инсталирате на Debian/Ubuntu:

    apt-get install davfs2
    
  2. Употребите следећу команду да га инсталирате на CentOS, Fedora, и openSUSE:

    yum install davfs2
    
  3. Додајте севе у davfs2 групу:

    usermod -aG davfs2 <username>
    
  4. Затим креирајте nextcloud директоријум у свом почетном директоријуму који ће служити као тачка монтирања, и .davfs2/ за свој лични конфигурациони фајл:

    mkdir ~/nextcloud
    mkdir ~/.davfs2
    
  5. Копирајте /etc/davfs2/secrets У ~/.davfs2:

    cp  /etc/davfs2/secrets ~/.davfs2/secrets
    
  6. Поставите сее као власника и подесите дозволе тако да само власник може да чита-пише:

    chown <linux_username>:<linux_username> ~/.davfs2/secrets
    chmod 600 ~/.davfs2/secrets
    
  7. Додајте своје Nextcloud податке за пријаву на крај secrets фајла, користећи URL Nextcloud сервера и своје Nextcloud корисничко име и лозинку:

    https://example.com/nextcloud/remote.php/dav/files/USERNAME/ <username> <password>
    or
    $PathToMountPoint $USERNAME $PASSWORD
    for example
    /home/user/nextcloud john 1234
    
  8. Додајте информације о монтирању у /etc/fstab:

    https://example.com/nextcloud/remote.php/dav/files/USERNAME/ /home/<linux_username>/nextcloud davfs user,rw,auto 0 0
    
  9. Затим тестирајте да ли се монтира и аутентификује тако што извршите следећу команду. Ако сте све подесили како треба, неће вам бити потребне администраторске дозволе:

    mount ~/nextcloud
    
  10. Такође би требало да можете и да уклоните монтирање:

    umount ~/nextcloud
    

Сада се сваки пут када се пријавеите на свој Linux систем Nextcloud дељење аутоматски монтира преко WebDAV у ваш директоријум ~/nextcloud. Ако вам више одговара да га ручно монтирате, измените у /etc/fstab вредност auto у noauto.

Познати проблеми

Проблем

Ресурс привремено није доступан

Решење

Ако имате проблема када креирате фајл у директоријуму, уредите /etc/davfs2/davfs2.conf и додајте:

use_locks 0

Проблем

Упозорења сертификата

Решење

Ако користите самопотписани сертификат, видећете упозорење. Да бисте ово променили, davfs2 морате да конфигуришете тако да препозна ваш сертификат. Копирајте mycertificate.pem у /etc/davfs2/certs/. Затим уредите /etc/davfs2/davfs2.conf и уклоните коментар са линије servercert. Сада додајте путању до свог сервификата, као у следећем примеру:

servercert /etc/davfs2/certs/mycertificate.pem

Приступ фајловима са macOS система

Белешка

macOS Finder пати од низа проблема у имплементацији и требало би да се користи само ако Nextcloud сервер извршава Apache и mod_php, или Nginx 1.3.8+. Алтернативни macOS-компатибилни клијенти који имају могућност приступа WebDAV дељењима укључују аоликације отвореног кода као што је Cyberduck (погледајте упутства овде) и Filezilla. Комерцијални клијенти су Mountain Duck, Forklift, Transmit, и Commander One.

Да бисте приступили фајловима из апликације macOS Finder:

  1. Из мени линије на врху програма Finder, изаберите Go > Connect to Server…:

    Снимак екрана уноса адресе вашег Nextcloud сервера на macOS систему
  2. Када се отвори прозор Connect to Server…, унесите WebDAV адресу свог Nextcloud сервера у поље Server Address: нпр.:

    https://cloud.YOURDOMAIN.com/remote.php/dav/files/USERNAME/
    
    Снимак екрана: унос адресе Nextcloud сервера у „Connect to Server…” дијалог
  3. Кликните на Connect. Ваш WebDAV сервер би требало да се појави на Десктопу као дељени диск драјв.

Приступ фајловима из Microsoft Windows система

Ако користите уграђену Windows WebDAV имплементацију, можете да мапирате Nextcloud као нови драјв користећи Windows Explorer. Мапирање у драјв вам омогућава да прегледате фајлове смештене на Nextcloud сервер на исти начин као што то радите са фајловима који се налазе на мапираном мрежном драјву.

Употреба ове могућности захтева везу са мрежом. Ако желите да чувате фајлове ван мреже, употребите Десктоп клијент који синхронизује све фајлове са Nextcloud у један или више директоријума на вашем локалном хард драјву.

Белешка

Ако је пре мапирања драјва укључен HTTPS, Windows 10 сада подразумевано дозвољава Основну проверу идентитета (Basic Authentication).

На старијим Windows верзијама, употребу Basic Authentication морате да дозволите у Windows Registry:

  • покрените regedit и поставите се на HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\WebClient\Parameters.

  • Креирајте или уредите BasicAuthLevel (Windows Vista, 7 и 8), или UseBasicAuth (Windows XP и Windows Server 2003), DWORD кључ и поставите његову вредност на 1 за SSL везе. Вредност 0 значи да је Basic Authentication искључена, а вредност 2 дозвољава и SSL и не-SSL везе (не препоручује се).

  • Затим затворите Registry Editor, и поново покрените компјутер.

Мапирање драјвова из командне линије

Следећи пример показује како да се мапира драјв из командне линије. Да бисте мапирали драјв:

  1. Отворите прозор за командни захтеве у Windows.

  2. Унесите следећу линију у прозор за прихватање командних захтева да мапирате на компутеров драјв Z:

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

    са <drive_path> као URL вашег Nextcloud сервера. На пример:

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

    Компјутер мапира фајлове на вашем Nextcloud налогу у драјв са словом Z.

Белешка

Ако добијете грешку Дошло је до системске грешке 67. Назив мреже не може да се пронађе., отворите апликацију Сервиси и обезбедите да се сервис WebClient извршава и аутоматски покреће приликом покретања.

Белешка

Мада се то не препоручује, Nextcloud сервер можете такође да монтирате и употребом HTTP, и онда веза није шифрована.

Ако планирате да користите HTTP везе на уређајима док сте на јавном месту, снажно препоручујемо да употребите VPN тунел који обезбеђује неопходну безбедност.

Алтернативна синтакса команде је:

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

Мапирање драјвова програмом Windows Explorer

Да бисте мапирали драјв из програма Microsoft Windows Explorer:

  1. Оворите Windows Explorer на MS Windows компјутеру.

  2. Извршите десни клик на ставку Computer и изаберите Map network drive… из падајућег менија.

  3. Изаберите локални мрежни драјв на који желите да мапирате Nextcloud.

  4. Наведите адресу своје Nextcloud инстанце, па затим надовежите /remote.php/dav/files/USERNAME/.

    На пример:

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

    Белешка

    За сервере заштићене са SSL, штиклирајте Reconnect at sign-in да бисте обезбедили да мапирање остане активно и након наредних поновних покретања система. Ако желите да се са Nextcloud сервером повежете као неки други корисник, штиклирајте Connect using different credentials.

    Снимак екрана мапирања WebDAV у Windows Explorer
  1. Кликните на дугме Finish.

Windows Explorer мапира мрежни драјв, тако да је вам је ваша Nextcloud инстанца доступна.

Приступ фајловима употребом Cyberduck

Cyberduck FTP, SFTP, WebDAV, OpenStack Swift, и Amazon S3 прегледач отвореног кода који је дизајниран за пренос фајлова на macOS и Windows системима.

Белешка

Овај пример користи Cyberduck верзију 4.2.1.

Да бисте користили Cyberduck:

  1. Наведите сервер без било каквих водећих информација о протоколу.

    На пример: example.com

  2. Наведите одговарајући порт.

    Порт који изаберете зависи од тога да ли ваш Nextcloud сервер подржава SSL или не. Cyberduck захтева да изаберете другачију врсту везе ако планирате да користите SSL.

    На пример:
    • 80 за WebDAV који се не шифрује

    • 443 за безбедни WebDAV (HTTPS/SSL)

  3. Користите падајући мени ’More Options’ да додате остатак ваше WebDAV URL адресе у поље ’Path’.

    На пример: remote.php/dav/files/USERNAME/

Cyberduck сада омогућава приступ фајловима на Nextcloud серверу.

Приступ јавним дељењима преко WebDAV

Nextcloud обезбеђује могућност да се преко WebDAV анонимно приступи јавним дељењима.

Да бисте приступили јавнм дељењу, отворите:

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

у WebDAV клијену, као корисничко име употребите жетон дељења и (необавезну) лозинку дељења као лозинку. На пример, у линку дељења https://example.com/s/kFy9Lek5sm928xP, kFy9Lek5sm928xP ће бити корисничко име.

Белешка

ПодешавањаАдминистрацијаДељењеДозволи да корисници на овом серверу шаљу дељења на друге сервере. Ова опција такође дозвољава WebDAV приступ јавним дељењима, тако да мора да се укључи како би могућност радила, осим у случају када се користи cURL (погледајте испод).

Познати проблеми

Проблем

Windows се не повезује преко HTTPS.

Решење 1

Windows WebDAV Клијент мођда не подржава Server Name Indication (SNI) преко шифрованих веза. Ако наиђете на грешку током монтирања SSL-шифроване Nextcloud инстанце, контактирајте свог пружаоца интернет услуге да вам додели статичку IP адресу за ваш SSL-базирани сервер.

Решење 2

Windows WebDAV Клијент можда не подржава TLSv1.1 и TLSv1.2 везе. Ако сте конфигурацијом свој сервер ограничили тако да нуди само TLSv1.1 и новије, веза са вашим сервером можда неће моћи да се успостави. Молимо вас да погледате WinHTTP документацију за да бисте сазнали више о овоме.

Проблем

Добијате следећу поруку о грешки: Error 0x800700DF: The file size exceeds the limit allowed and cannot be saved.

Решење

Windows ограничава максималну величину фајла који може да се преноси на и са WebDAV дељења. Ту вредност можете да повећате тако што увећате вредност кључа FileSizeLimitInBytes у HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\WebClient\Parameters кликом на Modify.

Ако желите да границу подигнете до максималне вредности од 4GB, Изаберите Decimal, па унесите вредност 4294967295, и поново покрените Windows или поново покрените WebClient сервис.

Проблем

Додавањем WebDAV драјва на Windows систему корацима описаним изнад, у Nextcloud се не приказује исправна величина доступног простора, већ се уместо тога приказује величина C: драјва са доступним простором на њему.

Одговор

Нажалост, ово је ограничење самог WebDAV протокола, јер не постоји начин да клијент од сервера сазна доступан слободни простор. Windows аутоматски у том случају уместо слободног простора на серверу приказује величину C: драјва и слободан простор на њему. Тако да нажалост, не постоји право решење за овај проблем.

Проблем

Приступ вашим фајловима из Microsoft Office преко WebDAV не успева.

Решење

Познати проблеми и њихова решења су документаовани у чланку KB2123563.

Проблем

Nextcloud не може да се мапира као WebDAV драјв у Windows систему када се користи самопотписани сертификат.

Решење

  1. Приступите својој Nextcloud инстанци користећи омиљени веб прегледач.

  2. Кликћите док се у статусној линији прегледача не појави грешка сертификата.

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

  4. Сачувајте фајл на десктор под произвољним именом, на пример myNextcloud.pem.

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

  6. Идите на File > Add/Remove Snap-In.

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

  8. Пронађите Trust Root Certification Authorities, Certificates.

  9. Извршите десни клик на Certificate, Select All Tasks и Import.

  10. Изаберите сачувани сертификат са Desktop.

  11. Изаберите Place all Certificates in the following Store, па кликните на 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. Погледајте листу и проверите да ли се тамо налази сертификат. Можда ћете морати да употребите Refresh пре него што се појави.

  14. Напустите MMC.

За Firefox кориснике:

  1. Покрените свој прегледач, идите намени Application > History > Clear recent history…

  2. Изаберите ’Everything’ у падајућем менију ’Time range to clear’

  3. Штиклијате поље ’Active Logins’

  4. Кликните дугме ’Clear now’

  5. Затворите прегледач, затим га отворите поново и тестирајте.

За кориснике прегледача који се базирају на Chrome (Chrome, Chromium, Microsoft Edge):

  1. Отворите Windows Control Panel, поставите се на Internet Options

  2. У картици Content, кликните на дугме Clear SSL State.

  3. Затворите прегледач, затим га отворите поново и тестирајте.

Приступ фајловима програмом cURL

Пошто је WebDAV проширење протокола HTTP, за скриптовање фајл операција може да се користи cURL.

Белешка

ПодешавањаАдминистрацијаДељењеДозволи да корисници на овом серверу шаљу дељења на друге сервере. Ако је ова опција искључена, програму cURL мора да се проследи опција --header "X-Requested-With: XMLHttpRequest".

Да бисте креирали фолдер чије је име текући датум:

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

Да отпремите фајл error.log у тај директоријум:

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

Да преместите фајл:

$ 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

Да добијете особине фајлова у кореном фолдеру:

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

Приступ фајловима програмом WinSCP

WinSCP је бесплатан SFTP, FTP, WebDAV, S3 и SCP клијент отвореног кода за Windows. Његова главна функција је пренос фајлова између локалног и удаљеног компјутера. Уз то, WinSCP нуди скриптовање и основну функционалност фајл менаџера.

Преносну верзију програма WinSCP можете да преузмете и да је помоћу Wine извршавате на Linux систему.

Да бисте WinSCP извршавали на Linux систему, преузмите wine менаџером пакета дистрибуције, па га затим покрените командом: wine WinSCP.exe.

Да се повежете са Nextcloud:

  • Покрените WinSCP

  • Изаберите ’Session’ у менију

  • Изаберите опцију менија ’New Session’

  • Поставите вредност падајуће листе ’File protocol’ на WebDAV

  • Поставите вредност падајуће листе ’Encryption’ на TLS/SSL Implicit encryption

  • Попуните поље hostname: example.com

  • Попуните поље username: NEXTCLOUDUSERNAME

  • Попуните поље password: NEXTCLOUDPASSWORD

  • Притисните дугме ’Advanced…’

  • Поставите се на ’Environment’, ’Directories’ на левој страни

  • Попуните поље ’Remote directory’ следећом вредности: /nextcloud/remote.php/dav/files/NEXTCLOUDUSERNAME/

  • Притисните дугме ’OK’

  • Притсните дугме ’Save’

  • Изаберите жељене опције и притисните дугме ’OK’

  • Притисните дугме ’Login’ да се повежете са Nextcloud

Белешка

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).