95 lines
3.2 KiB
Markdown
95 lines
3.2 KiB
Markdown
|
|
# Быстрое решение проблемы с Authentik
|
|||
|
|
|
|||
|
|
## Проблема: Internal Server Error при входе через Authentik
|
|||
|
|
|
|||
|
|
Endpoint `https://auth.iieasy.ru/application/o/open-webui/.well-known/openid-configuration` возвращает 404 Not Found.
|
|||
|
|
|
|||
|
|
## Решение 1: Временное включение формы входа (работает сейчас)
|
|||
|
|
|
|||
|
|
Форма входа уже включена в `docker-compose.yml`. Перезапустите контейнер:
|
|||
|
|
|
|||
|
|
```bash
|
|||
|
|
cd /home/its/iiEasyWeb
|
|||
|
|
sudo docker compose restart open-webui
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
Теперь вы сможете войти через форму входа на странице `https://odo.iieasy.ru`.
|
|||
|
|
|
|||
|
|
## Решение 2: Правильная настройка Authentik
|
|||
|
|
|
|||
|
|
### Проверка в Authentik
|
|||
|
|
|
|||
|
|
1. Войдите в Authentik: `https://auth.iieasy.ru`
|
|||
|
|
2. Перейдите в **Applications**
|
|||
|
|
3. Найдите Application для Open WebUI
|
|||
|
|
4. Проверьте **Slug** - он должен быть `open-webui`
|
|||
|
|
|
|||
|
|
### Если Application не существует
|
|||
|
|
|
|||
|
|
1. **Providers** → **Add Provider**
|
|||
|
|
- Тип: **OpenID Connect / OAuth2 / OAuth2 with OpenID Connect**
|
|||
|
|
- Название: `Open WebUI`
|
|||
|
|
- Сохраните и запомните **Client ID** и **Client Secret**
|
|||
|
|
|
|||
|
|
2. **Applications** → **Add Application**
|
|||
|
|
- **Name**: `Open WebUI`
|
|||
|
|
- **Slug**: `open-webui` (ВАЖНО! Должен совпадать с URL)
|
|||
|
|
- **Provider**: Выберите созданный Provider
|
|||
|
|
- **Redirect URIs**: `https://odo.iieasy.ru/oauth/oidc/callback`
|
|||
|
|
- Сохраните
|
|||
|
|
|
|||
|
|
3. **Обновите .env:**
|
|||
|
|
```bash
|
|||
|
|
OPENID_CONNECT_ISSUER=https://auth.iieasy.ru/application/o/open-webui/
|
|||
|
|
```
|
|||
|
|
Где `open-webui` - это slug из Application.
|
|||
|
|
|
|||
|
|
4. **Проверьте endpoint:**
|
|||
|
|
```bash
|
|||
|
|
curl https://auth.iieasy.ru/application/o/open-webui/.well-known/openid-configuration
|
|||
|
|
```
|
|||
|
|
Должен вернуться JSON, а не HTML.
|
|||
|
|
|
|||
|
|
5. **Перезапустите контейнер:**
|
|||
|
|
```bash
|
|||
|
|
sudo docker compose restart open-webui
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
### Если Application существует, но slug другой
|
|||
|
|
|
|||
|
|
Если slug в Authentik не `open-webui`, а например `openwebui` или `webui`:
|
|||
|
|
|
|||
|
|
1. Обновите `.env`:
|
|||
|
|
```bash
|
|||
|
|
OPENID_CONNECT_ISSUER=https://auth.iieasy.ru/application/o/ВАШ_SLUG/
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
2. Или измените slug в Authentik Application на `open-webui`
|
|||
|
|
|
|||
|
|
## Решение 3: Отключение Authentik (если не нужен)
|
|||
|
|
|
|||
|
|
Если Authentik не нужен, отключите его:
|
|||
|
|
|
|||
|
|
В `docker-compose.yml` измените:
|
|||
|
|
```yaml
|
|||
|
|
- ENABLE_OAUTH_SIGNUP=false
|
|||
|
|
- ENABLE_LOGIN_FORM=true
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
И удалите или закомментируйте переменные OAuth.
|
|||
|
|
|
|||
|
|
## Проверка после настройки
|
|||
|
|
|
|||
|
|
1. Проверьте endpoint:
|
|||
|
|
```bash
|
|||
|
|
curl https://auth.iieasy.ru/application/o/open-webui/.well-known/openid-configuration
|
|||
|
|
```
|
|||
|
|
Должен вернуться JSON с `issuer`, `authorization_endpoint` и т.д.
|
|||
|
|
|
|||
|
|
2. Проверьте логи:
|
|||
|
|
```bash
|
|||
|
|
sudo docker compose logs open-webui | grep -i "oidc\|oauth"
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
3. Попробуйте войти через `https://odo.iieasy.ru`
|