linux下ejabberd框架搭建
ejabberd为erlang的IM的开源框架,一直想找个时间研究研究:
1、下载Ejabberd安装包
wget http://www.process-one.net/downloads/ejabberd/2.1.13/ejabberd-2.1.13-linux-x86_64-installer.run
2、下载完成后,给安装包加权限,否则无法安装
[root@localhost xmpp]# chmod +x ejabberd-2.1.13-linux-x86_64-installer.run
3、安装Ejabberd

[root@localhost xmpp]# ./ejabberd-2.1.13-linux-x86_64-installer.run
Language Selection Please select the installation language
[1] Dutch - Nederlands
[2] English - English
[3] French - Français
[4] German - Deutsch
[5] Russian - Русский
[6] Simplified Chinese - 简体中文
[7] Spanish - Español
.....

几个注意的地方:a、设置域的时候输入本机的IP地址 b、语言最好选择英语
4、安装完成后启动

[root@localhost xmpp]# cd /opt
[root@localhost opt]# cd ejabberd-2.1.13/
[root@localhost ejabberd-2.1.13]# cd bin
[root@localhost bin]# ./start
[root@localhost bin]# ./status
The node ejabberd@localhost is started with status: started
ejabberd 2.1.13 is running in that node

服务已经启动。可以用WEB来管理。
WEB地址:http://ip地址:5280/admin
5、Mysql配置

[root@localhost bin]# mysql -u root -p
Enter password: 创建用户和修改权限 mysql:>create database ejabberd
mysql:>grant all privileges on ejabberd.* to ejabberd@’127.0.0.1′ IDENTIFIED BY ’ejabberd’;
mysql:>grant all privileges on ejabberd.* to ejabberd@’localhost’ IDENTIFIED BY ’ejabberd’; 创建数据库 mysql:>source /usr/local/ejabberd/lib/ejabberd-2.1.3/priv/odbc/mysql.sql;

6、XMPP服务配置

修改ejabberd.cfg文件如下:
注释掉: {auth_method, internal}.
取消注释:{auth_method, odbc}.
取消注释并设置数据库名称和密码:
{odbc_server, {mysql, "localhost", "ejabberd", "ejabberd", "ejabberd"}}.
修改模块如下:都增加_odbc
{mod_last_odbc, []},
{mod_offline_odbc, []},
{mod_privacy_odbc, []},
{mod_private_odbc, []},
{mod_pubsub_odbc, [ % requires mod_caps ...
{mod_roster_odbc, []},
{mod_vcard_odbc, []},
重启服务:
cd /bin下
./start 命令

7、注册管理员用户
./ejabberdctl register admin 192.168.200.239 123456
ejabberd常用配置说明:
1、数据库配置
ejabberd默认安装后使用的是自带的数据库,可以通过配置使用其他的数据库如Mysql、Sqlserver、Postgresql等数据库,Mysql数据库配置参见《Linux下ejabberd安装配置》,其他数据库安装配置与此类同。
2、主机配置
{hosts, ["192.168.1.1"]}. 修改成主机的IP即可
3、管理员配置
{acl, admin, {user, "RKIMAdmin", "192.168.1.1"}}.
增加管理员在单独按此格式写即可。
4、广播权限
{access, announce, [{allow, admin}]}. 只有管理员可以广播
{access, announce, [{allow, all}]}. 所有人都可以发起广播
5、群组配置
{mod_muc,
[
{access, muc},
{access_create, muc_create},
{access_persistent, muc_create},
{access_admin, muc_admin},
{max_users, 1000}, 群组的最大限制
{history_size,500}, 群组最大历史消息记录条数
{max_user_conferences, 500} 单个用户可以加入群组的最大数量
]
},
具体可参加ejabberd官网.
转自:http://www.cnblogs.com/silent2012/p/3610747.html
linux下ejabberd框架搭建的更多相关文章
- linux下Flask框架搭建简单网页
开始安装FLASK需要创建一个虚拟环境,虚拟环境可以不干扰正在使用的系统环境,避免影响,并且也不需要完全的root权限,更加安全可靠. 搭建环境 Python3.4 进入到microblog目录下创建 ...
- linux下的服务器搭建集成环境
linux下的服务器搭建集成环境 ——写给初学者的我们 1.准备工具 1.1 SecureCRT SecureCRT是一款支持SSH(SSH1和SSH2)的终端仿真程序,简单地说是Windows下登录 ...
- Linux下dns服务器搭建
Linux下dns服务器搭建1-环境Red Hat Enterprise Linux Server release 6.7 (Santiago)2-配置本地yum源安装dns相关包yum -y ins ...
- linux下Oracle11g RAC搭建(六)
linux下Oracle11g RAC搭建(六) 五.校验安装前的环境 root身份下完毕解压grid.database安装包 [grid@node1 soft]$ su - Password: [r ...
- linux下Oracle11g RAC搭建(九)
linux下Oracle11g RAC搭建(九) 八.创建ASM仓储 相同在图形化界面操作 [root@node1 ~]# su - grid [grid@node1 ~]$ asmca //创 ...
- Linux下SVN服务器搭建配置
Linux下SVN服务器搭建配置 1.SVN服务安装 yum install subversion 2.创建SVN代码仓库 mkdir /data/svn svnadmin create /data/ ...
- 《Linux下FTP服务器搭建及FTP使用》
.LOGAndy:mxtd114 <Linux下FTP服务器搭建> 0.root登录 1.安装ftp # yum -y install ftp 2.安装vsftpd # yum -y in ...
- linux下安装EJBCA 搭建私有CA服务器
linux下安装EJBCA 搭建私有CA服务器 EJBCA是一个全功能的JAVA的CA系统软件,我们可以用此搭建私有CA服务器: 一:首先我的测试环境: 1. linux mint18.3 62位: ...
- linux下Oracle11g RAC搭建(二)
linux下Oracle11g RAC搭建(二) 一.安装前配置 网络的配置 IP占用測试 进入windows下.运行cmd,使用ping命令验证网段是否被占用. 注:用哪个网段都行,一定保证不要被其 ...
随机推荐
- 自定义JavaScript字典类jsdictionary.js
/* Dictionary类:本类实现了字典功能,所有方法.属性都模仿System..Collection.Generic.Dictionary类 构造函数: Dictionary() 属性: Com ...
- [LeetCode] Unique Binary Search Trees II dfs 深度搜索
Given n, generate all structurally unique BST's (binary search trees) that store values 1...n. For e ...
- 刷leetcode是什么样的体验?【转】
转自:https://www.zhihu.com/question/32322023 刷leetcode是什么样的体验? https://leetcode.com/ 1 条评论 默认排序 按时间排 ...
- python进阶学习
python高级用法 github: https://github.com/cq146637/Advanced
- C结构体struct用法小结
结构体和int,float等类型一样是一种常用的类型,它是由各种基本数据类型构成,通常包含有struct关键字,结构体名,结构体成员,结构体变量. 一.结构体定义 通常有3种定义方式,以例子方式表示: ...
- Python 复习-1
#!/usr/bin/env python # -*- coding:utf-8 -*- # @Time : 2017/10/27 22:46 # @Author : lijunjiang # @Fi ...
- C#图解教程学习笔记——事件
一.事件的定义事件:当一个特定的程序事件发生时,程序的其他部分可以得到该事件已经发生的通知,同时运行相应处理程序.事件的很多部分都与委托类似.实际上,事件就像专门用于特殊用途的简单委托.事件包含了一个 ...
- Z划分空间
/* https://blog.csdn.net/fastkeeper/article/details/38905249 https://max.book118.com/html/2017/1007/ ...
- C++ | class size
c++类大小和机器还有编译器有关.64位机器指针大小为8个字节,32位机器为4个字节. 每个实例在内存中都有一个独一无二的地址,为了达到这个目的,编译器往往会给一个空类隐含的加一个字节,这样空类在实例 ...
- Jenkins错误“to depth infinity with ignoreexternals:true”问题解决
试下以下解决方法: 1.可能是SVN插件版本过低导致,升级SVN插件. 2.可能是构建时自己手动修改了代码,而SVN检出时无法覆盖导致的错误,可以先删除jenkins检出的代码,然后再检出一次去构建. ...