eJabberd是一个强大的,可扩展的XMPP服务器。 eJabberd是写在
Erlang的编程语言。所有eJabberd功能都从任何移动应用或Web应用程序的方便。在eJabberd使用web-sockets提供无缝地发送和浏览器标签页中打开,而接收信息的能力。
安装eJabberd
eJabberd包下默认的系统库可用。你只需要使用下面的命令运行安装包eJabberd。这也将安装Erlang编程语言包。
$ sudo apt-get install ejabberd
配置eJabberd
对于这个安装,我们使用的是在配置域名
im.example.com。你可以只使用localhost对您的本地系统,但对远程服务器使用域或子域名。所以刚开始我做一个主机文件项与eJabberd服务器的ip地址映射im.example.com。
$ sudo echo "192.168.10.120 im.example.com" >> /etc/hosts
现在,您需要为您的域名创建管理员帐户。下面的命令将创建两个虚拟主机管理员帐户
localhost和
im.exmaple.com。
$ ejabberdctl register admin localhost password
$ ejabberdctl register admin im.example.com password
现在编辑ejabberd配置文件 /etc/ejabberd/ejabberd.yml在文本编辑器并添加ACL为im.example.com管理员用户。
acl:
admin:
user:
- "admin": "localhost"
- "admin": "im.example.com"
现在添加
im.example.com下的主机部分。
hosts:
- "localhost"
- "im.example.com"
访问eJabberd的Web面板
使得所有上述配置后,让我们用下面的命令重新启动eJabberd服务。
$ sudo service ejabberd restart
eJabberd Web管理面板默认5280端口上启动。访问方式来访问5280端口域名/admin
http://im.example.com:5280/admin
输入管理员用户名和如上图所示的主机im.example.com的密码。如果通过本地主机访问ejabberd,然后按上述步骤创建的localhost管理员帐户输入登录信息。
验证设置
要验证设置,我们将使用XMPP客户端,并与两个不同的用户登录,然后尝试它们之间的消息传递。所以首先建立在我们的虚拟主机两个用户帐户按下面展示。
rahul@im.example.com
andrew@im.example.com
现在你的系统上安装一个XMPP客户。在这个例子中,我们将使用Gajim XMPP客户,你也可以使用下面的命令来安装Gajim两个系统例如Pidgin等使用其他替代品。
$ sudo apt-get install gajim
现在启动Gajim(非root帐号),登录到这两个系统上Gajim不同2个用户帐户。
现在,从操作添加其他帐户>>添加联系人菜单选项。它将发送请求到远程用户。当远程用户批准或拒绝你的要求,eJabberd通知您请求的状态。在批准要求,远程触点将显示您的聊天列表。
最后,你可以开始这两个帐户之间的消息传递。