quarta-feira, 30 de março de 2011

MONITORANDO O TRÁFEGO DO MSN NA REDE COM MSN-PROXY

Apresento aqui a instalação e configuração do msn-proxy um software desenvolvido por uma equipe brasileira que possibilita o controle de todo o tráfego do MSN em uma rede. Possui opções como bloqueio por contato, monitoramento de mensagens, bloqueio de usuários entre outras funcionalidades.

Para esse tutorial foi utilizado o Ubuntu 10.10 e o Msn-proxy 0.7, no entanto com algumas pequenas modificações ele pode ser aplicado em qualquer distribuição derivada do Debian. Uma observação a fazer é que nos testes é que com o Mns-proxy 0.7 (ultima versão até a data desse tutorial) o Windows Live Messenger 2011 não conseguiu conectar-se na rede. No entanto funcionou perfeitamente com os clientes Windows Live Messenger 2009, Emesene e Amsn 0.98.

Preparando o ambiente

Alguns servidores e bibliotecas são pré requisitos para a configuração do msn-proxy. Partindo da idéia que servidores como o Apache e o Mysql ainda não estão instalados, precisaremos fazer a instalação dos pacotes necessários executando os comandos abaixo:

$ sudo su

# apt-get install php5 libapache2-mod-php5 php5-gd php5-imagick php5-mysql

# apt-get install apache2

# apt-get install mysql-server phpmyadmin

Obs: Nesse tutorial utilizaremos a senha do servidor Mysql como sendo “root”, mas nada impede que você utilize uma outra senha.

Dica: Quando questionado sobre qual servidor Web utilizar para o Phpmyadmin selecione o apache2.

Quando questionado sobre a criação da base da dados para o phpmyadmin responda “Sim” e na caixa de configuração do phpmyadmin insira a mesma senha configurada no mysql (que em nosso exemplo é “root”), utilizar a mesma senha ajudar a evitar esquecimentos posteriores.


# apt-get install make gcc g++ libevent-dev
# apt
-get install -f libmysqlclient15-dev


Edite o arquivo /etc/php5/apache2/php.ini e altere seu conteúdo para:

safe_mode = On
safe_mode_gid = On
register_globals = On
display_errors = On

Baixando e instalando o msn-proxy:

Faça o download do msn-proxy em:

http://sourceforge.net/projects/msn-proxy/

Descompacte o arquivo baixado:

$ tar zxvf msn-proxy-0.7
$ cd msn-proxy

Comente as linhas do FreeBSD e altere as do Linux no arquivo Makefile do msn-proxy para:

MYSQLINC=/usr/lib/mysql
MYSQLLIB=/var/lib/mysql/mysql


Execute a instalação:

$ make
$ sudo su
# make install


Configurando o ambiente do mysql para o msn-proxy:


Com o msn-proxy já instalado algumas alterações de arquivos, assim como a criação da base do msn-proxy no mysql será necessária.

Prepare a acesso ao msn-proxy:

# mkdir /var/www/msn-proxy
# cp -R php /var/www/msn-proxy/


Altere as linhas do arquivo
/var/www/msn-proxy/php/mysql.inc.php para:

$host = "localhost";
$user = "root";
$pass = "root";
$db = "msn-proxy";
$port = 3306;

Altere o arquivo /usr/local/etc/msn-proxy/mysql/conf para:

# "host or socket|port (zero for socket)|user|pass|database name"
#/tmp/mysql.sock|0|msn-proxy|secret|msn-proxy
localhost|3306|root|root|msn-proxy


Crie um banco com o nome de msn-proxy no mysql:

# mysql -p

(e digite a senha do administrador do banco de dados: "root");

mysql> CREATE DATABASE `msn-proxy`;
mysql> quit


Execute o seguinte comando afim de fazer um pequeno teste:

/usr/local/bin/msn-proxy

Se tudo estiver certo o comando anterior irá reportar a seguinte mensagem:
fail to read mysql config (check defaults table)


Mude as permissões do arquivo /usr/local/etc/msn-proxy/mysql/conf

# chmod 600 /usr/local/etc/msn-proxy/mysql/conf


Dica: Você pode editar o arquivo /usr/local/etc/msn-proxy/msn-proxy.conf que além de outras opções permite especificar o máximo de usuários que serão controlados na rede:

-> max_clients=10 #Essa linha indica a quantidade de usuários monitorados.


Precisamos agora cadastrar no banco o ip da placa que está distribuindo a internet com para rede local. Considerando que no exemplo esse ip seja 192.168.1.1, executamos seguintes comandos:

# mysql -p

(e digite a senha do administrador do banco de dados: "root");

mysql> use msn-proxy;
mysql> INSERT INTO `defaults` ( `internal_host` , `connect` , `save_msg` , `save_contacts` , `commands` , `warnemail` , `warndn` , `warnmsg` , `msgfont` , `msgcolor` ) VALUES ('192.168.0.1', 'YES', 'YES', 'YES', '0', 'itnp@msn.com', 'Irineu Teza Nunes', 'Para sua segurança esta mensagem esta sendo monitorada.', 'Arial', 'black');


Você pode verificar se os dados foram gravados com o seguinte comando:

mysql> SELECT * FROM `defaults`;


Se a resposta do comando for como está (tudo ok):

+---------------+---------+----------+---------------+----------+--------------+--------------------------+----------------------------------------------------------+---------+----------+

| internal_host | connect | save_msg | save_contacts | commands | warnemail | warndn | warnmsg | msgfont | msgcolor |

+---------------+---------+----------+---------------+----------+--------------+--------------------------+----------------------------------------------------------+---------+----------+

| 192.168.1.1 | YES | YES | YES | 0 | itnp@msn.com | Irineu Teza Nunes | Para sua segurança esta mensagem esta sendo monitorada. | Arial | black |

+---------------+---------+----------+---------------+----------+--------------+--------------------------+----------------------------------------------------------+---------+----------+

1 row in set (0.00 sec)


Saia do banco de dados:

mysql> quit


Direcionando tráfeco do msn

Utilizando o iptables direcione todo o tráfico da porta 1863 para o proxy-msn inserido a seguinte linha em seu firewall:

iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 1863 -j REDIRECT --to-port 1863 #Onde eth0 é sua interface de rede local.

Para iniciar o proxy execute o seguinte comando:

# /usr/local/bin/msn-proxy &

Ou:

# /usr/local/bin/msn-proxy -d &

Dica: Com a opção -d irá ser possível visualizar os logs de saída.

Você também pode criar um pequeno script e configurá-lo para iniciar automaticamente o MSN-proxy criando o seguinte arquivo /etc/init.d/msn-proxy.sh e adicionando o seguinte conteúdo:


#!/bin/bash

/usr/local/bin/msn-proxy &

echo "MSN-Proxy Inicializado"

De as permissões e configure-o para iniciar automaticamente:

# cd /etc/init.d/
# chmod 755 msn-proxy.sh
# update-rc.d msn-proxy.sh defaults


Após iniciar o msn-proxy caso você pode acessar sua interface digitando o seguinte endereço em seu navegador:

http://localhost/msn-proxy/php/index.php

A interface é bastante intuitiva e organizada, apresentando diversas opções e todas as configurações necessárias para o monitoramento.


Finalizando esse tutorial deixo aqui meus parabéns a todos os desenvolvedores do MSN-proxy. Realmente foi feito um trabalho primoroso e bem executado. Além disso o desenvolvimento continua, onde novos recursos são adicionados e outros melhorados.


Irineu Teza Nunes.

REFERÊNCIA:

Rudimar. MSN-Proxy no Debian Etch. E-mail: rudimar@remontti.com.br. Disponível em: http://www.vivaolinux.com.br/artigo/MSNProxy-no-Debian-Etch-1

Nenhum comentário:

Postar um comentário