• 1.首先登录到ubuntu server。在安装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,那么先将它移除以免产生任何的冲突

  1. sudo apt-get remove --purge openjdk*

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

  • sudo apt-get install oracle-java7-installer
  • 3.安装mysql数据库。使用apt-get命令安装最新版的mysql 服务器。
    sudo apt-get install mysql-server
  • 4.在MySQL中为openfire创建一个数据库。

    先用root权限登录到mySQL服务器

sudo mysql -u root p

创建的数据库名称叫做"dbopenfire",然后添加新的用户"openfire"并且密码设置未"openfirepwd"。

mysql> CREATE DATABASE dbopenfire CHARACTER SET='utf8';
mysql> CREATE USER 'openfire'@'localhost' IDENTIFIED BY 'openfirepwd';
mysql> GRANT ALL PRIVILEGES ON dbopenfire.* TO openfire@localhost WITH GRANT OPTION;
mysql> FLUSH PRIVILEGES;
mysql> quit
  • 5.下载并且安装openfire3.7.1(这里的版本号你可以改成最新的版本号,注意下面的命令也要改)。从openfire官网下载openfire3.7.1的deb包
  • cd /tmp
    wget http://download.igniterealtime.org/openfire/openfire_3.7.1_all.deb

    使用dpkg命令安装openfire_3.7.1_all.deb

    sudo dpkg -i openfire_3.7.1_all.deb
    (Reading database ... 85791 files and directories currently installed.)
    Preparing to replace openfire 3.6.4 (using openfire_3.7.1_all.deb) ...
    Unpacking replacement openfire ...
    Setting up openfire (3.7.1) ...
    Installing new version of config file /etc/openfire/security/truststore ...
    Installing new version of config file /etc/init.d/openfire ...
    Processing triggers for ureadahead ...
    ureadahead will be reprofiled on next reboot

    忽略所有对于用户和文件夹权限的安装误差。这可能是因为你的jre/JDK版本导致的。你需要编辑文件/etc/init/d/openfire  的27行。将java-6-sun用java-6-oracle或者java-7-oracle代替。

    sudo apt-get install rpl
    sudo rpl '6-sun' '7-oracle' /etc/init.d/openfire
    sudo service openfire start
  • 6.配置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://mydomain:9090/setup/index.jsp

    将上面的mydomain替换成你部署openfire服务器的ip地址。下面是网页截图。                                                

  • 8.下载安装IM客户端。你需要下载IM客户端软件来连接到openfire服务器。你可以安装任何的使用了XMPP/Jabber 协议的IM客户端,比如Spark。Spark是跨平台的,它可以在linux,windows以及mac OSX上使用。你可以从openfire的官网下载。你可以在ubuntu桌面版本安装。
    wget http://download.igniterealtime.org/spark/spark_2_6_3.tar.gz
    tar -zxvf spark_2_6_3.tar.gz
    sudo mkdir /opt/spark
    sudo mv Spark/* /opt/spark/

    创建一个桌面启动的文件,打开控制台并且运行下面的命令。

    sudo nano /usr/share/applications/spark.desktop
    [Desktop Entry]
    Name=Spark
    Version=2.6.3
    GenericName=Spark
    X-GNOME-FullName=Spark
    Comment=ignite realtime Spark IM client
    Type=Application
    Categories=Application;Utility;
    Path=/opt/spark
    Exec=/bin/bash Spark
    Terminal=false
    StartupNotify=true
    Icon=/opt/spark/logo-spark.png
    TargetEnvironment=Unity
    sudo cd /opt/spark
    sudo wget https://dl.dropbox.com/u/50880014/spark.png

    现在,你可以打开Spark客户端了,并且可以尝试连接到openfire了。                                                                                

ubuntu openfire Server install的更多相关文章

  1. synergy配置 Ubuntu作Server, Win 7作client

    Synergy 允许你轻松地在你办公桌上多台计算机之间共享你的鼠标和键盘,它免费并且开放源代码.你只要将鼠标(指针)从一台计算机的屏幕边缘移出到另一个屏幕就行 了.甚至可以共享你的剪贴板.你所需要的仅 ...

  2. ubuntu 13.10 install wireshark

    ubuntu 13.10 install wireshark 今天在使用java jsoup操作remote server的是否,在本地执行可以成功返回内容,然后打成jar包,使用shell在 ser ...

  3. 〔原创〕Ubuntu Linux Server 9.04 安装全程图解

    关于Ubuntu Linux Server 9.04 版本的安装使用.先声明几点: 1. 整个安装过程,都是全英文的,而且,是文本模式,不像Desktop版本,有Livecd的图形化模式.2. 刚开始 ...

  4. ubuntu mac terminal install software

    http-server // ubuntu sudo npm install http-server -g npm node.js yarn

  5. anaconda2下面安装opencv2.4.13.4完成----解决默认安装的问题----Thefunction is not implemented. Rebuild the library with Windows, GTK+ 2.x orCarbon support. If you are on Ubuntu or Debian, install libgtk2.0‑dev and pkg

    转载自:http://blog.csdn.net/qingyanyichen/article/details/73550924 本人下载编译安装了opencv2.4.9,oppencv2.4.10,o ...

  6. CentOS中实现与Ubuntu下apt-get install build-essential功能类似的命令

    CentOS中实现与Ubuntu下apt-get install build-essential功能类似的命令 在Ubuntu中安装完系统后,可以直接使用apt-get install build-e ...

  7. ubuntu server install 安装中文(搜狗)输入法

    1.对于ubuntu server默认无中文输入法框架,我比较倾向于我一直使用的ibus-sunpinyin.这里我需要先安装ibus的框架 不过我遇到了问题: dpkg: dependency pr ...

  8. ubuntu web server ipython notebook install

    http://blog.csdn.net/yehuohan/article/details/51389966 ipython notebook installhttp://blog.csdn.net/ ...

  9. ubuntu 12.04 install docker-engine1.12.3

    root@node3:/data/src# cat /etc/issueUbuntu 12.04.4 LTS \n \l   root@node3:/data/src# cat /etc/apt/so ...

随机推荐

  1. Web/JAVA 简单题目汇总

    [Java标识符,变量.常量] 一.Java合法标识符命名规则 (1)区分字母大小写,标识符长度不限 (2)  英文,Unicode码双字节文字字符(日文,韩文,中文),数字,下划线,$(美元符号)均 ...

  2. UOJ 180【UR #12】实验室外的攻防战

    http://uoj.ac/contest/25/problem/180 从前往后对比串A,B 当$A_i,B_i$不相同时找到$B_i$在A中的位置j 若$min{A_1,A_2,A_3...... ...

  3. [HDU6240]Server

    题目大意: 用$n$条线段覆盖区间$[1,t]$上的整点.每条线段有4个属性$(S_i,T_i,A_i,B_i)$,表示用第$i$条线段可以覆盖区间$[S_i,T_i]$.若选取线段的集合为$S$,最 ...

  4. JSP内置对象阶段案例

    1.login2: <%@ page language="java" import="java.util.*" pageEncoding="UT ...

  5. JMeter之Ramp-up Period(in seconds)说明(可同时并发)(转载)

    Ramp-up Period(in seconds) [1]决定多长时间启动所有线程.如果使用10个线程,ramp-up period是100秒,那么JMeter用100秒使所有10个线程启动并运行. ...

  6. C# Json格式字符串

    转自:http://www.cnblogs.com/unintersky/p/3884712.html 将Json字符串转化成格式化表示的方法: 字符串反序列化为对象-->对象再序列化为字符串 ...

  7. (转载)EF 使用code first模式创建数据库和 填充种子数据

    第一篇:来自 .net 开发菜鸟 博主的文章:https://www.cnblogs.com/dotnet261010/p/8035213.html 第二篇:来自 JustYong 博主的文章:htt ...

  8. JAVA常见算法题(二十四)

    package com.xiaowu.demo; //一个5位数,判断它是不是回文数.即12321是回文数,个位与万位相同,十位与千位相同. public class Demo24 { public ...

  9. malloc,free和new,delete之间的区别

    1.malloc free 是c语言里面的,不过在c++中也能使用,这个只是申请的一块内存,一般不能申请对象的内存空间:2.new delete,是c++的,申请的也是一块内存,只是这个可以申请对象. ...

  10. 人工智能真NB?何不去炒股?

    自从AlphaGo/Master战胜人类棋手,人工智能替代人工的呼声就甚嚣尘上.人工智能还有个小伙伴名为大数据也来势汹汹,貌似未来二者联手要取代人类似的. 人工智能真的锐不可当?AlphaGo/Mas ...