现在的位置: 首页 > 综合 > 正文

ejabberd 安装

2013年09月19日 ⁄ 综合 ⁄ 共 2731字 ⁄ 字号 评论关闭
 

自从成为听障人士一员后,由于电话及手机用起来很不方便,因此很多关心的朋友都问我,是否有使用 msn 或是 yahoo 实时传讯,以做为和朋友们连络的管道。

我和他们说,打死我都不用 msn yahoo im,为啥:

1. 这两个系统都是一个封闭系统
2.
安全性问题,君不见 msn 在网络资安上出现多少问题
3.
这两家业者作法有点贱,为何如此说呢,大家可能有个概念,在网络上要使用某种服务( msnyahoo imsmtp.. )等,一定是透过主机某个 port 来实现的,但 msn yahoo 虽然有内定的 port,但其心可议的是,如果这个 port 被挡掉的话,那么 msn yahoo im,会利用 port 80 来替代,而这个 port 80 是什么用呢?就是拿来浏览网页用的,这也可说是这两家业者心态可议,吃定了大家。

怎么说呢?由于 msn yahoo im 资安纪录不佳,假设为了安全问题,在公司或企业内部要将这两项挡掉,是很难做到的,除非也将 http:// ( web 浏览网页功能)关掉,才可达到功效,我想这个不便之处 msn yahoo 绝对理解,但为何要如此做呢?是不是很贝戈戈呢..

似乎意谓者,不是我 msn yahoo im 不让你们这些员工上网啰,是你们的网管做的,这种将自己的不是推到网管人员身上的做法,真的很恶质。

为了资安问题,而不得不 ban yahoo im msn 而导致公司内部人员无法上网冲浪,当公司内部人员责难 mis 人员时,是否有人会想到始作俑者是这两家业者呢?

另外使用 msn yahoo im 造成资安问题,这两家业者是否会负起责任来呢?

所以我很有志气的赌一口气,坚持不用 msn yahoo im

那么用什么 im 软件呢,不是替 gtalk 打广告,gtalk 是使用 jabber XMPP 协议,这是一种安全、开放的协议,而且我在许多朋友都使用 gmail 后,自然地这些朋友也有了 gtalk 的账号,在网络上聊成天来也没什么问题了..

甚者,自己也可利用 jabber 或是其 clone 软件( ejabberd)来架设一个朋友间的聊天园地,也是件很容易的事,再也不用这两家的 im 系统。

Posted by CreMaker | Comments (0) | Trackbacks (0)

在公司内,架设一个 IM 软件供员工们传送讯息,除了可增加彼此间的感情外,也是提高生产力的方式之一。

要架设怎样的一个 IM 系统呢?以下是我的考虑:

1. 使用在 local lan 内,也就是在内部局域网络内
2.
架设及维护要简单
3.
要使用何种软件,个人使用基于 xmpp 协议的 ejabberd server 软件

以下是其 Features:
- (Mostly) XMPP-compliant
- Web based administration
- Load balancing: can run in a cluster of machines
- Fault-tolerance: database can be replicated and stored on multiple nodes (nodes can be added or replaced 'on the fly')
- SSL/TLS support
- Multi-User Chat (MUC/conference)
- IRC transport
- Jabber Users Directory, based on users vCards
- Service Discovery

以上或许有些复杂,但我们只需使用其中的一部份功能即可。另外 ejabberd 也可使用 web 网页的方式来管理,实在是很方便。

XMMP 的登入方式和 MSN .. 等常见的实时传讯类似,是使用 user@host_name 的方式,host_name 可以是一个 FQDN 或是 IP 地址,以下假设你的 FQDN test.com,可能你的公司没有架设 DNS 系统,那么直接使用 ip( 192.168.1.100)也是可行的。

安装 ejabberd

直接使用 Synaptic 或是 apt-get 安装 ejabberd。安装完毕后会产生 ejabberd ejabberdctl 这两个执行档,其中 ejabberd 是用来启动 XMPP 之用,而 ejabberdctl 顾名思议则是用来控制 XMPP 之用,像管理使用者、关闭 ejabberd .. ..

以下是 ejabberdctl 的语法



设定

先说明一下,ejabberd 是使用 erlang 语言开发的,在 /etc/ejabberd/ejabberd.cfg 这个设定档中,% 这个符号是 comment out 的意思,所以如果在这行的最前面有 % 这个符号,表示此行已被批注掉,不起作用。

ejabberd 的设定档是 /etc/ejabberd/ejabberd.cfg 这个,如前所述首先设定主机名称,将

%{hosts, ["localhost"]}.

改为你的主机名称( test.com 为例)

{hosts, ["test.com"]}.

然后重新启动 ejabberd

# /etc/init.d/ejabberd restart

管理 ejabberd

前面说过我们可利用 ejabberdctl 来管理 ejabberd,另外也可用 http://YOUR_HOST_NAME:5280/admin web 接口来管理。所以我们必需先建立一个使用者,且让这个使用者有管理者的权限。

1. 建立使用者(假设该账号为 test,密码为 goawayms)

# ejabberdctl register test test.com goawayms

2. 设定 /etc/ejabberd/ejabberd.cfg

在此档案内加入

{acl, admin, {user, "test"}}.

这表示 test 这个 user 具有 admin(管理者) 的权限,当然如果一个管理者不够,你可多设几个

另外,再检查是否有

{access, configure, [{allow, admin}]}.

这行,这代表者允许(allow) admin 来管理及设定(configure) ejabberd

重新启动 ejabberd

# /etc/init.d/ejabberd restart

然后你可使用浏览器,输入 http://test.com:5280/admin 输入账号及密码后,就可管理你的 ejabberd server 了。

-------

经过以上安装、设定后,ejabberd 架设好了,可以使用 gaim 或是其它支持 jabber XMPP 协议的 CLIENT 软件来登入到 ejabberd server 上使用了。

参考数据:

man ejabberdctl
man ejabberd
http://www.process-one.net/en/projects/ejabberd/

 

抱歉!评论已关闭.