{"id":15717432,"url":"https://github.com/yar229/webdavmailrucloud","last_synced_at":"2025-04-04T19:11:27.517Z","repository":{"id":43575705,"uuid":"66630246","full_name":"yar229/WebDavMailRuCloud","owner":"yar229","description":"WebDAV cloud.mail.ru ...\u0026 Yandex.Disk | WebDAV Облако Mail.Ru Сетевой Диск","archived":false,"fork":false,"pushed_at":"2024-05-16T22:26:17.000Z","size":7946,"stargazers_count":496,"open_issues_count":38,"forks_count":60,"subscribers_count":41,"default_branch":"master","last_synced_at":"2025-04-04T19:11:18.847Z","etag":null,"topics":["cloud","cloud-mail-ru","cloudmailru","disk","disko","linux","mac","macosx","mailru","ru-cloud","wdmrc","webdav","webdavcloudmailru","webdavmailru","yandex-api","yandex-disk"],"latest_commit_sha":null,"homepage":"","language":"C#","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/yar229.png","metadata":{"files":{"readme":"readme.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2016-08-26T08:21:33.000Z","updated_at":"2025-04-02T13:58:05.000Z","dependencies_parsed_at":"2024-08-01T15:48:24.843Z","dependency_job_id":null,"html_url":"https://github.com/yar229/WebDavMailRuCloud","commit_stats":null,"previous_names":[],"tags_count":151,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/yar229%2FWebDavMailRuCloud","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/yar229%2FWebDavMailRuCloud/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/yar229%2FWebDavMailRuCloud/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/yar229%2FWebDavMailRuCloud/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/yar229","download_url":"https://codeload.github.com/yar229/WebDavMailRuCloud/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247234922,"owners_count":20905854,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["cloud","cloud-mail-ru","cloudmailru","disk","disko","linux","mac","macosx","mailru","ru-cloud","wdmrc","webdav","webdavcloudmailru","webdavmailru","yandex-api","yandex-disk"],"created_at":"2024-10-03T21:49:59.451Z","updated_at":"2025-04-04T19:11:27.492Z","avatar_url":"https://github.com/yar229.png","language":"C#","readme":"﻿## **WebDAV emulator for Cloud.mail.ru / Yandex.Disk**\u003cbr\u003e\n\n\u003ca href=\"https://github.com/yar229/WebDavMailRuCloud/releases/latest\"\u003e\u003cimg src=\"https://img.shields.io/github/v/release/yar229/WebDavMailRuCloud?include_prereleases\"\u003e\u003c/a\u003e\n\u003cimg src=\"https://img.shields.io/github/last-commit/yar229/WebDavMailRuCloud\" target=\"_blank\"\u003e \u003cimg src=\"https://img.shields.io/github/downloads/yar229/WebDavMailRuCloud/total\" align=\"right\" target=\"_blank\"\u003e\n\n----\n@ZZZConsulting:\u003cbr /\u003e\nДополнительно сделан вход на Яндекс.Диск с помощью браузера.\u003cbr\u003e\nПоддерживается всё разнообразие вариантов аутентификации, включая СМС-коды и QR-коды.\n\nВерсия .NET обновлена до 7.0, включая поддержку установки сервисом Windows.\n\n\u003chr\u003e\n\u003cbr\u003e\n\u003cbr\u003e\n\n#### Requirements \u003cimg src=\"https://habrastorage.org/files/72e/83b/159/72e83b159c2446b9adcdaa03b9bb5c55.png\" width=200 align=\"right\"/\u003e\n* [Windows](#windows)  - .NET Framework 4.8 / [.NET 3.1 / 5.0 / 6.0 / 7.0](https://dotnet.microsoft.com/download?initial-os=windows)\n* [Linux](#linux) - Mono 6.8 / [.NET 3.1 / 5.0 / 6.0 / 7.0](https://dotnet.microsoft.com/download?initial-os=linux)\n* [OS X](#mac-os-x) - Mono 6.8 / [.NET 3.1 / 5.0 / 6.0 / 7.0](https://dotnet.microsoft.com/download?initial-os=macos)\n\n#### Usage\n```\n  -p, --port            (Default: 801) WebDAV server port or several ports separated by `,`\n  -h, --host            (Default: \"http://127.0.0.1\") WebDAV server host with protocol (http://* for http://0.0.0.0)\n  --maxthreads          (Default: 5) Maximum concurrent connections to cloud.mail.ru / disk.yandex.ru\n  --use-locks           use locking feature\n  --cache-listing       (Default: 30) Cache folders listing, sec\n  --cache-listing-depth (Default: 1) Cache folders listing depth.\n                        If large folder browsing is extremely slow, set to 2\n\n  --protocol            (Default: WebM1Bin) Cloud protocol\n                        * WebM1Bin  - (Cloud.Mail.Ru) mix of mobile and DiskO protocols\n                        * WebV2     - (Cloud.Mail.Ru) [deprecated] desktop browser protocol\n                        * YadWeb    - (Yandex.Disk) desktop browser protocol, see Yandex.Disk readme section\n                        * YadWebV2  - (Yandex.Disk) desktop browser protocol with browser authentication, see Yandex.Disk readme section\n\n  --use-deduplicate     Enable deduplication (upload speedup, put by hash), see Using deduplication readme section\n\n  --install \u003cservicename\u003e          Install as windows service (Windows .Net 4.8/7.0 versions only)\n  --install-display \u003cdisplayname\u003e  Display name for Windows service (Windows .Net 4.8/7.0 versions only)\n  --uninstall \u003cservicename\u003e        Uninstall windows service (Windows .Net 4.8/7.0 versions only)\n\n  --proxy-address \u003csocks|https|http\u003e://\u003caddress\u003e:\u003cport\u003e   Use proxy\n  --proxy-user \u003cusername\u003e                                 Proxy user name\n  --proxy-password \u003cpassword\u003e                             Proxy password\n\n  --help                Display this help screen.\n  --version             Display version information.\n\n  -user-agent           overrides default 'user-agent' string in request headers while accessing clouds.\n  -sec-ch-ua            overrides default 'sec-ch-ua' string in request headers while accessing clouds.\n```\n\n#### Hasher.exe usage\n\nCalculating hashes for local files\n\n```\n  --files            (Group: sources) Filename(s)/wildcard(s) separated by space\n\n  --lists            (Group: sources) Text files with wildcards/filenames separated by space\n\n  --protocol         (Default: WebM1Bin) Cloud protocol to determine hasher\n\n  -r, --recursive    (Default: false) Perform recursive directories scan\n\n  --help             Display this help screen.\n\n  --version          Display version information.\n```\n\n### Using deduplication (upload speedup, put by hash)\n\nEdit `\u003cDeduplicate\u003e` section in `wdmrc.config`:\n\n```\n  \u003cDeduplicate\u003e\n    \u003c!-- Path for disk file cache --\u003e\n    \u003cDisk Path = \"d:\\Temp\\WDMRC_Cache\" /\u003e\n\n    \u003c!--\n      Cache: on disk or in-memory file caching\n      Target:  path with filename in cloud, .NET regular expression,\n               see https://docs.microsoft.com/ru-ru/dotnet/standard/base-types/regular-expressions\n      MinSize: minimum file size\n      MaxSize: maximum file size\n      --\u003e\n    \u003cRules\u003e\n      \u003c!-- cache any path/file contains \"EUREKA\" in disk cache--\u003e\n      \u003cRule Cache=\"Disk\" Target = \"EUREKA\" MinSize = \"0\" MaxSize = \"0\" /\u003e\n\n      \u003c!-- small files less than 15000000 bytes will be cached in memory --\u003e\n      \u003cRule Cache=\"Memory\" Target = \"\" MinSize = \"0\" MaxSize = \"15000000\" /\u003e\n\n      \u003c!-- files larger than 15000000 bytes will be cached on disk --\u003e\n      \u003cRule Cache=\"Disk\" Target = \"\" MinSize = \"15000000\" MaxSize = \"0\" /\u003e\n    \u003c/Rules\u003e\n  \u003c/Deduplicate\u003e\n```\nThen run with `--use-deduplicate` command line key.\n\n\n\n### Yandex.Disk\n\n(download [latest Release](https://github.com/ZZZConsulting/WebDavMailRuCloud/releases/), use `--protocol YadWebV2` command line key)\n\nYandex.Disk WebDAV issues\n\n* It seems Yandex.Disk WebDAV is limited by speed now.\n* After file uploading Yandex servers calculating hash.\n  E.g. for a 10GB file it may take ~1..2 minutes depending on server load.\n  So most of WebDAV clients drops connection on timeout.\n* There's no WebDAV info in official help now. WTF?\n\nThis solution allow to bypass that limits using unofficial Yandex.Disk Web API.\n\nYandex.Disk WebDAV authentication\n\nThere are 2 ways to get into Yandex.Disk:\n* Use login \u0026 password only.\n  The option to use login \u0026 password only must be selected in account settings.\n  In this case login (e.g. John or John@yandex.ru)\n  and main account password should be used in authentication fields.\n  Do not use an Application password or any other special password generated by Yandex,\n  the main original account password must be used. And no codes from SMS!\n* Use standard browser authentication.\n  Use the YandexAuthBrowser application.\n  In this case you can use any available Yandex authentication\n  including SMS and QR codes.\n  For more details read the YandexAuthBrowser section.\n\n\n***YandexAuthBrowser*** \u003cbr/\u003e\n\n1. Download the package with YandexAuthBrowser.\n\n2. Choose a folder for the program.\n* The access to folder must be __unrestricted__ for the program!\u003cbr\u003e\nThe program writes into sub-folders, so it must have full unrestricted rights on the folder and sub-folders.\u003cbr\u003e\nC:\\\\, C:\\Program Files and so on is not a good choice, the program will not work properly.\nThe better choice is \"%userprofile%\\AppData\\Local\\YandexAuthBrowser\\\" folder.\n* The folder must be __secured__ from anyone else!\u003cbr\u003e\nThe sub-folders contain cookies and other sensitive information\nfor easy access any of your data inside on your Yandex.Disk!\u003cbr\u003e\nPlease keep program sub-folders from other's dirty hands!\n\n3. Unpack YandexAuthBrowser into selected secured folder.\nRun the YandexAuthBrowser.\u003cbr\u003e\nChoose a port number to listen to incoming authentication request on.\u003cbr\u003e\nSet a password or use link to generate GUID as a new password.\u003cbr\u003e\nAlso you can test the authentication process using Test button.\n\n4. Open `wdmrc.config` and edit `\u003cBrowserAuthenticator\u003e` tag\n(add the tag if it's missing).\u003cbr\u003e\nAttributes:\u003cbr\u003e\n  `Url`=\"http://localhost:`\u003cport\u003e`/\" - address of the PC running YandexAuthBrowser application,\n  `port` means port number you selected on previous step in YandexAuthBrowser application.\u003cbr\u003e\n  `Password`=\"`E86A63FC-9BF0-4351-AD51-A5F806BA38EF`\" - password or GUID\n  you selected on previous step in YandexAuthBrowser application.\u003cbr\u003e\n  The `E86A63FC-9BF0-4351-AD51-A5F806BA38EF` is an example of password, use your own please.\n  The privacy of your password prevents intruders from accessing your private data on Yandex.Disk!\u003cbr\u003e\n  `CacheDir`=\"`full path to a secured folder`\" - full path to a folder with cache files\n  containing browser cookies after authenticated access to your Yandex.Disk.\n  This folder must be placed in restricted location.\n  Only you and your BrowserAuthenticator must have access to the folder!\n  __If anyone gets files from the folder he or she may easily take your data on Yandex.Disk!__\n  So keep the folder secured!\n  If you do not trust or if you do not want to keep cache, keep `CacheDir` attribute empty.\n  Also you may delete any sub-folder but 'runtimes' in the BrowserAuthenticator application's folder.\n  If you trust you PC enough, you can use a folder like \"%userprofile%\\AppData\\Local\\YandexAuthBrowser\\\"\n  for the cache.\n  Replace the %userprofile% with actual path.\n\n5. When you connect to a webdav:\n* Fill the `login` field with short (John) or full (John@yandex.ru) name of the account.\u003cbr\u003e\n* Leave the `password` field empty (or put one or more spaces in case your program disallows empty passwords).\u003cbr\u003e\nIf `password` is empty or space(s) only the `Password` from `\u003cBrowserAuthenticator\u003e` tag is used\nto authenticate the request to the BrowserAuthenticator program.\nIf passwords are not matched the BrowserAuthenticator rejects the request.\u003cbr\u003e\n* Fill the `password` field with `Password` taken from BrowserAuthenticator application.\u003cbr\u003e\nIn this case the `Password` from `\u003cBrowserAuthenticator\u003e` tag is not used.\nAlso you may remove `Password` attribute in `\u003cBrowserAuthenticator\u003e` tag.\n\n6. Press Win+R and run `shell:startup`. Put shortcut of the BrowserAuthenticator program in startup folder,\nso the BrowserAuthenticator program will be started everytime you login the Windows.\nThe program stays in system tray until you reboot or manually exit it using menu on tray icon.\n\n\n\n***How to use encryption***\n\nUsing XTS AES-256 on-the-fly encryption/decryption\n\n* Set (en/de)cryption password\n  * with `\u003e\u003ecrypt passwd` special command \u003cbr/\u003e\n\tor\n  * Add `#` and separator string to your login: `login@mail.ru#_SEP_`\n  * After your mail.ru password add separator string and password for encrypting: `MyLoginPassword_SEP_MyCryptingPassword`\n\n* Mark folder as encrypted using `\u003e\u003ecrypt init` command\n* After that files uploaded to this folder will be encrypted\n\n***Commands*** \u003cbr/\u003e\nCommands executed by making directory with special name.\u003cbr/\u003e\nParameters with spaces must be screened by quotes.\n* `\u003e\u003ejoin SHARED_FOLDER_LINK` Clone shared cloud.mail.ru file/folder to your account\n* `\u003e\u003ejoin #filehash filesize [/][path]filename` Clone cloud.mail.ru file to your account by known hash and size\n* `\u003e\u003elink SHARED_FOLDER_LINK [linkname]` Link shared folder without wasting your space (or manually edit file /item.links.wdmrc)\n* `\u003e\u003elink check` Remove all dead links (may take time if there's a lot of links)\n* `\u003e\u003emove` `/full/path/from /full/path/to` Fast move (if your client moves inner items recursively)\n* `\u003e\u003ecopy` `/full/path/from /full/path/to` Fast copy (if your client copies inner items recursively)\n* `\u003e\u003elcopy` `x:/local/path/from /full/server/path/to` If file already in cloud, add it by hash without uploading\n* `\u003e\u003erlist` [[/]path] [list_filename]\tlist [path] to [list_filename]\n* `\u003e\u003edel [[/]path]` Fast delete (if your client makes recursive deletions of inner items)\n* `\u003e\u003eshare [[/]path]` Make file/folder public \u003cbr/\u003e\n  - and create `.share.wdmrc` file with links\n* `\u003e\u003esharev [[/]path] [resolution]` Make media file public \u003cbr/\u003e\n  - `resolution` = `0p` (all), `240p`, `360p`, `480p`, `720p`, `1080p`\n  - and create `.share.wdmrc` file with public and direct play links\n* `\u003e\u003epl [[/]path]  [resolution]` Make media file public \u003cbr/\u003e\n  - `resolution` = `0p` (all), `240p`, `360p`, `480p`, `720p`, `1080p`\n  - and create `.share.wdmrc` file with public and direct play links \u003cbr/\u003e\n  - and create `.m3u8` playlist file\n* `\u003e\u003ecrypt init` Mark current folder as encrypted\n* `\u003e\u003ecrypt passwd password_for_encryption_decryption` Set password for encryption/decryption\n\n***Settings*** in `wdmrc.exe.config`\n* Logging \u003cbr/\u003e\n\t`\u003cconfig\u003e\u003clog4net\u003e` \u003cbr/\u003e\n\tIt's standard [Apache log4net](https://logging.apache.org/log4net/) configurations, take a look for [examples](https://logging.apache.org/log4net/release/config-examples.html)\n    Additionally you can use `protocol` and `port` properties taken from command-line parameters.\n* Default video resolution for generated m3u playlists\n    `\u003cconfig\u003e\u003cDefaultSharedVideoResolution\u003e` \u003cbr/\u003e\n    Values:\n      `0p`      auto, m3u contains links to all available resolutions \n      `240p`    ~ 352 x 240\n      `360p`    ~ 480 x 360\n      `480p`    ~ 858 x 480\n      `720p`    ~ 1280 x 720\n      `1080p`   ~ 1920 x 1080\n* Default User-Agent \u003cbr/\u003e\n\t`\u003cconfig\u003e\u003cDefaultUserAgent\u003e` \u003cbr/\u003e\n\tDefault user-agent for web requests to cloud.\n* Special command prefix \u003cbr/\u003e\n\t`\u003cconfig\u003e\u003cAdditionalSpecialCommandPrefix\u003e` \u003cbr/\u003e\n\tcustom special command prefix instead of `\u003e\u003e`. Make possible to use special commands if client doesn't allow `\u003e\u003e`.\n* Enable/disable WebDAV properties \u003cbr/\u003e\n\t`\u003cconfig\u003e\u003cWebDAVProps\u003e` \u003cbr/\u003e\n\tset `false` on properties you don't need to speedup listing on large catalogs / slow connections.\n* 2 Factor Authentication \u003cbr/\u003e\n\tAt this time you can use\n\t* `\u003cTwoFactorAuthHandler Name = \"AuthCodeConsole\"/\u003e` - asks for authcode in application console\n\t* `\u003cTwoFactorAuthHandler Name = \"AuthCodeWindow\"/\u003e` - asks for authcode in GUI window (only for .NET Framework releases)\n\t* \n\t\t```\n\t\t\u003cTwoFactorAuthHandler Name = \"AuthCodeFile\"\u003e\n\t\t\t\u003cParam Name = \"Directory\" Value = \"d:\"/\u003e\n\t\t\t\u003cParam Name = \"FilenamePrefix\" Value = \"wdmrc_2FA_\"/\u003e\n\t\t\u003c/TwoFactorAuthHandler\u003e\n\t\t```\n\t   user must write authcode to file. For example, user `test@mail.ru` writes code to `d:\\wdmrc_2FA_test@mail.ru`.\n\t\n\t\n\tBe careful, this methods does not usable when application started as a service/daemon. \u003cbr\u003e\n\tYou can make your own 2FA handlers inherited from `ITwoFaHandler` and put it in separate dll which name starts with `MailRuCloudApi.TwoFA`\n\t\nConnect with (almost any) file manager that supports WebDAV using Basic authentication with no encryption and\n* your cloud.mail.ru email and password\n* or `anonymous` login if only public links list/download required ([WinSCP script example](https://github.com/yar229/WebDavMailRuCloud/issues/146#issuecomment-448978833))\n\nAutomatically split/join when uploading/downloading files larger than cloud allows.\n\n[Russian FAQ](https://gist.github.com/yar229/4b702af114503546be1fe221bb098f27) \u003cbr/\u003e\n[geektimes.ru - Снова про WebDAV и Облако Mail.Ru](https://geektimes.ru/post/285520/) \u003cbr/\u003e\n[glashkoff.com - Как бесплатно подключить Облако Mail.Ru через WebDAV](https://glashkoff.com/blog/manual/webdav-cloudmailru/) \u003cbr/\u003e\n[manjaro.ru - Облако Mail.Ru подключаем через эмулятор WebDav как сетевой диск](https://manjaro.ru/how-to/oblako-mailru-podklyuchaem-cherez-emulyator-webdav-kak-setevoy-disk.html) \u003cbr/\u003e\n\n\n#### Windows\n\nUsing as windows service\n* Run `cmd` with Administrator rights\n* Then, for example, `wdmrc.exe --install wdmrc -p 801 --maxthreads 15` \u003cbr/\u003e\n* `net start wdmrc`\n\n\u003cbr/\u003e\n\n\u003cdetails\u003e \n\u003csummary\u003eUsing from explorer requires enabled Basic Auth for WebDAV \u003c/summary\u003e\n* Press Win+R, type `regedit`, click OK\n* HKEY_LOCAL_MACHINE\\SYSTEM\\CurrentControlSet\\Services\\WebClient\\Parameters\n* Right click on the BasicAuthLevel and click Modify\n* In the Value data box, type 2, and then click OK.\n* Reset computer (or run `cmd` with admin rights and then `net stop webclient`, `net start webclient`)\n\u003c/details\u003e\n\n\u003cdetails\u003e \n\u003csummary\u003eUse as Windows disk \u003c/summary\u003e\n```\nnet use ^disk^: http://^address^:^port^ ^your_mailru_password^ /USER:^your_mailru_email^\n```\n\u003c/details\u003e\n\n\u003cdetails\u003e\n\u003csummary\u003eFaster WebDAV Performance in Windows 7\u003c/summary\u003e\nWindows 7 client might perform very bad when connecting to any WebDAV server. This is caused, because it tries to auto-detect any proxy server before any request. Refer to KB2445570 for more information.\n\n* In Internet Explorer, open the Tools menu, then click Internet Options.\n* Select the Connections tab.\n* Click the LAN Settings button.\n* Uncheck the “Automatically detect settings” box.\n* Click OK until you’re out of dialog.\n\u003c/details\u003e\n\n\u003cdetails\u003e\n\u003csummary\u003eBy default, Windows limits file size to 5000000 bytes, you can increase it up to 4Gb\u003c/summary\u003e\n* Press Win+R, type `regedit`, click OK\n* HKEY_LOCAL_MACHINE\\SYSTEM\\CurrentControlSet\\Services\\WebClient\\Parameters\n* Right click on the FileSizeLimitInBytes and click Modify\n* Click on Decimal\n* In the Value data box, type 4294967295, and then click OK.\n* Reset computer (or run `cmd` with admin rights and then `net stop webclient`, `net start webclient`)\n\u003c/details\u003e\n\n\u003cdetails\u003e\n\u003csummary\u003eWrong disk size when mapped as Windows drive\u003c/summary\u003e\n[Microsoft says - \"It's not a bug, it's by design\"](https://support.microsoft.com/en-us/kb/2386902)\n\u003c/details\u003e\n\n\n#### Linux\n\n(tested under [Elementary OS](https://elementary.io) and [Lubuntu](http://lubuntu.net/))\n* download and unzip [latest](https://github.com/yar229/WebDavMailRuCloud/releases/latest) release  \u003csub\u003e\u003csup\u003e([obsolete alternative way](https://toster.ru/q/375448) from [Алексей Немиро](https://toster.ru/user/AlekseyNemiro) )\u003c/sup\u003e\u003c/sub\u003e\n* .Net Framework (WebDAVCloudMailRu-*-dotNet45.zip)\n  * `sudo apt install apt mono-complete`\n  * `mono wdmrc.exe -p \u003cport\u003e`\n* .Net Core (WebDAVCloudMailRu-*-dotNetCore20.zip)\n  * install [.NET Core](https://www.microsoft.com/net/core#linuxredhat)\n  * `dotnet wdmrc.dll \u003cparams\u003e`\n\n\nSee also \n* [Package for Gentoo Linux](https://github.com/yar229/WebDavMailRuCloud/issues/66) by [powerman](https://github.com/powerman)\n* Docker image by [slothds](https://github.com/slothds) ([DockerHub](https://hub.docker.com/r/slothds/wdmrc-proxy/), [GitHub](https://github.com/slothds/wdmrc-proxy))\n* Docker image by [ivang7](https://github.com/ivang7) HTTP \u0026 HTTPS [DockerHub](https://hub.docker.com/r/ivang7/webdav-mailru-cloud)\n\n\n\n\nMount with davfs2\n* `mkdir /mnt/\u003cfolder\u003e`\n* edit `/etc/davfs2/davfs2.conf` set `use_locks       0`\n* `sudo mount --rw -t davfs http://\u003caddress\u003e:\u003cport\u003e /mnt/\u003cfolder\u003e/ -o uid=\u003ccurrent_linux_user\u003e`\n\nAs a service (daemon)\n* https://github.com/yar229/WebDavMailRuCloud/issues/214\n\n\nCERTIFICATE_VERIFY_FAILED exception\n[Issue 56](https://github.com/yar229/WebDavMailRuCloud/issues/56)\n[default installation of Mono doesn’t trust anyone](http://www.mono-project.com/docs/faq/security/)\n\nIn short:\n```\n# cat /etc/ssl/certs/* \u003eca-bundle.crt\n# cert-sync ca-bundle.crt\n# rm ca-bundle.crt\n```\n\n#### Mac OS X\n\n* download and unzip [latest](https://github.com/yar229/WebDavMailRuCloud/releases/latest) release  \u003csub\u003e\u003csup\u003e([obsolete alternative way](https://toster.ru/q/375448) from [Алексей Немиро](https://toster.ru/user/AlekseyNemiro) )\u003c/sup\u003e\u003c/sub\u003e\n* .Net Framework (WebDAVCloudMailRu-*-dotNet45.zip)\n  * `brew install mono` (how to install [brew](https://brew.sh/))\n  * `mono wdmrc.exe -p \u003cport\u003e`\n* .Net Core (WebDAVCloudMailRu-*-dotNetCore20.zip)\n  * install [.NET Core](https://www.microsoft.com/net/core#macos)\n  * `dotnet wdmrc.dll \u003cparams\u003e`\n\nUse any client supports webdav.\n\n\n#### Remarks\n* [**RaiDrive**](https://www.raidrive.com/)\n* [**NetDrive**](http://www.netdrive.net/)\n* [**rclone mount**](https://rclone.org/)\n* [**Total Commander**](http://www.ghisler.com/): \n  - requires to update `WebDAV plugin` to [v.2.9](http://ghisler.fileburst.com/fsplugins/webdav.zip)\n  - turn on `(connection properties) -\u003e Send\\Receive accents in URLs as UTF-8 Unicode`\n* [**WebDrive**](https://southrivertech.com/products/webdrive/): \n  - disable `(disk properties) -\u003e HTTP Settings -\u003e Do chunked upload for large files.`\n* [**CarotDAV**](http://rei.to/carotdav_en.html): \n  - check `(connection properties) -\u003e Advanced -\u003e Don't update property.`\n* avoid using Unicode non-printing characters such as [right-to-left mark](https://en.wikipedia.org/wiki/Right-to-left_mark) in file/folder names\n\n\n#### Big thanks\n* [Ramon de Klein](https://github.com/ramondeklein) for [nwebdav server](https://github.com/ramondeklein/nwebdav)\n* [Erast Korolev](https://github.com/erastmorgan) for [Mail.Ru.net-cloud-client](https://github.com/erastmorgan/Mail.Ru-.net-cloud-client)\n* [Gareth Lennox](https://bitbucket.org/garethl/) for [XTSSharp](https://bitbucket.org/garethl/xtssharp)\n* [C-A-T](https://github.com/C-A-T9LIFE) for testing and essential information\n\n\n#### See also\u003cbr\u003e\n*  Official client [Disk-O:](https://disk-o.cloud/)\n*  [Total Commander plugin for cloud.mail.ru service](https://github.com/pozitronik/CloudMailRu)\u003cbr\u003e\n*  [MARC-FS - FUSE filesystem attempt for Mail.Ru Cloud](https://gitlab.com/Kanedias/MARC-FS)\u003cbr\u003e\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fyar229%2Fwebdavmailrucloud","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fyar229%2Fwebdavmailrucloud","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fyar229%2Fwebdavmailrucloud/lists"}