Recentemente recebi a tarefa de providenciar um serviço para o controle do
Windows Live Messenger aqui na empresa onde trabalho. Após a instalação do msn-proxy tive a infelicidade de descobrir que ele não suporta o Windows Live Messenger 2011.
Em busca de uma solução pela internet acabei encontrando o
wlmproxy. Como não achei nenhum material sobre ele aqui no VOL, tomei a liberdade para criar este passo a passo.
A distribuição usada foi o Debian Squeeze.
Pré-requisitos para instalação:
- MySQL
- Apache2
- phpMyAdmin*
* No meu caso preferi adotar o phpMyAdmin como ferramenta para administrar o banco de dados, mas não é obrigatório.
Vamos instalar o apache2:
# aptitude update
# aptitude install apache2
Agora vamos instalar o php5:
# aptitude install libapache2-mod-php5 php5 php5-common php5-curl php5-dev php5-gd php5-idn php-pear php5-imagick php5-imap php5-json php5-mcrypt php5-memcache php5-mhash php5-ming php5-mysql php5-ps php5-pspell php5-recode php5-snmp php5-sqlite php5-tidy php5-xmlrpc php5-xsl
Com o seu editor favorito, no meu caso o vim, vamos editar o arquivo
/etc/apache2/mods-available/dir.conf e deixar como abaixo:
# vim /etc/apache2/mods-available/dir.conf
DirectoryIndex index.html index.htm index.shtml index.cgi index.php index.php3 index.pl index.xhtm
Agora vamos habilitar os módulos SSL, rewrite, suexec e include:
# a2enmod ssl
# a2enmod rewrite
# a2enmod suexec
# a2enmod include
E por fim reiniciamos:
# /etc/init.d/apache2 restart
Vamos instalar os pacotes necessários para o perfeito funcionamento do nosso servidor de banco de dados MySQL:
# aptitude install mysql-server mysql-client libmysqlclient-dev
Finalizando:
# aptitude install phpmyadmin
Pré-requisitos para compilação:
- Boost C++ library
- Libxml2
- Dolphin Connector >= 1.1
- OpenSSL
- Libevent >= 1.4.13
Para não termos problemas no meio das compilações:
# aptitude install build-essential libxml2-dev libevent-dev libcurl4-openssl-dev
Instalando o Boost C++ library:
# wget -c http://sourceforge.net/projects/boost/files/boost/1.47.0/boost_1_47_0.tar.gz
# tar xvzf boost_1_47_0.tar.gz
# cd boost_1_47_0/
# ./bootstrap.sh
# ./b2 install
Instalando o Dolphin Connector:
# wget --no-check-certificate https://github.com/poetinha/dolphin-connector/tarball/master -O - | tar xz
# cd poetinha-dolphin-connector-5f75edb
# ./autogen.sh
Se tiver problemas com o autogen.sh:
# aptitude install dh-autoreconf
# ./configure
# make
# make install
[1] Comentário enviado por
souza20009 em 28/09/2011 - 16:08h:
não conseguir fazer a instalação como esta aqui dando error quando executo make "$(grep '^CXXFLAG' Makefile | sed -e 's/ -fno-rtti -fno-exceptions//')" apresenta o error abaixo.
acl.cc:14:32: error: boost/scoped_ptr.hpp: Arquivo ou diretório não encontrado
acl.cc:15:36: error: dolphinconn/connection.h: Arquivo ou diretório não encontrado
acl.cc:16:35: error: dolphinconn/resultset.h: Arquivo ou diretório não encontrado
acl.cc: In function âbool load_acl(foo_vector&, foo_vector&)â:
acl.cc:36: error: âboostâ has not been declared
acl.cc:36: error: âdolphinconnâ has not been declared
acl.cc:36: error: expected type-specifier before âdolphinconnâ
acl.cc:36: error: expected â)â before âdolphinconnâ
acl.cc:36: error: âdbâ was not declared in this scope
acl.cc:44: error: âboostâ has not been declared
acl.cc:44: error: âdolphinconnâ has not been declared
acl.cc:45: error: âresâ
[2] Comentário enviado por
cesarfrrrk em 28/09/2011 - 16:26h:
Cara, roda um make clean e experimenta compilar a libevent.
Instalando libvent:
# wget
http://monkey.org/~provos/libevent-1.4.13-stable.tar.gz
# tar -vxzf libevent-1.4.13-stable.tar.gz
# cd libevent-1.3-stable
# ./configure
# make
# make install
# cd /usr/lib/
# ln -s /usr/local/lib/libevent-1.4.13
e depois volta a rodar o #make "$(grep '^CXXFLAG' Makefile | sed -e 's/ -fno-rtti -fno-exceptions//')"
[3] Comentário enviado por
facoelho em 29/09/2011 - 09:13h:
Bom Dia .....
Sabe me informar se o WLMProxy possui interface Web para gerenciamento igual o MSN-Proxy?
[4] Comentário enviado por
cesarfrrrk em 29/09/2011 - 09:40h:
Bom dia @facoelho,
por enquanto o gerenciamento do wlmproxy é via banco de dados, pra poder ter um gerenciamento web você pode usar o phpmyadmin.
[5] Comentário enviado por
maickelpc em 24/10/2011 - 10:19h:
muito bom.consegui fazer rodar e aplicar algumas regras
gostaria de saber quais portas (alem da 1863) tenho que redirecionar pra ele para funcionar transparente.
[6] Comentário enviado por
cesarfrrrk em 31/10/2011 - 12:28h:
Boa tarde @maickelpc,
basta redirecionar o trafego da porta 1863 para a porta 11863.
segue a regra;
iptables -t nat -A PREROUTING -p tcp --dport 1863 -j REDIRECT --to-ports 11863
abraço
[7] Comentário enviado por
maickelpc em 03/11/2011 - 17:35h:
cesar, essa configuracao eu fiz na maquina onde esta intalado o wlm.
no modelo que usamos, temos um mikrotik como gateway e um servidor proxy (squid + msnproxy) e redireciono o trafego da 1863 para a maquina, mas o mesmo modelo nao funcionou no wlmproxy
gateway x.254
proxy x.252
ps: colocando o wlm no gateway funcionou perfeitamente.
[8] Comentário enviado por
cesarfrrrk em 04/11/2011 - 08:04h:
Essa regra tem que ser criada no firewall e não obrigatoriamente na máquina que está instalada o wlm.
Se o firewall e o wlm são servidores distintos, voce deve fazer um redirecionamento.
Aplica no firewall:
iptables -t nat -A PREROUTING -i INTERFACE_REDE_LOCAL -p tcp --dport 1863 -j DNAT --to IP_SERVIDOR_WLM:11863
veja se agora funciona
[9] Comentário enviado por
maickelpc em 11/11/2011 - 10:41h:
tentei das duas formas, do gw enviando o trafego da 1863 para a 1863 do proxy, ele conectou no msn, mas nao pelo proxy, e tentando enviar a 1863 para 11863 recusa a conexao instantaneamente.
[10] Comentário enviado por
cesarfrrrk em 11/11/2011 - 10:45h:
Cara, me desculpa mas não estou conseguindo entender oque você quer fazer. O wlm não vai passar por dentro do proxy, ele é um serviço paralelo. Todo o trafego da porta 1183 tem que ser redirecionada para a porta 11863 da maquina onde esta instalado o wlm. A partir daí quem se encarrega de tomar conta do trafego é ele.
[11] Comentário enviado por
corbellini em 29/02/2012 - 22:10h:
Qual o valor que eu preciso colocar nas RULES para que eu consiga gravar todas as conversas?
[12] Comentário enviado por
marcelobachmann em 06/03/2012 - 17:21h:
O link não esta funcionando wget --no-check-certificatehttps://github.com/poetinha/wlmproxy/tarball/master-O - | tar xz
O site esta fora o que aconteceu ?