Nextcloud в доке за трафиком на бойде - PullRequest
0 голосов
/ 19 января 2019

Я использую traefik в качестве обратного прокси-сервера на своих не боящихся (6.6.6) приложениях, таких как sonarr / radarr, nzbget, organizer, все работает нормально.Но это в основном из-за того, что их очень легко настроить.Вам нужно только 4 специальных ярлыка traefik и все.

traefik.enable = true

traefik.backend = radarr

traefik.frontend.rule = PathPrefix: / radarr

traefik.port = 7878

traefik.frontend.auth.basic.users = имя пользователя: пароль

Пока все хорошо, все использует ssl и работает отлично.

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

Моя первая проблема заключалась в том, что nextcloud запускает https, что не нравится traefik, если вы не настроите некоторые вещи.Поэтому сейчас я просто использую метку traefik.frontend.auth.forward.tls.insecureSkipVerify = true, чтобы обойти это.Я знаю, что это потенциально проблема безопасности, но если я не ошибаюсь, это только открывает возможность человека в середине атаки.Что не должно быть слишком большой проблемой, поскольку traefik и nextcloud работают на одной и той же машине (и, кроме всего прочего, работают через http).

Итак, теперь, когда я заработал, я получаю сообщение об ошибке 500 при попытке открыть mydomain.tld / nextcloud.В журнале traefik написано «Ошибка вызова. Причина: Get: неподдерживаемая схема протокола \» \ "« Я попытался добавить несколько меток, найденных в руководстве (https://www.smarthomebeginner.com/traefik-reverse-proxy-tutorial-for-docker/#NextCloud_Your_Own_Cloud_Storage)

  • "traefik.frontend.headers.SSLRedirect = true "

  • " traefik.frontend.headers.STSSeconds = 315360000 "

  • " traefik.frontend.headers.browserXSSFilter= true "

  • " traefik.frontend.headers.contentTypeNosniff = true "

  • " traefik.frontend.headers.forceSTSHeader = true "

  • "traefik.frontend.headers.SSLHost = mydomain.tld"

  • "traefik.frontend.headers.STSPreload = true"

  • "traefik.frontend.headers.frameDeny = true"

Я просто подумал, что попробую, может, мне повезет. К сожалению, я этого не сделалт. ошибка по-прежнему 500.

1 Ответ

0 голосов
/ 05 февраля 2019

В ваших журналах traefik включите:

loglevel = "DEBUG"

Подробнее здесь: https://docs.traefik.io/configuration/logs/

После этого я понял, что моя метка докера неправильно применяет строку InsecureSkipVerify = true в моей конфигурации. Ошибка, которую я смог увидеть в журналах:

500 Internal Server Error' caused by: x509: cannot validate certificate for 172.17.0.x because it doesn't contain any IP SANs"

Чтобы обойти это, мне пришлось добавить InsecureSkipVerify = true непосредственно в файл traefik.toml, чтобы он работал правильно.

...