INT 21h

Hi, I am Vladimir Smagin, SysAdmin and Kaptain. Telegram Email / GIT / RSS / GPG

История провала: webdav и nginx для Windows

№ 10985 В разделе Sysadmin от April 25th, 2020,
В подшивках: , ,

Не пытайтесь, у вас не получится, даже собрав нгинкс с дополнительным модулем и хитро выебнувшись. Я даже нашел статью где говном и палками пытались заставить работать, но этот вариант тоже не прокатил. В общем, не занимайтесь этой херней и не тратьте ваше время.

А знаете что прокатило? Просто поднял в докере готовый образ с апачем и авторизацией и вам того же желаю. Тем не менее, nginx все еще используется, но только для проксирования запросов в докер контейнеры.

Для удобства я использовал docker-compose, просто потому, что нужно несколько директорий. Да и просто это удобно если вы захотите что-то перенастроить (изменить пароли или директории) и переподнять все контейнеры с вебдавом.

version: '3.7'
services:

  root:
    image: bytemark/webdav
    restart: always
    environment:
      USERNAME: root
      PASSWORD: RootOrUrcyasinUbbeunEmsAjofgoi
      AUTH_TYPE: Digest
      LOCATION: /
    volumes:
      - /var/shared/clients:/var/lib/dav
    ports:
      - 127.0.0.1:6000:80

  client1:
    image: bytemark/webdav
    restart: always
    environment:
      USERNAME: client1
      PASSWORD: siewiamiddEenobcegbogNengawgod
      AUTH_TYPE: Digest
      LOCATION: /
    volumes:
      - /var/shared/clients/data/client1:/var/lib/dav
    ports:
      - 127.0.0.1:6001:80

  client2:
    image: bytemark/webdav
    restart: always
    environment:
      USERNAME: client2
      PASSWORD: CaquopBatsOdHeaskAkCiodnostav0
      AUTH_TYPE: Digest
      LOCATION: /
    volumes:
      - /var/shared/clients/data/client2:/var/lib/dav
    ports:
      - 127.0.0.1:6002:80

Пример конфигурации прокси для nginx. Обратите внимание на то, что нет SSL подключения, Windows просто отказался работать с ним 🙂

cat /etc/nginx/clients/client1.server.ru.conf 
server {
    listen 80;
    server_name client1.server.ru;

    location / {
        proxy_pass http://127.0.0.1:6001/;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    }
}

Теперь можно подключаться из Windows. Делать это через GUI или в консольке дело ваше, я люблю из консольки

C:\Users\21h>net use k: http://client1.server.ru /user:client1 siewiamiddEenobcegbogNengawgod /persistent:yes
Команда выполнена успешно.

Все работает без всякого геморроя.

Нет комментариев »

Leave a Reply

Your email address will not be published. Required fields are marked *

*

Облачная платформа
Яндекс.Метрика

Fortune cookie: Today's spam: Sex for an average American lasts 28 minutes.