wiki:jabberit/instalandoEjabberd

Version 1 (modified by alexandrecorreia, 14 years ago) (diff)

--

Instalando

Essa instalação foi testada no Debian Etch e Lenny

1 - Baixar o binário do Ejabberd no site  http://www.process-one.net/en/ejabberd/downloads
2 - Descompactar com

# gzip -dv ejabberd-X.X.X-linux-x86-installer.bin.gz 

3 - Dar permissão de execução ao binário baixado:

# chmod +x ejabberd-X.X.X_X-linux-x86-installer.bin

4 - Executando o instalador:

# ./ejabberd-X.X.X_X-linux-x86-installer.bin

5 - Configure o diretório de instalação para /opt/ejabberd e coloque a senha para o usuário admin. 6 - # cp /opt/ejabberd/bin/ejabberd.init /etc/inid.d/ejabberd 7 - # adduser --home /opt/ejabberd --shel /bin/sh -c "System user ejabberd" --system --group ejabberd 8 - # chown -R ejabberd:ejabberd /opt/ejabberd 9 - # chmod 755 -R /opt/ejabberd

Gerenciando o serviço

Para automatizar o script de inicialização do Ejabberd rode o comando abaixo:

# update-rc.d ejabberd start 15 2 3 4 5 . stop 85 0 1 2 3 4 5 6 .

Iniciando o serviço: # /etc/inid.d/ejabberd start

Parando o serviço: # /etc/inid.d/ejabberd stop

Vendo todas as opções disponíveis: # /etc/inid.d/ejabberd *

Configurando

Nessa seção iremos abordar as configurações do Ejabberd se autenticando no LDAP e usando o banco de dados Mysql. Iremos abordar também como migrar do Jabberd2 usando o banco de dados Berkeley DB para o Ejabberd usando o banco de dados Mysql.

Pre-requisito:

Ter os pacotes do mysql-server, php5-mysql, php5-mcrypt

Notas:

Nota 1 - O diretório com os arquivos de configuração do ejabberd é o /opt/ejabberd/conf Nota 2 - O arquivo principal de configuração do Ejabberd é o /opt/ejabberd/conf/ejabberd.cfg que apenas referenciaremos no restante do documento de ejabberd.cfg Nota 3 - O arquivo de configuração odbc do mysql é o /opt/ejabberd/conf/odbc.ini que apenas referenciaremos no restante do documento de odbc.ini Nota 4 - %% é comentário no arquivo ejabberd.cfg

Configurando o HOST

O nome do host deve ser resolvido por seu servidor e por suas estações clientes.

Abra ejabberd.cfg e vá na seção "SERVED HOSTNAMES"

Altere o {hosts, example.org?}.

Nota: Esse nome de host será usando dentro das configurações do módulo no Expresso Livre.

Configurando as portas que o seu ejabberd irá escutar

Vá na seção "LISTENING PORTS" do ejabberd.cfg

Por padrão o seu Ejabberd já escuta a porta 5222 que á porta que se autentica em texto plano.

Para clientes que se autenticam com SSL no formato antigo descomentar as linhas, referentes a porta 5223.

Para habilitar suporte ao novo Expresso Messenger que é em javascript vá na configuração da porta 5280 e deixe conforme abaixo:

{5280, ejabberd_http, [

{request_handlers, [{http-bind?,mod_http_bind}]},http_poll

]}

Configurando a autenticação no LDAP

Nota: Comentar significa colocar na frente da instrução %%

Vá na seção "AUTHENTICATION" do ejabberd.cfg

Comente a linha {auth_method, internal}.

Vá para seção %% Authentication using LDAP

Descomente: %%{auth_method, ldap}.

Descomente e aponte para o seu servidor LDAP: %% {ldap_servers,SEU_SERVIDOR_LDAP?}.

Descomente e aponte para o seu contexto LDAP: %% {ldap_base, "dc=xx,dc=yy"}.

Descomente e aponte para o seu administrador do LDAP: %% {ldap_rootdn, "cn=admin,dc=xx,dc=yy"}.

Descomente e coloque a senha de seu administrador do LDAP: %% {ldap_passwd, "SENHA"}.

Configurando o banco de dados mysql

Descomente a linha abaixo e ajuste os valores necessários de seu ejabberd.cfg.

%% {odbc server, {mysql, "server", 1234, "database", "username", "password"}}.

Recomendado:

{odbc server, {mysql, "localhost", 3306, "ejabberd", "root", "SENHA"}}.

Notas: "server" = Ip ou nome de seu servidor mysql 1234 = Porta do servidor mysql "database" = Nome do banco de dados "username" = Usuário com permissão de acessar o banco de dados "password" = Senha do usuário com permissão de acessar o banco de dados

Agora abra o arquivo odbc.ini e ajustes os parâmetros necessários segue exemplo abaixo:

[ejabberd] Driver = MySQL DATABASE = ejabberd PWD = SENHA SERVER = localhost SOCKET = /var/run/mysqld/mysqld.sock UID = root

Notas: DATABASE = Colocar o nome do bando de dados PWD = Colocar a senha de acesso ao banco de dados SOCKET = Verifique no my.cnf a opção “socket” UID = Colocar o usuário que tem acesso ao banco.

Configurando os módulos

Vá na seção "MODULES" do ejabberd.cfg e verifique se existem os módulos e configurações abaixo:

{modules,

[

{mod_adhoc, []}, {mod_announce, [{access, announce}]}, {mod_caps, []}, {mod_configure,[]}, {mod_disco, []}, {mod_http_bind,[{max_inactivity,10}]}, {mod_irc, []}, {mod_last_odbc, []}, {mod_muc, [

{access, muc}, {access_create, muc_create}, {access_persistent, muc_create}, {access_admin, muc_admin}

]},

{mod_offline_odbc, []}, {mod_privacy_odbc, []}, {mod_private_odbc, []}, {mod_proxy65,[]}, {mod_pubsub, [ % requires mod_caps

{access_createnode, pubsub_createnode}, {ignore_pep_from_offline, true}, {last_item_cache, false}, {plugins, ["flat", "hometree", "pep"]}

]},

{mod_roster_odbc, []}, {mod_shared_roster,[]}, {mod_time, []}, {mod_vcard, []}, {mod_version, []}

]}.

Criando o banco Mysql

Faça download do export_jabber.zip e descompacte com o comando abaixo:

# unzip export_jabber.zip

Entre no diretório export_jabber e execute o comando abaixo para criar o banco:

# mysql -u root -p < ejabberd_mysql.sql

Dando permissão no banco de dado.

1 - # mysql -u root -p 2 - mysql> use mysql; 4 - mysql> grant all privileges on ejabberd.* to 'root'@'%' identified by 'SENHA' with grant option; Nota: SENHA = Colocar a senha do usuário root de seu mysql 5 - mysql> flush privileges;

Attachments