在 Debian Jessie 上使用 LDAP 身份验证设置 phabricator
Set up phabricator with LDAP authentication on Debian Jessie
在服务器 运行 Debian 8 上,如何设置 phabricator 以便使用本地 LDAP 服务器对用户进行身份验证?
(选择 LDAP 是因为相同的帐户以后也应该被同一服务器上的其他 Web 应用程序使用)
用安全密码替换所有出现的 ***** 并安全地存储它们。
将所有出现的 example.com 替换为合理的内容。
如果您没有本地 X,请为 jxplorer 应用程序使用 ssh X11 隧道。
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
mysql root 用户的新密码:*****
LDAP 的管理员密码:*****
mysql -u root -p
mysql> grant all privileges on `phabricator\_%`.* to 'phabricator'@localhost identified by '*****';
mysql> exit
dpkg-reconfigure slapd
输入
- 域:用户。example.com、
- 公司名称:例子
- 其他地方,接受默认值
启动jxplorer,连接,进入
- 基本 DN:dc=users,dc=example,dc=com
- 级别:用户+密码
- 用户 DN:cn=admin,dc=users,dc=example,dc=com
- 密码:您之前使用的密码
如果愿意,请保存连接设置
在 "users" 下面添加新用户,对象类帐户,simpleSecurityObject:
- uid=developer,userPassword=*****,提交
- uid=reviewer,userPassword=*****,提交
- uid=webadmin,userPassword=*****,提交
- uid=匿名,userPassword=*****,提交
退出 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 中的服务器。
或者在客户端的/etc/hosts文件中加入服务器的ip地址
作为
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/。它显示:
身份验证失败。您的登录会话无效。尝试重新加载页面并重新登录。如果这不起作用,请清除浏览器 cookie。
所以我重新加载。
在网页上:
- Phabricator 用户名:webadmin
- 真实姓名:webadmin
- 密码:*****
- 邮箱:webadmin@example.com
打开授权应用程序,
- 添加身份验证提供程序Username/Password
- 添加身份验证提供程序 LDAP
- 检查信任的电子邮件地址
- LDAP 主机名:localhost
- 基本可分辨名称:dc=users,dc=example,dc=com
- 搜索属性:uid
- 匿名用户名:uid=anonymous,dc=users,dc=example,dc=com
- 匿名密码:我之前用的
- 添加提供商
转到 phabricator 主页,打开 people 应用程序,选择 webadmin
编辑设置、身份验证外部帐户、添加外部帐户 LDAP
- LDAP 用户名:webadmin
- LDAP 密码:我之前用的
- Link 帐户
- 确认账户Link
检查通过 LDAP 登录是否有效:
- 注销
- 通过 LDAP 以网络管理员身份登录
- 有效
现在可以禁用 user/password 身份验证提供程序。
注销并重新登录以检查
检查通过 LDAP 进行的用户注册是否有效:
- 注销,
- LDAP 用户名:开发者
- LDAP密码:我之前设置的
- Login/Register
- Phabricator 用户名:开发者
- 真实姓名:开发者
- 邮箱:developer@example.com
- 注册 Phabricator 帐户。
帐户需要批准
注销并以网络管理员身份重新登录
- 打开人员应用程序
- 审批队列
- 点赞
转到 Phabricator 起始页
- 打开配置应用程序
- 身份验证
- auth.require-批准
- 将值设置为 false
- 保存
注销
检查以开发者身份登录
- 有效
- 注销
检查注册为审稿人
- 未经批准工作
在服务器 运行 Debian 8 上,如何设置 phabricator 以便使用本地 LDAP 服务器对用户进行身份验证?
(选择 LDAP 是因为相同的帐户以后也应该被同一服务器上的其他 Web 应用程序使用)
用安全密码替换所有出现的 ***** 并安全地存储它们。
将所有出现的 example.com 替换为合理的内容。
如果您没有本地 X,请为 jxplorer 应用程序使用 ssh X11 隧道。
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
mysql root 用户的新密码:*****
LDAP 的管理员密码:*****
mysql -u root -p
mysql> grant all privileges on `phabricator\_%`.* to 'phabricator'@localhost identified by '*****';
mysql> exit
dpkg-reconfigure slapd
输入
- 域:用户。example.com、
- 公司名称:例子
- 其他地方,接受默认值
启动jxplorer,连接,进入
- 基本 DN:dc=users,dc=example,dc=com
- 级别:用户+密码
- 用户 DN:cn=admin,dc=users,dc=example,dc=com
- 密码:您之前使用的密码
如果愿意,请保存连接设置
在 "users" 下面添加新用户,对象类帐户,simpleSecurityObject:
- uid=developer,userPassword=*****,提交
- uid=reviewer,userPassword=*****,提交
- uid=webadmin,userPassword=*****,提交
- uid=匿名,userPassword=*****,提交
退出 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 中的服务器。 或者在客户端的/etc/hosts文件中加入服务器的ip地址 作为 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/。它显示:
身份验证失败。您的登录会话无效。尝试重新加载页面并重新登录。如果这不起作用,请清除浏览器 cookie。
所以我重新加载。
在网页上:
- Phabricator 用户名:webadmin
- 真实姓名:webadmin
- 密码:*****
- 邮箱:webadmin@example.com
打开授权应用程序,
- 添加身份验证提供程序Username/Password
- 添加身份验证提供程序 LDAP
- 检查信任的电子邮件地址
- LDAP 主机名:localhost
- 基本可分辨名称:dc=users,dc=example,dc=com
- 搜索属性:uid
- 匿名用户名:uid=anonymous,dc=users,dc=example,dc=com
- 匿名密码:我之前用的
- 添加提供商
转到 phabricator 主页,打开 people 应用程序,选择 webadmin 编辑设置、身份验证外部帐户、添加外部帐户 LDAP
- LDAP 用户名:webadmin
- LDAP 密码:我之前用的
- Link 帐户
- 确认账户Link
检查通过 LDAP 登录是否有效:
- 注销
- 通过 LDAP 以网络管理员身份登录
- 有效
现在可以禁用 user/password 身份验证提供程序。 注销并重新登录以检查
检查通过 LDAP 进行的用户注册是否有效:
- 注销,
- LDAP 用户名:开发者
- LDAP密码:我之前设置的
- Login/Register
- Phabricator 用户名:开发者
- 真实姓名:开发者
- 邮箱:developer@example.com
- 注册 Phabricator 帐户。
帐户需要批准
注销并以网络管理员身份重新登录
- 打开人员应用程序
- 审批队列
- 点赞
转到 Phabricator 起始页
- 打开配置应用程序
- 身份验证
- auth.require-批准
- 将值设置为 false
- 保存
注销
检查以开发者身份登录
- 有效
- 注销
检查注册为审稿人
- 未经批准工作