wlmproxy - um proxy superior

Nesse artigo descrevo o passo a passo que utilizei para a instalação do wlmproxy, um proxy para MSN, no Debian Squeeze.

[ Hits: 19.966 ]

Por: César Thomé Rodrigues em 28/09/2011 | Blog: http://guestok.blogspot.com


Introdução



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


    Próxima página

Páginas do artigo
   1. Introdução
   2. Instalando o wlmproxy
Outros artigos deste autor
Nenhum artigo encontrado.
Leitura recomendada

Proxy reverso com ModSecurity no Debian Etch

Configuração "automágica" de servidor Linux PDC Samba

Nmap do início ao fim (parte 1)

SSH Blindado - Protegendo o seu sistema de ataques SSH

Auditando senhas com John The Ripper

  
Comentários
[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 ?


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts