云网牛站
所在位置:首页 > Linux云服务器 > 在CentOS 7系统中安装Openfire XMPP chat server的方法

在CentOS 7系统中安装Openfire XMPP chat server的方法

2019-02-09 15:10:37作者:戴进稿源:云网牛站

本文介绍在CentOS 7系统中安装Openfire XMPP chat server(Openfire XMPP聊天服务器)的方法,Openfire的安装非常简单,由于我们使用的是CentOS服务器,你需要安装和更新/升级CentOS服务器,更新系统并升级:

# yum -y update

# yum -y upgrade 

# yum -y install wget

# cd /tmp/

同时下载并安装所有必需的软件包,需要安装MariaDB:管理数据库系统、JAVA JDK、zlib and glibc libraries、Openfire软件包。

 

1.安装所需的库

[root@openfire-cloud ~]# yum -y install epel-release

[root@openfire-cloud ~]# yum -y install glibc.i686

[root@openfire-cloud ~]# yum -y install zlib.i686 libstdc++.i686

 

2.下载并安装JDK(可选)

参考:在Linux服务器CentOS 7系统下安装JDK 1.8的步骤

[root@openfire-cloud ~]# mkdir -p /usr/src/openfire

[root@openfire-cloud ~]# cd /usr/src/openfire

[root@openfire-cloud ~]# curl -LO -H "Cookie: oraclelicense=accept-securebackup-cookie" "http://download.oracle.com/otn-pub/java/jdk/8u71-b15/jdk-8u71-linux-x64.rpm"

[root@openfire-cloud ~]# rpm -Uvh jdk-8u71-linux-x64.rpm

将以下行添加到/etc/profile文件的末尾:

[root@openfire-cloud ~]# vim /etc/profile

然后将以下内容添加到文件末尾:

export JAVA_HOME=/usr/java/default

export PATH=$PATH:$JAVA_HOME/bin

export CLASSPATH=.:$JAVA_HOME/jre/lib:$JAVA_HOME/lib:$JAVA_HOME/lib/tools.jar

来源文件/etc/profile:

[root@openfire-cloud ~]# source /etc/profile

应该成功安装了Java环境。

 

3.为mysql安装java连接器

[root@openfire-cloud ~]# yum install java libldb.i686 mysql-server mysql-connector-java

 

4.下载并安装Openfire

下载Openfire包,可以下载Openfire 4.3.2版本:

# wget https://www.igniterealtime.org/downloads/download-landing.jsp?file=openfire/openfire-4.3.2-1.x86_64.rpm \

-O openfire-4.2.3.rpm

我们现在安装它:

# yum localinstall openfire-4.3.2.rpm

为Openfire配置PAM:

# cp -Rp /etc/pam.d/system-auth /etc/pam.d/openfire

将运行Openfire守护程序的用户从守护程序更改为root:

# vim /etc/sysconfig/openfire

在CentOS 7系统中安装Openfire XMPP chat server的方法

启动Openfire并使其在启动时启动:

# systemctl start openfire.service

# chkconfig openfire on

确认它正在运行:

# systemctl status openfire

在CentOS 7系统中安装Openfire XMPP chat server的方法

 

5.安装和配置MariaDB数据库及防火墙

[root@openfire-cloud ~]# yum -y install mariadb-server mariadb

[root@openfire-cloud ~]# systemctl start mariadb

[root@openfire-cloud ~]# systemctl enable mariadb

确认数据库正在运行:

[root@openfire-cloud ~]# systemctl status mariadb

配置数据库:

[root@openfire-cloud ~]# mysql_secure_installation

当询问数据库密码时,如果你尚未设置,请按Enter键,然后设置root密码并保存更改:

[root@openfire-cloud ~]# mysql -u root -p

MariaDB> create database openfire;

MariaDB> GRANT ALL PRIVILEGES ON openfire.* TO openfire@localhost IDENTIFIED BY 'openfire';

MariaDB> flush privileges; 

MariaDB> use openfire;

MariaDB> source /opt/openfire/resources/database/openfire_mysql.sql;

MariaDB> exit

如果你运行firewalld防火墙,则必须在TCP端口9090和9091上接受允许数据包:

firewall-cmd --zone=public --add-port=9090/udp --permanent

firewall-cmd --zone=public --add-port=9090/tcp --permanent 

firewall-cmd --zone=public --add-port=9091/udp --permanent

firewall-cmd --zone=public --add-port=9091/tcp --permanent

重装Firewalld守护进程

[root@openfire-cloud ~]# firewall-cmd --reload

要访问GUI,你将使用服务器的IP地址和端口9090,首先,安装net-tools包以使用ifconfig检查openfire服务器的IP地址:

[root@openfire-cloud ~]# yum -y install net-tools

[root@openfire-cloud ~]# ifconfig

在CentOS 7系统中安装Openfire XMPP chat server的方法

你还可以使用ip addr show命令获取你的IP地址:

[root@openfire-cloud ~]# ip addr show

然后就可以访问Openfire Web管理界面了:

http://127.0.0.1:9090

http:"your_ip_address:9090"

在CentOS 7系统中安装Openfire XMPP chat server的方法

接下来的步骤参考 https://ywnz.com/linuxyffq/4222.html 文章中的配置防火墙和访问Openfire UI部分。

附:在防火墙中打开端口

如果你使用的是iptables,则可能需要打开openfire和Openfire客户端连接端口使用的端口,这些端口是5222、7777、9090、9091、udp和tcp,将eth1替换为你的网络接口卡:

iptables -A INPUT -p tcp -i eth1 –dport 5222 -j ACCEPT

iptables -A INPUT -p udp -i eth1 –dport 5222 -j ACCEPT

iptables -A INPUT -p tcp -i eth1 –dport 7777 -j ACCEPT

iptables -A INPUT -p udp -i eth1 –dport 7777 -j ACCEPT

iptables -A INPUT -p tcp -i eth1 –dport 9090 -j ACCEPT

iptables -A INPUT -p udp -i eth1 –dport 9090 -j ACCEPT

iptables -A INPUT -p tcp -i eth1 –dport 9091 -j ACCEPT

iptables -A INPUT -p udp -i eth1 –dport 9091 -j ACCEPT

现在重新加载iptables以实现所做的更改:

# iptables-restore < /etc/sysconfig/iptables

如果你正在使用firewalld,那么下面是一个完整的命令列表:

firewall-cmd --zone=public --add-port=9090/udp --permanent 

firewall-cmd --zone=public --add-port=9090/tcp --permanent

firewall-cmd --zone=public --add-port=5222/udp --permanent

firewall-cmd --zone=public --add-port=5222/tcp --permanent

firewall-cmd --zone=public --add-port=9091/udp --permanent

firewall-cmd --zone=public --add-port=9091/tcp --permanent

firewall-cmd --zone=public --add-port=7777/udp --permanent

firewall-cmd --zone=public --add-port=7777/tcp --permanent

重新加载firewalld:

[root@openfire-cloud ~]# firewall-cmd --reload

要获取我们添加到公共区域的端口列表,请运行:

[root@openfire-cloud]~# firewall-cmd --list-ports   

9090/udp 5061/udp 9091/udp 9090/tcp 5222/udp 5060/udp 7777/udp 4569/udp 5060/tcp 9091/tcp 10000-20000/udp 7777/tcp 5222/tcp 5061/tcp 5038/tcp

[root@openfire-cloud]~#

如果有多个ipv4网络接口,请记住激活ip转发:

[root@openfire-cloud]~# echo "net.ipv4.ip_forward=1" >> /etc/sysctl.conf 

[root@openfire-cloud]~# sysctl -p

net.ipv4.ip_forward = 1

[root@openfire-cloud]~#

至此,配置完成。

 

相关主题

在CentOS 7服务器中安装MariaDB 10.4的方法

精选文章
热门文章