Делаем свой webdav server на nginx с авторизацией через OPENLDAP

Делаем свой webdav server на nginx с авторизацией через OPENLDAP
Решил зафигачить nginx с opanldap авторизацией.
Собираем докер nginx c блэкджеком и шлюхами.Далее я все выложил в репозитории.

Предполагается, что у нас есть сервер openldap. Смотрим если что сюда.
Запускаем все это гавно через docker-compose.

git clone https://github.com/galushkoav/nginx-webdav-ldap.git
cd nginx-webdav-ldap

Правим конфиг

nano configs/nginx/conf.d/backup.itc-life.ru.conf

Там меняем свои данные. Далее билдим мой крутой докер

bash build-docker.sh

Далее делаем инит сварма

docker swarm init
Далее деплоим
bash run.sh

Жопой высветиться 280 порт.
Херачим права на каталог

sudo chmod 777 -R BACKUPS

Загружаем файл. Каталоги создадутся автоматом

curl --progress-bar -T ~/test.png http://пользователь:пароль@backups.itc-life.ru:280/temp/test.png  | tee /dev/null

Загрузить файл и получить код ответа

curl --progress-bar -T ~/test.png http://пользователь:пароль@backups.itc-life.ru:280/temp/test.png  -sw '%{http_code}'

Например :

201 - создан;
204 - обновлен;

Удаляем файл

curl -X DELETE -u пользователь:пароль "http://backups.itc-life.ru:280/temp/test.png"

Переместить(переименовать) файл в webdav

curl -X MOVE -u пользователь:пароль --header 'Destination:http://backups.itc-life.ru:280/temp/test.png' 'http://backups.itc-life.ru:280/temp/test_new.png' -sw '%{http_code}'

Получить список файлов и каталогов в папке webdav

curl -s -u "пользователь:пароль"  "http://пользователь:пароль@backups.itc-life.ru:280/temp/" --list-only |  cut -d"\"" -f2   |  sed '/>/d'  |  sed '/\.\.\//d' | sed '1d'

Получить список только файлов папке webdav

curl -s -u "пользователь:пароль"  "http://пользователь:пароль@backups.itc-life.ru:280/temp/" --list-only |  cut -d"\"" -f2   |  sed '/>/d'  |  sed '/\.\.\//d' | sed '1d' | | sed '/\//d'

Скачать файл c web

curl -u пользователь:пароль  http://backups.itc-life.ru:280/temp/test.png -o test.png

Получить дату создания файла

curl -sI  -u "пользователь:пароль"  "http://backups.itc-life.ru:280/temp/test.png" 2>&1 | grep 'Last-Modified'
....
Last-Modified: Sat, 09 Jun 2018 05:50:47 GMT

Всем спасибо. Особенно мне

Опубликовано в Nginx

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

 

Этот сайт использует Akismet для борьбы со спамом. Узнайте, как обрабатываются ваши данные комментариев.