操作系统:
CentOS 6.5 x86_64
下载软件包:
下载如下的tar包:atlassian-confluence-5.5.3.tar.gz atlassian-crowd-2.7.2.tar.gz atlassian-jira-6.3.1.tar.gz
说明:以下步骤均在jira用户下进行操作,并且上面所有tar包全部保存在jira用户的家目录下。需要创建jira用户:useradd jira
一、安装Confluence:
- 安装配置JDK1.7,步骤略;
- 解压缩Confluence:
cd
tar -xvf atlassian-confluence-5.5.3.tar.gz - 配置Confluence的Home目录:
cd /usr/local/
ln -s ~/atlassian-confluence-5.5.3 confluence
vim ~/atlassian-confluence-5.5.3/confluence/WEB-INF/classes/confluence-init.properties,修改下面的一行:confluence.home=/usr/local/confluence - 配置MySQL数据库连接:
安装MySQL数据库,创建confluence数据库,字符集选择为utf-8。注意:必须在此处设置编码格式为utf-8,否则会出现中文乱码。;
下载MySQL的Java驱动:mysql-connector-java-5.1.31.jar,拷贝到atlassian-confluence-5.5.3/confluence/WEB-INF/lib/下面; - 启动Confluence:
执行:~/atlassian-confluence-5.5.3/bin/start-confluence.sh - 访问http://YOUR_HOST:8090,进行安装配置,中间需要选择连接MySQL数据库,jdbc:mysql://localhost/confluence?useUnicode=true&characterEncoding=utf8。注意:必须在此处设置编码格式为utf8,否则会出现中文乱码。
二、安装Jira:
- 安装配置JDK1.7,步骤略;
- 解压缩Jira:
cd
tar -xvf atlassian-jira-6.3.1.tar.gz - 配置Confluence的Home目录:
cd /usr/local/
ln -s ~/atlassian-jira-6.3.1-standalone jira
vim ~/atlassian-jira-6.3.1-standalone/atlassian-jira/WEB-INF/classes/jira-application.properties,修改下面的一行:jira.home = /usr/local/jira/ - 配置MySQL数据库连接:
安装MySQL数据库,创建jira数据库,字符集选择为utf-8。注意:必须在此处设置编码格式为utf-8,否则会出现中文乱码。;
下载MySQL的Java驱动:mysql-connector-java-5.1.31.jar,拷贝到atlassian-jira-6.3.1-standalone/atlassian-jira/WEB-INF/lib/下面; - 启动Jira:
执行:~/atlassian-jira-6.3.1-standalone/bin/start-jira.sh - 访 问http://YOUR_HOST:8080,进行安装配置,中间需要选择连接MySQL数据库,jdbc:mysql://localhost/jira?useUnicode=true&characterEncoding=utf8。注意:必须在此处设置编码格式为utf8,否则会出现中文乱码。
参考文档:
https://confluence.atlassian.com/display/DOC/Confluence+Installation+and+Upgrade+Guide
http://wenku.baidu.com/view/5409d175f46527d3240ce0e3
三、安装Crowd
- 安装配置JDK1.7,步骤略;
- 解压缩Jira:
cd
tar -xvf tlassian-crowd-2.7.2.tar.gz - 配置Confluence的Home目录:
cd /usr/local/
ln -s ~/atlassian-crowd-2.7.2 crowd
vim ~/./atlassian-crowd-2.7.2/crowd-webapp/WEB-INF/classes/crowd-init.properties,修改下面的一行:crowd.home=/usr/local/crowd - 配置MySQL数据库连接:
安装MySQL数据库,创建crowd数据库,字符集选择为utf-8。注意:必须在此处设置编码格式为utf-8,否则会出现中文乱码。;
下载MySQL的Java驱动:mysql-connector-java-5.1.31.jar,拷贝到./atlassian-crowd-2.7.2/crowd-webapp/WEB-INF/lib/下面; - 启动Crowd:
执行:~/atlassian-crowd-2.7.2/start_crowd.sh - 访 问http://YOUR_HOST:8095,进行安装配置,中间需要选择连接MySQL数据库,jdbc:mysql://localhost/crowd?useUnicode=true&characterEncoding=utf8。注意:必须在此处设置编码格式为 utf8,否则会出现中文乱码。
四、crowd实现jira与confluence的联合登录
1、crowd配置
使用管理员登录crowd,新建一个Directory作为jira和wiki的通用目录。
在crowd中建立以下用户组和用户(必须按照下面的建):
组:
confluence-users confluence-administrators
jira-users jira-developers jira-administrators
用户:
在confluence-administrators confluence-users组中添加confluence admin
在jira-users jira-administrators jira-developers组中添加JIRA admin
添加两个应用application
点击application,分别添加jira和confluence两个application
jira的url设置http://localhost:8080,directories选择前面建立的jira目录,在Authorisation中选择Allow all users to authenticate(此设置为crowd+jira配置)
confluence的url设置http://localhost:8090,directories选择前面建立的confluence目录,在Authorisation中选择Allow all users to authenticate(此设置为crowd+confluence配置)
2、配置jira与crowd通信
拷贝配置文件
CopyFrom | CopyTo |
CROWD/client/crowd-integration-client-X.X.X.jar | $JIRA/atlassian-jira/WEB-INF/lib |
CROWD/client/conf/crowd.properties | $JIRA/atlassian-jira/WEB-INF/classes |
CROWD/client/conf/crowd-ehcache.xml | $JIRA/atlassian-jira/WEB-INF/classes |
这里CROWD指的是crowd的安装路径
同理,JIRA指的是jira的安装路径
编辑配置文件
#vim /usr/local/jira/atlassian-jira/WEB-INF/classes/crowd.properties
application.name:jira(在crowd中为Jira建立的applications)
application.password:jira(在crowd中建立的applications的密码)
#vim /usr/local/jira/atlassian-jira/WEB-INF/classes/seraph-config.xml
将下面的代码注释掉
<!--CROWD:START-TheauthenticatorbelowherewillneedtobecommentedoutforCrowdSSOintegration-->
<!--<authenticatorclass="com.atlassian.jira.security.login.JiraSeraphAuthenticator"/>-->
将下面的代码打开
<!--<authenticatorclass="com.atlassian.jira.security.login.SSOSeraphAuthenticator"/>-->
<authenticatorclass="com.atlassian.jira.security.login.SSOSeraphAuthenticator"/>
3、配置confluence与crowd通信
拷贝配置文件
CopyFrom | CopyTo |
CROWD/client/crowd-integration-client-X.X.X.jar | CONFLUENCE/confluence/WEB-INF/lib |
CROWD/client/conf/crowd.properties | CONFLUENCE/confluence/WEB-INF/classes |
CROWD/client/conf/crowd-ehcache.xml | CONFLUENCE/confluence/WEB-INF/classes |
这里CROWD指的是crowd的安装路径
同理,CONFLUENCE指的是confluence的安装路径
编辑配置文件
#vim /usr/local/confluence/confluence/WEB-INF/classes/crowd.properties
appcation.nameconfluence(在crowd中为confluence建立的applications)
application.passwordconfluence(在crowd中建立的applications的密码)
#vim /usr/local/confluence/confluence/WEB-INF/classes/seraph-config.xml
将下面的代码注释掉
<!--DefaultConfluenceauthenticator,whichusestheconfiguredusermanagementforauthentication.-->
<!--<authenticatorclass="com.atlassian.confluence.user.ConfluenceAuthenticator"/>-->
将下面的代码打开
<!--<authenticatorclass="com.atlassian.confluence.user.ConfluenceCrowdSSOAuthenticator"/>-->
<authenticatorclass="com.atlassian.confluence.user.ConfluenceCrowdSSOAuthenticator"/>
4、重启jira,confluence,crowd
IP的单点登录已经可以实现。
即在同一个浏览器中打开jira并输入用户名密码登录,再打开confluence,这时,confluence可自动登录同一用户。(必须在同一个session中)
注:以IP:端口的方式登录。
5、基于域名实现单点登录
添加crowd域名
修改nginx配置文件
在/usr/local/conf/nginx.conf的最后添加一行includeconf.d/crowd.conf
将crowd.conf文件中添加一个crowd.abc.com的域名,内容与jira.conf一样
(我这里jira.abc.com及confluence.abc.com已经添加好,将文件中所需的地方都加好,同jira和confluence)
下面是本人crowd.conf的内容
server
{listen80;
server_namecrowd.abc.com;
location/{
proxy_passhttp://192.168.0.231:8090;
proxy_set_headerHost$host;
proxy_set_headerX-Real-IP$remote_addr;
proxy_set_headerX-Forwarded-For$proxy_add_x_forwarded_for;}
}
记得改完nginx配置文件后要重启哦!
登录crowd
用域名登录crowd,即crowd.abc.com。在SSODomain的框里填写公用的域名:.abc.com,update更新一下。
这时候,基于域名的SSO单点登录也已经实现,登录confluence.abc.com,在同一session的浏览器中输入jira.abc.com发现已经自动登录成功!
参考文档:
http://dongld.blog.51cto.com/4234800/1321810