jira和confluence都是Atlassian公司产品。jira是项目与事务跟踪工具,可以完成项目执行管理、敏捷开发管理、体系流程管理、产品Bug跟踪、提案跟踪、需求管理、客户服务等工作。confluence是一个专业的企业知识管理与协同软件,可以用于构建企业wiki,通过它可以实现团队成员之间的协作和知识共享。

目录

  1. 一、环境
    1. 1.系统
    2. 2.Java环境
    3. 3.Mysql
  2. 二、Jira
    1. 1.下载文件
    2. 2.配置jira数据库
    3. 3.安装jira
    4. 4.破解jira
    5. 5.老机器jira数据备份,新机器jira数据恢复
  3. 三、Confluence
    1. 1.下载文件
    2. 2.配置confluence数据库
    3. 3.安装confluence
    4. 4.破解confluence
    5. 5.老机器confluence数据备份,新机器confluence数据恢复
  4. 四、问题总结
    1. 1. confluence致命漏洞和修复
    2. 2. confluence数据库字符乱码
    3. 3. confluence账户体系
    4. 4. confluence无法登录解决办法

一、环境

前一篇讲了挖矿病毒的入侵,决定对那台服务器上相关服务拆分迁移。上面的jira和confluence共用jira账号体系,迁移时两者要注意安装顺序,最后确定的方案:

1.系统

系统:Ubuntu 16.04.5 LTS
CPU:4核
内存:16G

上面机器配置最多可支持2000人,如果有更多人数需求,需升级配置。

2.Java环境

需安装jdk1.8以上版本

安装java

sudo apt install default-jre

查看java版本

1
2
3
4
[email protected]:~$ java -version
openjdk version "1.8.0_191"
OpenJDK Runtime Environment (build 1.8.0_191-8u191-b12-2ubuntu0.16.04.1-b12)
OpenJDK 64-Bit Server VM (build 25.191-b12, mixed mode)

3.Mysql

安装mysql5.7

sudo apt-get install mysql-server

根据提示一步步设置,完成后记住mysql默认账号root的密码。

二、Jira

1.下载文件

a)下载jira,选择和老机器上jira相同的版本

wget https://downloads.atlassian.com/software/jira/downloads/atlassian-jira-software-7.3.8-x64.bin

b)下载jira7.3.8破解文件

wget https://raw.githubusercontent.com/heyuan110/static-source/master/media/15553944919153/jira-lib-7.3.8.zip

解压jira-lib-7.3.8.zip文件

1
2
3
4
ubuntu@ip-172-31-23-228:/usr/local/programs/src$ unzip jira7.3.8.zip
Archive: jira7.3.8.zip
inflating: jira7.3.8/atlassian-extras-3.2.jar
inflating: jira7.3.8/mysql-connector-java-5.1.39-bin.jar

2.配置jira数据库

登录mysql

mysql -uroot -p

执行下面的SQL

1
2
3
4
5
6
7
8
;创建数据库sql
CREATE DATABASE jira CHARACTER SET utf8 COLLATE utf8_bin;

;授权用户
GRANT ALL ON jira.* TO 'jira'@'localhost' IDENTIFIED BY 'jirapassword';

;刷新
FLUSH PRIVILEGES;

注意创建数据库时COLLATE需使用utf8_bin

3.安装jira

给安装包添加可执行权限

chmod +x atlassian-jira-software-7.3.8-x64.bin

执行安装

./atlassian-jira-software-7.3.8-x64.bin

按照提示键入安装即可。
如果没有自定义目录,jira的程序和应用数据分表装到了两个目录:

应用:/opt/atlassian/jira
应用数据: /var/atlassian/application-data/jira

如果要修改jira默认端口,修改配置文件/opt/atlassian/jira/conf/server.xml

4.破解jira

先停掉jira服务

sudo /etc/init.d/jira stop

a)用破解文件atlassian-extras-3.2.jar替换/opt/atlassian/jira/atlassian-jira/WEB-INF/lib/atlassian-extras-3.2.jar文件

1
2
3
4
5
#先备份原文件
mv /opt/atlassian/jira/atlassian-jira/WEB-INF/lib/atlassian-extras-3.2.jar /tmp/atlassian-extras-3.2.jar

#替换文件
cp /破解文件目录/atlassian-extras-3.2.jar /opt/atlassian/jira/atlassian-jira/WEB-INF/lib/atlassian-extras-3.2.jar

b)确保jira可访问mysql,将mysql-connector-java-5.1.39-bin.jar拷贝/opt/atlassian/jira/atlassian-jira/WEB-INF/lib/路径下

1
cp /破解文件目录/mysql-connector-java-5.1.39-bin.jar /opt/atlassian/jira/atlassian-jira/WEB-INF/lib/mysql-connector-java-5.1.39-bin.jar

启动Jira服务, 默认端口8080

sudo /etc/init.d/jira start

按下图向导配置:

配置数据库

设置应用程序属性

生成JIRA使用许可证

打开Atlassian官网获取许可证

继续下一步配置完邮件(也可先跳过),选择语言,至此Jira的安装和破解完成。

5.老机器jira数据备份,新机器jira数据恢复

a)管理员账号登录老机器jira

点击右上角的”系统”-“导入导出”-“备份系统”,Jira默认会打开自动备份的功能,备份路径为/var/atlassian/application-data/jira/export;入如果没有打开,也可以手动进行备份,如下,可以自定义备份的文件名。

注意:这里的备份数据不包括附件。
jira附件都保存到服务器的/var/atlassian/application-data/jira/data/attachments路径下,这里的附件数据需要手动写脚本进行备份。点击右上角的”系统”-“高级”-“附件”就可以看到jira附件的设置。

将jira的备份文件jira-backup.zip和attachments.zip文件拷贝到新机器。

b)管理员账号登录新机器jira

停止jira服务,将附件备份文件attachments.zip解压替换/var/atlassian/application-data/jira/data/attachments目录(可先备份)。

将备份文件jira-backup.zip拷贝到/var/atlassian/application-data/jira/import路径下。

启动jira服务,点击右上角的”系统”-“导入导出”-“恢复系统”,

点击 [复原]开始恢复。

三、Confluence

老机器上是confluence6.3.1版本,这个版本的WebDAV和widgetconnector都存在漏洞,如果继续安装这个版本,恢复完数据估计很快又会沦为矿机。

针对上面两个漏洞官方在每个小版本里都发布了修复版,和6.3.1比较近的版本6.6.12就是一个修复了漏洞版本,所以决定下载并破解confluence6.6.12。

1.下载文件

a)下载confluence,选择和老机器上confluence相同的版本

wget https://product-downloads.atlassian.com/software/confluence/downloads/atlassian-confluence-6.6.12-x64.bin

b)下载mysql链接库和破解工具

wget https://raw.githubusercontent.com/heyuan110/static-source/master/media/15553944919153/confluence-crack-tool.zip

解压unzip confluence-crack-tool.zip可以看到mysql链接库和破解工具confluence_keygen

2.配置confluence数据库

登录mysql

mysql -uroot -p

执行下面的SQL

1
2
3
4
5
6
7
8
;创建数据库sql
CREATE DATABASE confluence CHARACTER SET utf8 COLLATE utf8_bin;

;授权用户
GRANT ALL ON confluence.* TO 'confluence'@'localhost' IDENTIFIED BY 'confluencepassword';

;刷新
FLUSH PRIVILEGES;

注意创建数据库时COLLATE需使用utf8_bin

3.安装confluence

给安装包添加可执行权限

chmod +x atlassian-confluence-6.6.12-x64.bin

执行安装

./atlassian-confluence-6.6.12-x64.bin

(截图用的6.3.1版本,仅参考)按照提示键入安装即可。(注意第一次确认是否继续,第二次选择安装方式(选1express安装),第三次是否启动服务)
如果没有自定义目录,jira的程序和应用数据分表装到了两个目录:

应用:/opt/atlassian/confluence
应用数据: /var/atlassian/application-data/confluence

默认监听的端口是8090,如果要修改confluence默认端口,修改配置文件/opt/atlassian/confluence/conf/server.xml

最后提示安装完成并启动了服务。

4.破解confluence

打开http://ip:8090(未配置完成前强烈建议用ip+port访问,不要用域名,重装过几次每次用域名访问配置到数据库那一步一定会报超时错误!用ip就不会),

先停掉confluence服务

sudo /etc/init.d/confluence stop

设置语言

选择产品

不要选择任何插件

到这一步,记录服务器ID,不要关掉页面

停止confluence服务

sudo /etc/init.d/confluence stop

a)替换库文件

将confluence库文件/opt/atlassian/confluence/confluence/WEB-INF/lib/atlassian-extras-decoder-v2-3.2.jar通过scp拷贝到本地(可使用scp,rsync,ftp等)

下面在本地电脑操作:

  1. 将拷贝到本地的atlassian-extras-decoder-v2-3.2.jar改名为atlassian-extras-2.4.jar(因为破解工具只认这个版本的名称)

  2. 运行confluence_keygen.jar(mac里有java环境直接双击打开,win和linux可用java命令打开),填好ServerID,其他随便填。点击gen生成key并拷贝出来记录好。点击patch,选择刚重命名为atlassian-extras-2.4.jar的文件进行破解

  1. 破解完成,将破解的文件atlassian-extras-2.4.jar回传到服务器

下面在服务器操作:

在服务器上将回传的atlassian-extras-2.4.jar重命名为atlassian-extras-decoder-v2-3.2.jar

mv atlassian-extras-2.4.jar atlassian-extras-decoder-v2-3.3.0.jar

然后覆盖回原路径:

cp -a atlassian-extras-decoder-v2-3.3.0.jar /opt/atlassian/confluence/confluence/WEB-INF/lib/

b)确保jira可访问mysql,将mysql-connector-java-5.1.39-bin.jar(放在破解工具目录)拷贝/opt/atlassian/confluence/lib/路径下

启动confluence服务

sudo /etc/init.d/confluence start

回到输入key的界面,输入上面记录的key,点击下一步

然后进行配置数据库:我选择的是我自己的数据库,这里需要对数据库进行一些配置。如果选择内置的话,就是使用嵌入式的数据库,不用配置什么东西,等一段(挺长的)时间,就好了。

在测试成功后,下一步比较慢,需要往数据库写好多表。

注意:这一步因为用域名访问每次都报错,都必须删除重新安装,强烈建议用ip+port访问

连接数据库的配置文件:/var/atlassian/application-data/confluence/confluence.cfg.xml。

推荐使用示范站点,先熟悉Confluence,然后再自行进行设置

可以选择confluence中管理用户,也可选择jira链接,不过强烈建议选第一个,后面要链接再自己取加,
这个地方的坑一会在最后面记录。因为我们是基于jira用户,所以选择了第二个。

填完信息开始同步jira用户

(我之前在这一步也失败过,所以我才说建议先创建内部账号。。。)

如果同步完成没报错,继续下一步配置完邮件(也可先跳过),选择语言,至此Jira的安装和破解完成。

可以打开http://ip:port/admin/license.action查看破解情况

5.老机器confluence数据备份,新机器confluence数据恢复

a)管理员账号登录老机器confluence

点击右上角的”一般配置”-“每日备份管理”,如下图(默认配置):

默认每天会自动备份一个zip打包的数据,存放在服务器的/var/atlassian/application-data/confluence/backups路径下。还可以点击”编辑”进行自定义。

默认每天2点左右都会整体备份一次!恢复或迁移的时候,可以直接用这里的zip打包数据进行恢复。除此之外,还可以点击”一般配置”-“备份与还原”里面的备份进行手动备份。

注意:最好将附件也从原机器备份过来。附件都保存在服务器的/var/atlassian/application-data/confluence/attachments路径下。

将confluence的备份文件confluence-backup.zip和attachments.zip文件拷贝到新机器。

b)管理员账号登录新机器confluence

停止confluence服务,将附件备份文件attachments.zip解压替换/var/atlassian/application-data/confluence/attachments目录(可先备份)。

将备份文件confluence-backup.zip拷贝到/var/atlassian/application-data/confluence/restore路径下。

启动confluence服务,点击”一般配置”-“备份与还原”里面的恢复进行数据恢复,

如果文件放到restore目录下了,会显示在图中列表里,选择文件,点击 [还原]开始恢复。

四、问题总结

1. confluence致命漏洞和修复

2. confluence数据库字符乱码

3. confluence账户体系

4. confluence无法登录解决办法