Настройте фабрикатор с аутентификацией LDAP в Debian Jessie

На сервере под управлением Debian 8, как я могу настроить phabricator, чтобы пользователи проходили аутентификацию с использованием локального сервера LDAP?

(Выбор LDAP, потому что те же учетные записи должны также использоваться другими веб-приложениями на том же сервере позже)

1 ответ

Решение

Замените все вхождения ***** надежными паролями и сохраните их в надежном месте.

Замените все вхождения example.com чем-нибудь разумным.

Используйте туннелирование ssh X11 для приложения jxplorer, если у вас нет локального X.


apt-get install emacs aptitude dbconfig-common debconf fonts-font-awesome jq \
    php5-fpm libjs-raphael php5-cli php5-curl mysql-server php5-mysql \
    php5-ldap po-debconf ucf nginx php5-apcu php5-gd npm python mc git \
    default-jdk jxplorer slapd xauth

Новый пароль для пользователя root mysql: *****

Пароль администратора для LDAP: *****


mysql -u root -p
mysql> grant all privileges on `phabricator\_%`.* to 'phabricator'@localhost identified by '*****';
mysql> exit

dpkg-reconfigure slapd

Войти

  • домен: users.example.com,
  • название компании: пример
  • везде, примите значения по умолчанию

запустить jxplorer, подключиться, войти

  • Базовое DN: dc= пользователи,dc= пример,dc=com
  • Уровень: пользователь + пароль
  • DN пользователя: cn=admin,dc=users,dc=example,dc=com
  • Пароль: что вы использовали ранее

сохранить настройки подключения, если хотите

Добавьте новых пользователей ниже "пользователи" с учетной записью objectClass,simpleSecurityObject:

  • UID = разработчик, Парольпользователь =*****, представить
  • UID = рецензент, Парольпользователь =*****, представить
  • UID = WebAdmin, Парольпользователь =*****, представить
  • UID = анонимные, Парольпользователь =*****, представить

Выход из jxplorer


Загрузите двоичные пакеты Debian из тестируемого дистрибутива: phabricator, arcanist, libphutil. Используйте https://packages.debian.org/testing/phabricator чтобы найти ссылки для загрузки.

# in the directory where these 3 packages have been downloaded to
dpkg -i *.deb 

домен phabricator: phabricator.example.com веб-сервер: nginx имя пользователя учетной записи администратора MySQL: phabricator


Настройка DNS: Либо укажите, что phabricator.example.com указывает на ваш сервер в DNS. Или добавьте IP-адрес сервера в файл клиента /etc/hosts как phabricator.example.com


service nginx restart

если это не сработает, тогда выдайте

nginx -t 

чтобы получить сообщение об ошибке.

если сообщение об ошибке

nginx: [emerg] не смог собрать server_names_hash, вы должны увеличить server_names_hash_bucket_size: 32, затем отредактировать /etc/nginx/nginx.conf, чтобы включить что-то вроде

http {
    server_names_hash_bucket_size 64;
    ...
}

Откройте http://phabricator.example.com/ в веб-браузере. Он отображает:

Ошибка аутентификации. Ваш сеанс входа недействителен. Попробуйте перезагрузить страницу и войти снова. Если это не сработает, очистите куки браузера.

Поэтому я перезагружаюсь.


На веб-странице:

  • Phabricator Имя пользователя: webadmin
  • Настоящее имя: webadmin
  • Пароль: *****
  • Электронная почта: webadmin@example.com

Откройте приложение Auth,

  • Добавить имя провайдера аутентификации / пароль
  • Добавить провайдера аутентификации LDAP
  • Проверьте доверенные адреса электронной почты
  • Имя хоста LDAP: localhost
  • Базовое отличительное имя: dc=users,dc=example,dc=com
  • Атрибуты поиска: uid
  • Анонимное имя пользователя: uid= анонимный,dc= пользователи,dc= пример,dc=com
  • Анонимный пароль: что я использовал ранее
  • Добавить провайдера

Перейдите на стартовую страницу phabricator, откройте приложение people, выберите webadmin Редактировать настройки, Аутентификация внешних учетных записей, Добавить внешнюю учетную запись LDAP

  • Имя пользователя LDAP: webadmin
  • Пароль LDAP: что я использовал ранее
  • Ссылка Аккаунты
  • Подтвердите ссылку на аккаунт

Проверьте, работает ли вход через LDAP:

  • Выйти
  • Войдите в систему как webadmin через LDAP
  • работает

Провайдер аутентификации пользователя / пароля теперь можно отключить. Выйдите и войдите снова, чтобы проверить


Проверьте, работает ли регистрация пользователя по LDAP:

  • Выйти,
  • Имя пользователя LDAP: разработчик
  • Пароль LDAP: что я установил ранее
  • Войти / Регистрация
  • Phabricator Имя пользователя: разработчик
  • Настоящее имя: разработчик
  • Электронная почта: developer@example.com
  • Зарегистрируйте учетную запись Phabricator.

Требуется утверждение аккаунта


Выйдите из системы и войдите снова как webadmin

  • Откройте приложение People
  • Очередь на утверждение
  • Палец вверх

Перейти на стартовую страницу Phabricator

  • Откройте приложение Config
  • Аутентификация
  • auth.require одобрение
  • Установите значение в false
  • спасти

Выйти


Проверьте логин как разработчик

  • работает
  • Выйти

Проверить регистрацию в качестве рецензента

  • работает без согласования
Другие вопросы по тегам