# Интересное по SFTPGo

**URL:** <https://forum.samohosting.ru/t/interesnoe-po-sftpgo/2914>\
**Category:** 0. Основная\
**Created:** [23.Сентябрь.2026 12:57:28 UTC](https://forum.samohosting.ru/t/interesnoe-po-sftpgo/2914 "2026-09-23T12:57:28Z")\
**Posts on this page:** 9\
**Page:** 1

<div class="post-metadata">

**Author:** ![e.s.oshurkov](https://forum.samohosting.ru/user_avatar/forum.samohosting.ru/e.s.oshurkov/32/3050_2.png) [@e.s.oshurkov](https://forum.samohosting.ru/u/e.s.oshurkov)\
**Post date:** [23.Сентябрь.2026 12:57:28 UTC](https://forum.samohosting.ru/t/interesnoe-po-sftpgo/2914/1 "2026-09-23T12:57:28Z")

</div>

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

Не сразу въехал из-за разнообразной документации у них на сайте.  
В итоге имеем 3 версии этой программы: ИнтэрпрайзЭдишен (кто-то пользуется кстати?), потом 2.7 и наконец 2.6.

Что-то работает в одной, но не работает в другой, но в целом они все похожи. Вот такой зоопарк там с версиями.

Например в 2.6 есть **rsync** и он работает. А в 2.7 его выпилили и я не мог понять долго, почему в 2.7 не заводится никак… пока не прочитал изменения между версиями 🤓

В ынтырпрайз-эдишен похоже даже синтаксис описания скриптов-ХУКов у них более расширенное. Тоже долго не мог заставить работать автосоздание пользователей по входу через OpenID, согласно доке.

Сейчас нахожусь на 2.7 версии, продолжаю изучать. Так же там не заработал нормально русский интерфейс (видимо в 2.6 он иначе или что, не ясно). Пока это оставил.

Еще не смог заставить срабатывать хук на логин по WebDAV-протоколу. Вот по OIDC в одном месте схватывает, по SFTP - в другом… может у кого срабатывает или кто знает, как заставить для WebDAV работать хук **SFTPGO\_DATA\_PROVIDER\_\_PRE\_LOGIN\_HOOK**? Было бы полезно.

Ну а по итогу получил более-менее рабочее решение взамен **Synology File** , **Synology WebDAV** и **Synology SFTP** …

В **SFTPGo** умеет и настроено сейчас:

1. Брать пользователей из **LDAP** , что полезно при sftp, webdav подключениях
2. Подвязывается к OIDC, что круто при входе по https, где можно убрать логин\пароль для входа.
3. Автосоздание пользователя с включением в группу (крючки в OIDC, SFTP, но не срабатывает при WebDAV 😭)
4. Квоты
5. Виртуальные общие папки (обычные папки на самом деле, просто расположены вне хомяка пользователя)
6. ACL (чтобы кто-то мог только читать, а кто-то и записывать в папку).

Сама по себе настройка всего этого не столько очевидная, местами. Но по итогу что-то как-то получилось и поехало в народ. Тестирую.

---

<div class="post-metadata">

**Author:** ![Stamm01](https://forum.samohosting.ru/letter_avatar_proxy/v4/letter/s/779978/32.png) [@Stamm01](https://forum.samohosting.ru/u/Stamm01)\
**Post date:** [30.Сентябрь.2026 03:38:43 UTC](https://forum.samohosting.ru/t/interesnoe-po-sftpgo/2914/2 "2026-09-30T03:38:43Z")

</div>

тоже тестил 2.7, по поводу русского языка сделал так: есть файл итальянской локали, его нейронка перевела и я его в контейнере прописал, вероятно это колхоз, но это работало)  
из плюсов работает быстро и файлы хранятся как есть (не бьется на чанки).

---

<div class="post-metadata">

**Author:** ![e.s.oshurkov](https://forum.samohosting.ru/user_avatar/forum.samohosting.ru/e.s.oshurkov/32/3050_2.png) [@e.s.oshurkov](https://forum.samohosting.ru/u/e.s.oshurkov)\
**Post date:** [30.Сентябрь.2026 06:12:18 UTC](https://forum.samohosting.ru/t/interesnoe-po-sftpgo/2914/3 "2026-09-30T06:12:18Z")

</div>

А выложи этот файл, подсуну тоже, гляну. Интерфейс весь на русском в итоге?

---

<div class="post-metadata">

**Author:** ![e.s.oshurkov](https://forum.samohosting.ru/user_avatar/forum.samohosting.ru/e.s.oshurkov/32/3050_2.png) [@e.s.oshurkov](https://forum.samohosting.ru/u/e.s.oshurkov)\
**Post date:** [30.Сентябрь.2026 13:28:33 UTC](https://forum.samohosting.ru/t/interesnoe-po-sftpgo/2914/4 "2026-09-30T13:28:33Z")

</div>

Еще с учетом того, что у меня веб-клиент заходит без пароля, только по **OIDC** , то выход был не очень. Т.е. при выходе сессия самого **sftpgo** закрывалась, но сессия самого **OIDC** - нет.

Нашел решение в шаблонах sftpgo. Т.е. в файле `base.html` для шаблонов админа и юзера в соответствующих папках `webadmin` и `webclient` поиском нашел и заменил с

```auto
<a id="id_logout_link" href="#" class="menu-link px-3 py-2">

```

на ссылку логаута моего **OIDC** , например

```auto
<a id="id_logout_link" href="https://auth.example.ru/logout" class="menu-link px-3 py-2">

```

В итоге при нажатии внутри вэб-морды **sftpgo** на кнопку `sign out`, т.е. выход - сессия в OIDC закрывается и при входе снова придется пройти автоизацию

---

<div class="post-metadata">

**Author:** ![Stamm01](https://forum.samohosting.ru/letter_avatar_proxy/v4/letter/s/779978/32.png) [@Stamm01](https://forum.samohosting.ru/u/Stamm01)\
**Post date:** [30.Сентябрь.2026 15:43:45 UTC](https://forum.samohosting.ru/t/interesnoe-po-sftpgo/2914/5 "2026-09-30T15:43:45Z")

</div>

```yaml
volumes:
- ./locales/it:/usr/share/sftpgo/static/locales/it

```

файл на ядиск скинул, тут не нашел как загрузить:

> **[Авторизация](https://passport.yandex.ru/auth?retpath=https%3A%2F%2Fdisk.yandex.ru%2Fd%2FkAvfhPN-BvYaow)**

---

<div class="post-metadata">

**Author:** ![e.s.oshurkov](https://forum.samohosting.ru/user_avatar/forum.samohosting.ru/e.s.oshurkov/32/3050_2.png) [@e.s.oshurkov](https://forum.samohosting.ru/u/e.s.oshurkov)\
**Post date:** [01.Октябрь.2026 16:23:33 UTC](https://forum.samohosting.ru/t/interesnoe-po-sftpgo/2914/6 "2026-10-01T16:23:33Z")

</div>

> [@Stamm01](#):
>
> файл на ядиск скинул, тут не нашел как загрузить:

Спасибо, привязал. Похоже почти все на русском теперь. Гораздо приятнее народу стало работать в вэб.

Разраб вроде как движется в сторону улучшения многоязыковой поддержки. Может быть из коробки все будет в будущем.

---

<div class="post-metadata">

**Author:** ![LamerDeath](https://forum.samohosting.ru/user_avatar/forum.samohosting.ru/lamerdeath/32/2102_2.png) [@LamerDeath](https://forum.samohosting.ru/u/LamerDeath)\
**Post date:** [02.Октябрь.2026 00:50:52 UTC](https://forum.samohosting.ru/t/interesnoe-po-sftpgo/2914/7 "2026-10-02T00:50:52Z")

</div>

а можете выложить готовый docker compose для развертывания ?

---

<div class="post-metadata">

**Author:** ![e.s.oshurkov](https://forum.samohosting.ru/user_avatar/forum.samohosting.ru/e.s.oshurkov/32/3050_2.png) [@e.s.oshurkov](https://forum.samohosting.ru/u/e.s.oshurkov)\
**Post date:** [02.Октябрь.2026 03:45:25 UTC](https://forum.samohosting.ru/t/interesnoe-po-sftpgo/2914/8 "2026-10-02T03:45:25Z")

</div>

Упрощенно, для запуска хватит.  
файлик локали подлолжить выше в папку

```auto
services:
  sftpgo:
    image: drakkan/sftpgo:v2.7.6-plugins
    container_name: sftpgo
    ports:
      - 8813:8813 # HTTP
      - 2022:2022 # SFTP
      - 10080:10080 # WEBDAV
    environment:
      SFTPGO_CONFIG_FILE: "/conf/sftpgo.json"
      SFTPGO_LOG_LEVEL: "debug" # debug, info, warn, error
      SFTPGO_COMMON __DEFENDER__ ENABLED: true
      SFTPGO_WEBDAVD __BINDINGS__ 0__PORT: 10080
      SFTPGO_WEBDAVD __CACHE__ USERS__EXPIRATION_TIME: 1
      SFTPGO_MFA__TOTP: ""
      SFTPGO_HTTPD __BINDINGS__ 0__PORT: 8813
      SFTPGO_HTTPD __BINDINGS__ 0__LANGUAGES: "it"
      SFTPGO_HTTPD __BINDINGS__ 0__ENABLE_WEB_ADMIN: 1
      SFTPGO_HTTPD __BINDINGS__ 0__ENABLE_REST_API: 0
      SFTPGO_HTTPD __BINDINGS__ 0__RENDER_OPENAPI: 0
      SFTPGO_HTTPD __BINDINGS__ 0__HIDE_LOGIN_URL: 1
    volumes:
      - ./conf/sftpgo.json:/conf/sftpgo.json:ro
      - ./conf/locales/it/:/usr/share/sftpgo/static/locales/it/:ro
      - ./data/:/var/lib/sftpgo/:rw
      - ./homes/:/srv/sftpgo/data/:rw

```

---

<div class="post-metadata">

**Author:** ![HSTQ](https://forum.samohosting.ru/letter_avatar_proxy/v4/letter/h/8491ac/32.png) [@HSTQ](https://forum.samohosting.ru/u/HSTQ)\
**Post date:** [08.Октябрь.2026 06:28:18 UTC](https://forum.samohosting.ru/t/interesnoe-po-sftpgo/2914/9 "2026-10-08T06:28:18Z")

</div>

В строке `SFTPGO_COMMON __DEFENDER__ ENABLED: true` нужно поставить кавычки вокруг `"true"`

еще бы `conf/sftpgo.json` без паролей compose монтирует этот файл с хоста что бы можно было повторить с чистой установкой
