Двухфакторная аутентификация для Redmine
Описание
Redmine умеет проверять учётные данные пользователей в каталоге — за это отвечают режимы LDAP-аутентификации. Если в режиме указать адрес локального инстанса Simple2FA вместо адреса контроллера домена, вход в Redmine получит второй фактор: пользователь подтверждает вход на своём устройстве.
Метод подключения — LDAP-прокси. Второй фактор подтверждается push-уведомлением в мобильном приложении, в Telegram или в MAX.
Схема работы:
- Пользователь открывает Redmine и вводит логин и пароль.
- Redmine обращается по LDAP к локальному инстансу Simple2FA.
- Инстанс проверяет логин и пароль в каталоге организации.
- Инстанс запрашивает у пользователя подтверждение вторым фактором.
- Пользователь подтверждает вход, и Redmine открывает сессию.
Перед началом работы
- В глобальных настройках инстанса включён LDAP-прокси, порты опубликованы на хосте — шаги 1 и 2 общей инструкции.
- С сервера Redmine открыт доступ к инстансу по порту LDAP (
1389) или LDAPS (1636). - DN сервисной учётной записи добавлен в список сервисных в глобальных настройках Simple2FA.
- Сохранён доступ под локальным администратором Redmine — он не зависит от режимов LDAP.
Подготовка в Simple2FA
В панели администратора создайте ресурс:
| Поле | Значение |
|---|---|
| Название | Redmine |
| Протокол | LDAP |
| CIDR клиентов LDAP | IP-адрес сервера Redmine, например 10.0.0.60/32 |
| Проверять первый фактор | Включить |
| Поставщики учётных записей | Каталог, в котором проверяется пароль |
Добавьте ресурс в группу пользователей, которым разрешён вход в Redmine.
Настройка Redmine
Войдите в Redmine под администратором, откройте «Администрирование → LDAP-аутентификация» и нажмите «Создать»:
- Имя — например,
Simple2FA; - Сервер — адрес локального инстанса Simple2FA;
- Порт —
1389для незашифрованного соединения или1636для LDAPS; при использовании LDAPS отметьте флажок LDAPS; - Учётная запись — DN сервисной учётной записи, например
CN=ldapbind,CN=Users,DC=example,DC=local; - Пароль — её пароль из каталога;
- Базовый DN — база поиска в вашем каталоге, например
DC=example,DC=local; - Таймаут (в секундах) —
90, чтобы пользователь успел подтвердить вход; - Создавать пользователей автоматически — включите, если учётные записи Redmine должны заводиться при первом входе.
В блоке «Атрибуты» задайте соответствие полей Redmine атрибутам каталога:
- Атрибут логина —
sAMAccountNameдля Active Directory,uidдля типового LDAP-каталога; - Имя, Фамилия, Email —
givenName,sn,mail.
Нажмите «Создать».
Кнопка проверки соединения не проверяет вход
Проверка подключения в Redmine выполняет только привязку сервисной учётной записи — второй фактор при этом не запрашивается. Реальную работу интеграции проверяйте входом тестового пользователя.
Проверка работы
- Откройте страницу входа Redmine в приватном окне браузера, не закрывая текущую сессию администратора.
- Введите логин и пароль тестового пользователя каталога.
- Дождитесь запроса подтверждения и подтвердите вход.
- Убедитесь, что Redmine открыл сессию, а в журнале «Попытки авторизации» появилась успешная попытка на ресурсе Redmine.
Смотрите также
- Приложения с входом по LDAP — общая часть настройки и диагностика
- Ресурсы
- Настройка ресурсов