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: 20.017 ]

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

Encriptando suas senhas de forma (mais) segura no Pidgin

Técnicas forenses para identificação da invasão e do invasor em sistemas Unix/Linux através do SSH (parte 2)

Testando configurações e segurança do Apache com Nikto

Filtragem de vírus com pop3 transparente: pop3vscan

Elaborando uma política de segurança para a empresa

  
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