Доброго времени суток.
Поднят сервер WebDav на Linux Apach2:
cat etc/apache2/conf-available/webdav.conf
DavLockDB /var/www/DavLock
Alias /webdav /var/www/webdav
Alias /share /var/www/webdav
<Directory /var/www/webdav>
DAV On
AuthType Basic
AuthName "private area"
AuthBasicProvider PAM
AuthPAMService apache
Require valid-user
</Directory>
Машина с WebDav находится в изолированной от пользователей сети. Доступ к машине осуществляется через прокси на nginx:
(изначальный конфиг)
cat /etc/nginx/conf.d//webdav.conf
server {
listen 80;
server_name webdav.servername.lan;
return 301 https://$host$request_uri;
}
server {
listen 443 ssl http2;
server_name webdav.servername.lan;
include ssl/ser.ssl;
allow 0.0.0.0/0;
access_log off;
open_file_cache_errors off;
location / {
proxy_pass http://ip_address:80;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
client_max_body_size 256M;
}
}
А вот на машинках c Windows была проблема. При попытке подключить сетевой ресурс как диск в проводнике по адресу:
https://webdav.servername.lan/webdav
Проводник запрашивал логин/пароль и после этого выдавал ошибку:
Windows не может получить доступ к webdav.servername.lan Не найдено сетевое имя
На сайте social.technet.microsoft.com, а так же на sysadmins.ru нашел совет о внесении изменений для отключения требований проверки SSL:
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\WebClient\Parameters]
"BasicAuthLevel"=dword:00000002
(измененный конфиг)
cat /etc/nginx/conf.d//webdav.conf
server {
listen 80;
server_name webdav.servername.lan;
allow 0.0.0.0/0;
access_log off;
open_file_cache_errors off;
location / {
proxy_pass http://ip_address:80;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
client_max_body_size 256M;
}
}
server {
listen 443 ssl http2;
server_name webdav.servername.lan;
include ssl/ser.ssl;
allow 0.0.0.0/0;
access_log off;
open_file_cache_errors off;
location / {
proxy_pass http://ip_address:80;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
client_max_body_size 256M;
}
}
P.S. Сторонние клиенты, например WinSCP или «Диск О:» (от mail.ru) работают корректно с ресурсом https://webdav.servername.lan/webdav через https://. В связи с этим я предположил, что проблема не со стороны сервера WebDav, а скорее всего в самом Windows.
Но при этом, к машинке Windows корректно подключается сетевой ресурс от mail.ru https://webdav.cloud.mail.ru/ именно через https://, что приводит к мысли, что что то не так именно на WebDav-сервере или nginx-прокси, и Windows здесь не причем.
В Интернете, методом гугления, нашел кучу подобных постов с вопрошанием о помощи, которые или остались без ответа, или был дан совет в реестре отключить проверку SSL, что так же вопрошающим (в большинстве случаев) не помогло.
Прошу помощи!
Что именно в этой схеме нужно исправить (предположительно или на WebDav-сервере или nginx-прокси), что бы в Windows сетевой ресурс по протоколу WebDav работал без нареканий.
Правка реестра - это конечно хорошо, но не у всех пользователей есть такая возможность. Хотелось, бы, что бы всё заработало без дополнительных настроек со стороны пользователя.
Заранее спасибо всем ответившим.