https://github.com/hacdias/webdav ```sh ssh igor@192.168.200.81 -p 22 ``` ```sh sudo apt update && sudo apt install golang-go ``` ```sh git clone https://github.com/hacdias/webdav.git && cd webdav ``` ```sh go build -o webdav . ``` ```sh cd /opt/webdav && sudo tee config.yml > /dev/null <<'EOF' address: "0.0.0.0" port: 8085 directory: "." permissions: "R" debug: true users: - username: admin password: "U8Z0a6YY7taZ965" directory: "/mnt/backups" permissions: "CRUD" EOF ``` Пытаемся запустить ```sh cd /opt/webdav && ./webdav --config config.yml ``` Проверяем что работает: ```sh open http://192.168.200.81:8085 ``` Находим и убиваем процесс ```sh ps aux | grep webdav ``` ```sh pkill -f 'webdav --config config.yml' ``` Создаю пользователя webdav ```sh sudo useradd -r -s /sbin/nologin -d /opt/webdav -m webdav && sudo chown -R webdav:webdav /opt/webdav && sudo chmod -R 750 /opt/webdav ``` ```sh sudo nano /etc/systemd/system/webdav.service ``` ```sh cd /etc/systemd/system/ && sudo tee webdav.service > /dev/null <<'EOF' [Unit] Description=WebDAV Server After=network.target [Service] WorkingDirectory=/opt/webdav ExecStart=/opt/webdav/webdav --config config.yml User=webdav Group=webdav Restart=on-failure [Install] WantedBy=multi-user.target EOF ``` ```sh sudo systemctl daemon-reexec && sudo systemctl enable webdav && sudo systemctl start webdav ``` ```sh sudo systemctl status webdav ``` ```sh sudo journalctl -u webdav -b ``` Теперь WebDAV доступен по адресу: ```sh start https://yourdomain.com/webdav/ ``` ## Настройка HAProxy Edit haproxy configuration file: ```sh sudo mcedit /etc/haproxy/haproxy.cfg ``` frontend HTTPS: ```config frontend https-in bind *:443 ssl crt /etc/ssl/private/yourdomain.pem acl is_webdav path_beg /webdav use_backend webdav_backend if is_webdav ``` В backend: ```config backend webdav_backend server webdav1 127.0.0.1:8085 ``` ```sh haproxy -f /etc/haproxy/haproxy.cfg -c ```` ```sh sudo systemctl restart haproxy ``` Для винды можно подключить диск при помощи: ``` open https://www.raidrive.com/ ```