== 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 [[BR]] '''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;