大家好,我是考100分的小小码 ,祝大家学习进步,加薪顺利呀。今天说一说IM及时通讯软件openfire+mysql+openldap+spark,希望您对编程的造诣更进一步.
业务场景:对于安全注重和可控性更强的企业,自己搭建聊天系统是很多企业选择,功能大概类似微信,QQ,阿里旺旺等, 目前及时通讯软件很多,比如商业的腾讯通,开源的基于XMPP开源协议的也很多,但是发现国内此类文章和案例比较少或者很多有问题,没有系统化解决实际问题,碎片化的知识点。 我今天讲的就是openfire+mysql+openldap+spark,此架构适用于企业环境中linux客户端和windows客户端并存办公。对安全性有较强要求和把控的企业,基于开源思想,所以选择的都是开源软件来搭建。 openfire:基于XMPP协议的服务器端,用java编写,所以你懂的,需要JDK或者JRE支持,下载地址为:http://www.igniterealtime.org/projects/openfire/plugins.jsp 国外网站,可能比较慢,需要此软件可以提供,
openfire提供基础的IM服务,如果想要更多功能,这个软件可以添加自己需要的插件,有很丰富的插件,直接上传下载的JAR包放到plugs下面就可以啦,下载地址也是上面地址,
spark:基于XMPP协议的客户端,也是java编写,客户端丰富,linux,mac,windows 都有,直接下载安装使用,同样是上面地址下载。
mysql 和openldap不是今天讲解的重点,此次安装全部基于centos7 安装,下面不如正题
一,安装openfire服务端,建议下载openfire的rpm包安装,因为这样可以省去在/etc/systemd/system/openfire.service 自己弄个启动器,
1, rpm -ivh openfire-4.5.2-1.x86_64.rpm 安装openfire rpm包,默认安装在/opt/openfire中,本次是2020年下载最新版本4.5.2
2,设置开机启动systemctl enable openfire
2, 安装JDK1.8,也可以不安装,因为此openfire 自带jre,就可以开始试用网页来访问
3,开始安装mysql5.7,我安装5.7版本,5.6也支持,同样rpm安装,然后导入openfire中mysql数据库结构,业支持其他版本数据库
4,openfire配置在网页中访问:http://localhost:9090/
5, 选择语言
6,选择域名和openfire服务器的域名,这里的加密可以暂时不用管
7,选择标准数据库,因为标准数据库性能更好
8,设置mysql数据库驱动,数据库地址,数据库名称,用户名和密码
9,选择用户和组的模式,默认很简单,在数据库中保存用户和组,设置一个管理员密码就OK啦,
10,我们这里介绍的是openldap 同步用户和密码
11,设置openldap,按照如图所示,后面密码为openldap的管理员密码
12,设置用户过滤,这里会去同步部门和人员
13,组映射图主要是组映射到openfire和LDAP
14,添加openfire管理员,把openldap中一个组织或者用户给授权成管理员,这里是IT组全部成员
需要注意的是,一定要在锯齿设置那里验证下密码是否可用
15,使用openldap管理员登陆openfire,查看用户是否同步过来,这里是从openldap同步过来的
16,目前已知bug,
二,客户端spark安装
1,windows安装spark,直接到http://www.igniterealtime.org/projects/openfire/plugins.jsp 下载exe客户端下一步即可,登录的时候需要注意,高级里面勾选2项内容
2,linux spark 安装,以centos7为例,图像界面为gui或者ghome桌面,直接到http://www.igniterealtime.org/projects/openfire/plugins.jsp 下载RPM客户端安装包,JDK环境自带,如果没有自己安装一个JDK1.8,
安装RPM rpm -ivh spark-2.8.3.rpm
查看Linux 环境中Spark 安装位置
3,启动spark 这个前台启动,terminal 不能断开和关闭,最好是后台启动
./startup.sh
4,目前我没找到systemctl start spark这种方法,或者在图形界面添加启动器方式,如果有大神知道,可以留言
三,openfire 插件 openfire 几乎扩展的功能都是通过插件来实现的,很多人加入到插件中来,其中比较重要的几个插件
1,metting 会议插件,用于视屏会议
2,Client Control 客户端管理插件 ,用户限制客户端发送图片,文件等内容,然后客户端注册,更改组织和人员
3,Candy 是一个web客户端,但是我可以打开,没看到里面内容
4,Monitoring Service 主要是用于显示在线人数,资源使用情况等
5,语音聊天插件 https://code.google.com/archive/p/redfire/downloads 下载后安装好像没啥感觉,
6,其他好用插件也请大神们指点,我安装插件到不少,但是好用的感觉没多少
IM及时通讯软件openfire+mysql+openldap+spark
原文地址:https://blog.51cto.com/1635154/2512620
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
转载请注明出处: https://daima100.com/7183.html