From 6a8e5ca2a07e6daf58227bd52d5d8c6ea4270a89 Mon Sep 17 00:00:00 2001 From: akovalov81 Date: Tue, 28 Jul 2026 19:24:46 +0300 Subject: [PATCH] vault backup: 2026-07-28 19:24:46 --- .../Self Hosted/sftpgo/Sftpgo.YAML.md | 29 +++++++ .../Self Hosted/sftpgo/sftpgo.md | 1 + .../Словник термінів/WebDAV.md | 87 +++++++++++++++++++ 3 files changed, 117 insertions(+) create mode 100644 1.Projects/Персональний сайт портфоліо/Self Hosted/sftpgo/Sftpgo.YAML.md create mode 100644 2.Areas/Системне адміністрування/Словник термінів/WebDAV.md diff --git a/1.Projects/Персональний сайт портфоліо/Self Hosted/sftpgo/Sftpgo.YAML.md b/1.Projects/Персональний сайт портфоліо/Self Hosted/sftpgo/Sftpgo.YAML.md new file mode 100644 index 0000000..c4f2bca --- /dev/null +++ b/1.Projects/Персональний сайт портфоліо/Self Hosted/sftpgo/Sftpgo.YAML.md @@ -0,0 +1,29 @@ +version: "3.8" + +services: + sftpgo: + image: drakkan/sftpgo:latest + container_name: sftpgo + ports: + - "8080:8080" + - "2022:2022" + - "8022:8022" + - "8081:8081" + - "990:990" + environment: + - SFTPGO_WEBDAVD__BINDINGS__0__PORT=10080 + - SFTPGO_SFTPD__BINDINGS__0__PORT=2022 + - SFTPGO_HTTPD__BINDINGS__0__PORT=8080 + - SFTPGO_DATA_PROVIDER__DRIVER=sqlite + # Указываем путь к БД внутри контейнера (соответствует объему sftpgo_data) + - SFTPGO_DATA_PROVIDER__NAME=/var/lib/sftpgo/sftpgo.db + - SFTPGO_LOG__LEVEL=info + - SFTPGO_BOOTSTRAP_ADMIN_USERNAME=admin + - SFTPGO_BOOTSTRAP_ADMIN_PASSWORD=admin + volumes: + # Монтируем локальные папки на диске в пути внутри контейнера + - /mnt/docker_data/sftpgo/data:/var/lib/sftpgo + - /mnt/docker_data/sftpgo/storage:/srv/sftp + - /mnt/docker_data/music:/mnt/music + - /mnt/docker_data/sd:/mnt/sd + restart: unless-stopped \ No newline at end of file diff --git a/1.Projects/Персональний сайт портфоліо/Self Hosted/sftpgo/sftpgo.md b/1.Projects/Персональний сайт портфоліо/Self Hosted/sftpgo/sftpgo.md index e69de29..cc04fa9 100644 --- a/1.Projects/Персональний сайт портфоліо/Self Hosted/sftpgo/sftpgo.md +++ b/1.Projects/Персональний сайт портфоліо/Self Hosted/sftpgo/sftpgo.md @@ -0,0 +1 @@ +**SFTPGo** — це сучасний, високопродуктивний сервер обміну файлами з відкритим вихідним кодом (написаний на Go), який розширює можливості стандартного SSH/SFTP до повноцінного корпоративного рішення для керування даними. diff --git a/2.Areas/Системне адміністрування/Словник термінів/WebDAV.md b/2.Areas/Системне адміністрування/Словник термінів/WebDAV.md new file mode 100644 index 0000000..f79ce8d --- /dev/null +++ b/2.Areas/Системне адміністрування/Словник термінів/WebDAV.md @@ -0,0 +1,87 @@ +**WebDAV** (Web Distributed Authoring and Versioning) — це розширення протоколу HTTP/HTTPS, яке перетворює вебсервер на віддалений мережевий диск. + +Якщо спростити, WebDAV дозволяє працювати з файлами на віддаленому сервері так само, як із звичайною папкою на ПК: відкривати, редагувати, перейменовувати, видаляти та зберігати зміни напряму, без необхідності щоразу вручну завантажувати й скачувати файли через FTP чи браузер. + +## Як WebDAV працює під капотом? + +WebDAV додає до стандартних команд HTTP (`GET`, `POST`, `DELETE`) власні методи для роботи з файловою системою: + +- **`PROPFIND`** / **`PROPPATCH`** — зчитування та зміна властивостей файлу (розмір, дата зміни, атрибути). + +- **`MKCOL`** — створення нової папки (колекції). + +- **`COPY`** / **`MOVE`** — копіювання та переміщення файлів на сервері без їх скачування на локальний ПК. + +- **`LOCK`** / **`UNLOCK`** — блокування файлу під час редагування, щоб двоє користувачів не перезаписали зміни один одного одночасно. + + +Оскільки протокол працює поверх стандартних вебпортів (**80** для HTTP та **443** для HTTPS), він легко проходить через більшість файрволів і NAT без додаткових налаштувань мережі. + +## Основні варіанти застосування на практиці + +### 1. Синхронізація додатків та нотаток + +Багато програм використовують WebDAV як бекенд для приватного хмарного збереження даних без прив'язки до Google Drive чи Dropbox: + +- **Obsidian / Logseq:** синхронізація баз нотаток між ПК та смартфоном. + +- **KeePass / Strongbox:** збереження та автосинхронізація зашифрованої бази паролів. + +- **Zotero / Joplin:** збереження документів, PDF та наукових статей. + + +### 2. Підключення як мережевий диск в ОС + +Ви можете змонтувати віддалене WebDAV-сховище безпосередньо у файловий менеджер системи. + +- **Windows:** у «Цьому ПК» виберіть _Підключити мережевий диск_ і вкажіть адресу виду `[https://your-server.com/webdav/](https://your-server.com/webdav/)`. + +- **Linux:** монтування через `davfs2` у `/etc/fstab` або швидкий доступ через GNOME Files / KDE Dolphin (`davs://[your-server.com/webdav/](https://your-server.com/webdav/)`). + +- **macOS:** у Finder натисніть `Cmd + K` і введіть адресу `[https://your-server.com/webdav/](https://your-server.com/webdav/)`. + + +### 3. Хмарні сховища (Nextcloud / ownCloud) + +Платформи на кшталт Nextcloud мають вбудований WebDAV-сервер. Це дозволяє працювати з файлами через офіційний вебінтерфейс або підключати приватний папки до сторонніх застосунків за єдиним посиланням. + +## Швидкий підйом власних WebDAV-серверів + +Якщо вам потрібно розгорнути WebDAV у власному середовищі (наприклад, у Homelab чи локальній мережі): + +### Варіант А: Docker (Static WebDAV) + +Найпростіший спосіб підняти легковагий сервер за допомогою Nginx або готових Docker-образів: + +YAML + +``` +version: '3.8' +services: + webdav: + image: hacdias/webdav:latest + container_name: webdav + ports: + - "8080:80" + volumes: + - ./data:/data + - ./config.yaml:/config.yaml + restart: unless-stopped +``` + +### Варіант Б: Через SFTPGo або Nginx + +Якщо у вас вже розгорнуто **SFTPGo**, WebDAV вмикається в конфігурації в пару кліків паралельно з SFTP та FTP. В **Nginx** можна використовувати модуль `http_dav_module`. + +## Порівняння: WebDAV проти SMB, NFS та FTP + +|**Протокол**|**Плюси**|**Мінуси**|**Основний кейс**| +|---|---|---|---| +|**WebDAV**|Працює через HTTPS (443 порт), легко проходити NAT, шифрування «з коробки», чудова підтримка мобільними додатками.|Поступається у швидкості для великих масивів дрібних файлів порівняно з SMB/NFS.|Віддалений доступ через інтернет, синхронізація додатків.| +|**SMB (Samba)**|Нативна швидкість у Windows, ідеально для локальної мережі.|Важче прокидати через інтернет (блокується провайдерами, вимагає VPN).|Локальні мережеві папки в офісі/вдома.| +|**NFS**|Висока продуктивність у Linux-середовищі.|Складніше налаштування прав доступу, слабка підтримка у Windows.|З'єднання між Linux-серверами.| +|**FTP / SFTP**|Простий передавач файлів.|FTP застарів і нешифрований; SFTP чудовий для адміністрування, але гірше інтегрований у цивільні додатки.|Передавання файлів, бекапи, адміністрування.| + +## Коротке резюме + +WebDAV — це оптимальний вибір, коли вам потрібен **безпечний віддалений доступ до файлів через інтернет** (особливо з мобільних пристроїв або сторонніх програм) без необхідності піднімати повноцінний VPN-тунель для локальних мережевих протоколів на кшталт SMB. \ No newline at end of file