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框架搭建的更多相关文章

  1. linux下Flask框架搭建简单网页

    开始安装FLASK需要创建一个虚拟环境,虚拟环境可以不干扰正在使用的系统环境,避免影响,并且也不需要完全的root权限,更加安全可靠. 搭建环境 Python3.4 进入到microblog目录下创建 ...

  2. linux下的服务器搭建集成环境

    linux下的服务器搭建集成环境 ——写给初学者的我们 1.准备工具 1.1 SecureCRT SecureCRT是一款支持SSH(SSH1和SSH2)的终端仿真程序,简单地说是Windows下登录 ...

  3. Linux下dns服务器搭建

    Linux下dns服务器搭建1-环境Red Hat Enterprise Linux Server release 6.7 (Santiago)2-配置本地yum源安装dns相关包yum -y ins ...

  4. linux下Oracle11g RAC搭建(六)

    linux下Oracle11g RAC搭建(六) 五.校验安装前的环境 root身份下完毕解压grid.database安装包 [grid@node1 soft]$ su - Password: [r ...

  5. linux下Oracle11g RAC搭建(九)

    linux下Oracle11g RAC搭建(九) 八.创建ASM仓储 相同在图形化界面操作 [root@node1 ~]#  su - grid [grid@node1 ~]$ asmca   //创 ...

  6. Linux下SVN服务器搭建配置

    Linux下SVN服务器搭建配置 1.SVN服务安装 yum install subversion 2.创建SVN代码仓库 mkdir /data/svn svnadmin create /data/ ...

  7. 《Linux下FTP服务器搭建及FTP使用》

    .LOGAndy:mxtd114 <Linux下FTP服务器搭建> 0.root登录 1.安装ftp # yum -y install ftp 2.安装vsftpd # yum -y in ...

  8. linux下安装EJBCA 搭建私有CA服务器

    linux下安装EJBCA 搭建私有CA服务器 EJBCA是一个全功能的JAVA的CA系统软件,我们可以用此搭建私有CA服务器: 一:首先我的测试环境: 1.  linux mint18.3 62位: ...

  9. linux下Oracle11g RAC搭建(二)

    linux下Oracle11g RAC搭建(二) 一.安装前配置 网络的配置 IP占用測试 进入windows下.运行cmd,使用ping命令验证网段是否被占用. 注:用哪个网段都行,一定保证不要被其 ...

随机推荐

  1. css3动画、边框、投影知识

    <!doctype html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  2. duilib入门简明教程 -- 自绘标题栏(5) (转)

    原文转自 http://www.cnblogs.com/Alberl/p/3343667.html         如果大家有做过标题栏的自绘,肯定会感慨各种不容易,并且现有的一些资料虽然完美的实现了 ...

  3. java中Map的entrySet 和keySet的使用

    存储这样的一个数据关系结构  使用嵌套map存储 可以通过调用  entrySet方法  或者 keySet方法 进行迭代或者增强for循环 便利输出 这里演示 迭代器的方式进行遍历 package ...

  4. UITextView只能显示两行问题

    需求:UITextView只能显示两行 UITextView * textView = [[UITextView alloc]init]; textView.frame = CGRectMake(20 ...

  5. 代码Rework中的反思

    以前编码只是关注能写出来,并让程序运行就完事,这是非常错误的想法. 让我们重新思考软件设计中的一些问题吧! 软件设计就像设计房屋,设计器具,是一个道理.软件的复杂度和bug完全是自己造成的,要设计好的 ...

  6. 搭建 Maven ---基础入门

    这篇随笔从最基础的控制台  搭建maven讲,后面再升入的讲解IDEA搭建Maven. 一,Maven是什么?作用是什么? Maven是一个项目管理工具,它包含了一个项目对象模型 (Project O ...

  7. Java基础教程---JDK的安装和环境变量的配置

    一.Java的安装和环境变量配置 1.Java的安装: 第一步,从Oracle官网下载安装包,当然也可以从其他安全可靠的地方下载(PS:根据不同电脑系统下载相应的安装包,注意电脑的位数.如x64,x3 ...

  8. SpringMVC_01:创建运行环境(Maven)

    Maven 环境下配置: 1.新建MavenProject,打包选线根据情况选择jar war和pom jar:打包为jar包,主要用于被其他项目引用 war:打包为war包,可直接运行于服务器 po ...

  9. List与set

    1,List与set的区别? List:元素是有序的,元素可以重复,因为集合体系有索引 set:元素是无序的,元素不可以重复,集合体系没有索引 2,list里面特有的方法: 在制定的位置添加元素add ...

  10. Linux网络协议栈之数据包处理过程

    http://blog.csdn.net/cheng_fangang/article/details/8966242