一、    实验环境

Ubuntu server14.04

openfire:http://www.igniterealtime.org/downloads/index.jsp

spark:http://www.igniterealtime.org/downloads/index.jsp

JDK:要求1.7以上

二、安装过程

1、首先在安装openfire之前,先确保你的系统已经更新到最新。以避免后续不必要的麻烦

  $ sudo apt-get update

  $ sudo apt-get upgrade

2、在安装最新版本的Oracle JRE/JDK,使用PPA(personal package archieve)WEBUPD8的方式安装。

  $ sudo apt-get install python-software-properties

  $ sudo add-apt-repository ppa:webupd8team/java

  $ sudo apt-get update

  如果你正在使用OPenJDK,那么先将它移除以免产生任何的冲突

  $ sudo apt-get remove --purge openjdk*

  然后使用下面的命令安装Oracle Java 8

  $  sudo apt-get install oracle-java8-installer

3、下载并且安装openfire_4.2.3_all.deb,并使用使用dpkg命令安装openfire_4.2.3_all.deb

  $  wget http://download.igniterealtime.org/openfire/openfire_4.2.3_all.deb

  $ sudo dpkg -i openfire_4.2.3_all.deb

  $ sudo service openfire start

  

4、.配置openfire的相关端口。你需要安装防火墙并且允许一些openfire的端口通过。使用ufw命令来配置。

sudo ufw allow 9090/tcp
sudo ufw allow 9091/tcp
sudo ufw allow 5222/tcp
sudo ufw allow 7777/tcp
sudo ufw allow 7443/tcp
sudo ufw allow 7070/tcp
sudo ufw allow 3478/tcp
sudo ufw allow 3479/tcp

  经过以上的配置,openfire的初始化安装步骤已经完成了。下一步,我们继续通过web浏览器来配置。

7、配置openfire服务器。配置openfire服务器是相当简单的,只需要几个步骤就能完成。下面就是如何配置openfire。你先在你的电脑上打开浏览器并且打开如下地址。

http://192.168.159.128:9090/index.jsp
进入之后一直默认即可,关于数据库的选择,我选择的是自带的数据库,也可以选择mysql等其他的数据库(但是前提需要在这一步之前安装好所需要的数据库)
到此,openfire已安装完成,接着开始安装客户端的spark

8、安装spark (windows版的)

  就跟安装qq软件差不多(具体就不介绍了)

  安装完成之后,打开spark客户端。在高级选项中配置如下信息(域名为你的服务器主机名或者IP地址)

  

  点击确定按钮即可。接着输入:

   

到此spark已安装完成。

PS:在自己虚拟机上搭建外网不能访问,这个需要你的路由器支持端口转发,或者直接dmz设置。在远程服务器上搭建好的,即可实现通讯。

Openfire+spark在linux上搭建内部聊天系统的更多相关文章

  1. 使用Nginx在windows和linux上搭建集群

    Nginx Nginx (engine x) 是一个高性能的HTTP和反向代理服务器,也是一个IMAP/POP3/SMTP服务器 特点:反向代理 负载均衡 动静分离… 反向代理(Reverse Pro ...

  2. linux上搭建ftp

    linux上搭建ftp 重要 解决如何搭建ftp         解决用户指定访问其根目录         解决访问ftp超时连接         解决ftp主动连接.被动连接的问题 1.安装ftp ...

  3. linux上搭建ftp、vsftp, 解决访问ftp超时连接, 解决用户指定访问其根目录,解决ftp主动连接、被动连接的问题

    linux上搭建ftp 重要 解决如何搭建ftp         解决用户指定访问其根目录         解决访问ftp超时连接         解决ftp主动连接.被动连接的问题 1.安装ftp ...

  4. CentOS Linux上搭建PPPoE服务器及拨号设置

    CentOS Linux上搭建PPPoE服务器及拨号设置 搭建PPPoE,成功了的话,就觉得超级简单,在CentOS Linux更是5步左右就能搞定. 1.安装pppoe,安装完成后,会有pppoe- ...

  5. 【转帖】Linux上搭建Samba,实现windows与Linux文件数据同步

    Linux上搭建Samba,实现windows与Linux文件数据同步 2018年06月09日 :: m_nanle_xiaobudiu 阅读数 15812更多 分类专栏: Linux Samba 版 ...

  6. Linux上搭建SVN服务

    环境:centos7 一.搭建svn服务 1. 安装svn yum -y install subversion 2. 创建一个目录作为svn服务的地址(svn://192.168.0.2:3690 访 ...

  7. mongo学习笔记(六):linux上搭建

    linux分以下几台 monogos mongocfg mongod1 mongod2 1.用ssh把 mongodb-linux-x86_64-3.0.6.tgz 移到linux /root上 2. ...

  8. linux上搭建nginx+php+mysql环境详细讲解

    1.mysql安装 #安装编译环境 yum install -y gcc gcc-c++ gcc-devel g++ g++-devel; yum install -y wget yum instal ...

  9. linux上搭建svn

    参照网址:http://www.cnblogs.com/LusYoHo/p/6056377.html(如何在linux下搭建svn服务)                http://www.cnblo ...

随机推荐

  1. datatables的使用

    在开发web项目中,界面就是一个以丰富友好的样式来展现数据的窗口,同样的数据不用的展现形式给人不同的体验,数据列表是数据是一种常见展现形式,对于数据列表的一个最基本的要求就是能够实现分页以及检索功能. ...

  2. Makefiles

    A tutorial by example Compiling your source code files can be tedious, specially when you want to in ...

  3. EasyUI知识点汇总

    combobox联动设置 $(document).ready(function() { $('#gdfsdl1').combobox({ onSelect: function(record){ $(' ...

  4. python接口自动化(三十五)-封装与调用--流程类接口关联(详解)

    简介 流程相关的接口,主要用 session 关联,如果写成函数(如上篇),s 参数每个函数都要带,每个函数多个参数,这时候封装成类会更方便.在这里我们还是以博客园为例,带着小伙伴们实践一下. 接口封 ...

  5. PAT1098【插入排序+堆排序】

    简单插入排序: 简单插入排序的核心思想: 把一条这么个难看的序列默认分为两个排好序的和未排好序的两个部分: 所以一开始排好序的只有一个a[0](好看的只有一个),难看的有N(数组长度)-1个a[1,n ...

  6. vue render & JSX

    vue在绝大多数使用template是没问题的,但在某些场合下,使用render更适合. 一.render函数 1.createElement 参数 createElement 可接受三个参数 1){ ...

  7. java解析xml文件练习——通过应用包名获取应用图标即其他信息(基于魅族应用商店)

    1.解析包名数据文件(txt文件),并生成包名数组: package jsouphtml; import java.io.BufferedReader; import java.io.File; im ...

  8. 强联通分量之kosaraju算法

    首先定义:强联通分量是有向图G=(V, E)的最大结点集合,满足该集合中的任意一对结点v和u,路径vu和uv同时存在. kosaraju算法用来寻找强联通分量.对于图G,它首先随便找个结点dfs,求出 ...

  9. 41.QT-多线程与界面之间交互总结

    1. 线程与界面组件需要注意的地方 在QThread线程中不能直接创建QWidget之类的界面组件. 因为在QT中,所有界面组件相关的操作都必须在主线程中(也就是GUI thread) 所以, QTh ...

  10. ROS上利用usb_cam读取摄像头图像

    电脑需要有USB3.0的接口 我使用的环境为:Ubuntu16.04LTS ROS版本是kinetic 一.usb_cam驱动的安装 1.创建ROS工作空间 mkdir -p myros/src cd ...