Gitlab Pages OAuth перенаправляет зависание, когда access_control имеет значение true - PullRequest
0 голосов
/ 11 марта 2019

Я настраиваю контроль доступа к страницам Gitlab для частной установки Gitlab CE. Я следую этим инструкциям администратора: https://docs.gitlab.com/ce/administration/pages/#access-control

Я успешно настроил отдельный DNS (example.io), который обслуживает страницы для нашего экземпляра gitlab (example.com). До того, как я попытался использовать параметр конфигурации gitlab access_control, этот URL работал отлично.

Выпуск

Мои страницы успешно создаются до https://group.example.io/project. Я пытаюсь перейти по этому URL, и я перенаправлен на страницу OAuth Gitlab Pages, как и ожидалось.

ubmit

Когда я нажимаю Авторизовать для приложения Gitlab Pages OAuth, я перенаправляюсь на https://projects.example.io/auth?..., а затем на http://group.example.io/auth?.... Обратите внимание, что последнее перенаправление осуществляется через http, что не имеет смысла, так как я настроил весь трафик для направления через https.

network

Когда я смотрю на набор печенья, у меня есть:

  • example.com -> _gitlab_session
  • group.example.io -> gitlab_pages
  • projects.example.io -> gitlab_pages

Конфигурация

Использование gitlab omnibus в Ubuntu 18.08.

enter image description here

Наша gitlab.rb конфигурация:

pages_external_url 'https://example.io'
pages_nginx['redirect_http_to_https'] = true
pages_nginx['ssl_certificate'] = "/etc/gitlab/ssl/pages.crt"
pages_nginx['ssl_certificate_key'] = "/etc/gitlab/ssl/pages.key"
gitlab_pages['access_control'] = true

Gitlab Pages Настройки приложения OAuth:

enter image description here

Переключатель Управление доступом к страницам установлен на Только участники проекта

pages access control

Вопрос:

Кто-нибудь сталкивался с таким поведением? Правильно ли настроено приложение OAuth Gitlab Pages ? Должен ли URI перенаправления быть другим?

Edit:

Я перенастроил свой DNS, чтобы он указывал на IP-адрес нашей локальной сети, и система работает нормально.

Я все еще не понимаю, почему Gitlab перенаправляет с OAuth на порт 80:

enter image description here

Поток сети выглядит так:

В данный момент у меня нет доступа к настройкам брандмауэра, но я думаю, что мы не разрешаем исходящий трафик порта 80. Это объясняет, почему запрос зависает, когда я использовал публичный IP-адрес, но успешно использует IP-адрес локальной сети.

Но у меня все еще остается вопрос, почему Gitlab пересылает трафик через порт 80, когда он запускается на 443?

...