XMPP环境搭建之Openfire安装
Openfire服务器 是基于java语言写的,也就是意味着你的电脑有java运行环境。
Openfire是一个强大的实时通信和聊天服务器,实现了XMPP协议。这篇文档将会指导你安装Openfire。(只翻译Unix和Linux)
先介绍一下RPM:
RPM是Redhat Package Manager(软件包管理器)的缩写,这一文件格式名称虽然打上了RedHat的标志,但是其原始设计理念是开放式的,现在包括OpenLinux、S.u.S.E.以及Turbo Linux等Linux的分发版本都有采用,可以算是公认的行业标准了。
一.安装
要么选择RPM
,那么选择tar.gz
。
1.如果你要使用RPM
,使用包管理器来运行下面的命令来将Openfire
安装到/opt/openfire
目录下:
rpm -ivh openfire_3_0_0.rpm
2.如果使用tar.gz
方式安装的话,将压缩包解压到/opt
或者/usr/bin
目录下。
$ tar -xzvf openfire_3_0_0.tar.gz
$ mv openfire /opt
看出,官方给出四种下载版本,但是文档中建议RPM
或者.tar.gaz
。之前,我使用.deb
安装时出现了问题,错误提示如下:
按照错误提示,貌似是我的java版本高了。不过,在网上搜索资料,有人安装的java确实是1.8.0。无奈,只好采取.tar.gaz
方式安装了。如果有人知道我的错误原因,请联系我。
注意:.tar.gz
构建不包含一个JRE(java运行环境)
。因此,你必须要在你的系统中安装JDK
或者JRE 1.5.0(Java 5)
或者更高的版本。你可以在命令行中输入java -version
来查看java的版本。
二.配置
为了完成Openfire
的安装,你需要执行以下的每一步骤:
- 数据库:如果你选择使用外部的数据库,你必须要为
Openfire
配置数据库。 - 设置:使用内置的基于web的工具来完成设置和确定服务器配置。
管理者控制台:使用基于web的管理工具来管理服务器。
此时,
opener
文件夹中的目录如下:
conf
目录是Openfire存放配置文件的地方bin
目录包含服务器可执行文件。jre
目录包含Openfire的Windows和RPM版本携带的Java 5运行环境lib
目录中包含了运行Openfire必要的库plugins
目录包含服务器插件。默认,Openfire会带基于web的管理控制台插件。resources/databases
目录包含用来创建新的Openfire数据库SQL概要文件,和更新当前安装的脚本。resources/security
目录是Openfire保存密钥来支持SSL(Secure Sockets Layer 安全套接层)连接安全性。documentation
目录包含了服务器文档。
1.设置数据库(见上一章)
2.设置服务器
一个基于web、向导驱动的设置和配置工具内嵌到了Openfire中了。运行下Openfire(特定平台运行Openfire的指令在下面),然后使用浏览器来连接管理者控制台。基于web的管理者控制台的默认端口是9090。如果当前所用的电脑和Openfire所在的电脑是同一台机器的话,下面的网址一般会工作的:http://127.0.0.1:9090
。初始化的设置和管理也可以通过IP地址或主机名在远程电脑上完成。
3.管理控制台
完成上面的配置后,Openfire就会被配置,你可以使用基于web的管理控制台来管理服务器。URL应当和你之前设置服务器的一样,除非你修改了端口。
4.在Linux/Unix下运行Openfire
如果你在RedHat或者类RedHat系统(例如CentOS、Fedora等)下运行的话,我们推荐使用RPM,因为它包含了一些标准RedHat的自定义处理,像环境。假定你已经使用了RPM,你可以使用/etc/init.d/openfire
脚本来开启或停止Openfire。
# /etc/init.d/openfire
Usage /etc/init.d/openfire {start|stop|restart|status|condrestart|reload}
# /etc/init.d/openfire start
Starting openfire:
如果你在与上面提到的不同Linux/Unix平台上运行的话,或者你使用.tar.gz
安装的话,你可以在Openfire安装目录下使用bin/openfire
来开启和停止Openfire。
# ./openfire
Usage: ./openfire {start|stop}
# ./openfire start
Starting openfire
我是通过.tar.gz
来安装Openfire的。
我是在另一台电脑的浏览器查看Openfire的,http://192.168.1.109:9090/setup
,其中192.168.1.109:9090
是安装了Openfire的电脑的IP地址,注意,两台电脑要在同一局域网内。
接下来,根据向导一步步设置。
可以,有点坑的就是,设置完登陆时,出现这样的问题:
网上说这是一个Bug,解决方法是:
1.用命令行进入MySQL数据库,选中在Openfire配置中使用的数据库,我选中的是”xmpp”:
我们能发现有一个ofUser
的表,Openfire的用户名和密码都存储在里面。
2.将表ofUser
清空,
delete from ofUser;
然后执行该SQL
INSERT INTO ofUser (username, plainPassword, name, email, creationDate, modificationDate)
VALUES ('admin', 'admin', 'Administrator', 'admin@example.com', '0', '0');
当然,具体信息可以自己设置。
3.在命令行进入openfire
的安装目录下的bin
目录,我的是/opt/openfire/bin
。
使用./openfire stop
关闭opener服务,然后使用./openfire start
开启opener服务。再用用户名:admin,密码:admin登录即可。