Dependências, download e instalação
Dependências:
* Versão usada nesse artigo: 0.9
* Distribuição Slackware Linux 13.0
* MySQL 4 ou superior (não vou abranger a instalação do mesmo)
* OpenSSL versão 0.6 ou superior (não vou abranger a instalação do mesmo)
Download:
# wget http://www.imspector.org/downloads/imspector-0.9.tar.gz
Descompacte-o:
# tar -zxvf imspector-0.9.tar.gz
Instalação:
Entre na pasta:
# cd imspector-0.9
Compile e instale:
# make
# make install
Instale o certificado SSL:
# make install-ca-cert
Instalação da biblioteca de conexão do MySQL:
# make mysqlloggingplugin.so
# cp mysqlloggingplugin.so /usr/lib/imspector
Pronto, o Imspector e seu certificado estão instalados, os mesmos ficaram nas seguintes pastas:
* /usr/sbin/imspector - binários;
* /usr/lib/libimspector.so - biblioteca compartilhada;
* /usr/lib/imspector/ - plugins;
* /usr/lib/imspector/*loggingplugin.so - plugins de log;
* /usr/etc/imspector/ - arquivos de configuração e certificados.
Mais informações no site oficial do Imspector.
Configuração e execução
vamos criar o banco de dados:
Obs.: Para prosseguir nesse tópico o MySQL tem que estar instalado e rodando perfeitamente.
Entre no prompt do MySQL:
# mysql -p (em seguida digite a senha do root do MySQL)
Criação do banco:
mysql> create database imspector; (atente para o ; no final do comando dentro do prompt do mysql)
Criação da tabela:
mysql> CREATE TABLE `messages` (
`id` int(11) NOT NULL auto_increment,
`timestamp` int(11) NOT NULL default '0',
`clientaddress` text NOT NULL,
`protocolname` text NOT NULL,
`outgoing` int(11) NOT NULL default '0',
`type` int(11) NOT NULL default '0',
`localid` text NOT NULL,
`remoteid` text NOT NULL,
`filtered` int(11) NOT NULL default '0',
`categories` text NOT NULL,
`eventdata` blob NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
Pronto, criado o banco de dados, vamos ao arquivo de configuração, sendo o mesmo situado no seguinte caminho: /usr/etc/imspector/imspector.conf
Opções gerais:
# Portas de trabalho
port=16667
http_port=18080
# Rede de trabalho
listeneaddr=0.0.0.0
# Diretório de plugins
plugin_dir=/usr/lib/imspector
# Protocolos habilitados
icq_protocol=on
irc_protocol=on
msn_protocol=on
yahoo_protocol=on
gg_protocol=on
jabber_protocol=on
https_protocol=on
# Além de gravar em banco ele também guarda os registros em log
log_typing_events=on
file_logging_dir=/var/log/imspector
# Conexão com o banco, descomentar e completar com seus dados
# MySQL logging plugin stuff
mysql_server=localhost
mysql_database=imspector
mysql_username=SEU USUÁRIO QUE CONECTA AO BANCO
mysql_password=SENHA DO USUÁRIO
A configuração básica está pronta, agora falta colocar umas regras de redirecionamento para o Imspector começar a captura.
Adicione as seguintes regras no seu script do iptables:
# Regras para quem usa proxy transparente
# MSN:
iptables -t nat -A PREROUTING -p tcp --destination-port 1863 -j REDIRECT --to-ports 16667
# Jabber:
iptables -t nat -A PREROUTING -p tcp --destination-port 5222 -j REDIRECT --to-ports 16667
# Jabber over SSL:
iptables -t nat -A PREROUTING -p tcp --destination-port 5223 -j REDIRECT --to-ports 16667
# ICQ/AIM:
iptables -t nat -A PREROUTING -p tcp --destination-port 5190 -j REDIRECT --to-ports 16667
# Yahoo:
iptables -t nat -A PREROUTING -p tcp --destination-port 5050 -j REDIRECT --to-ports 16667
# IRC:
iptables -t nat -A PREROUTING -p tcp --destination-port 6667 -j REDIRECT --to-ports 16667
# Gadu-Gadu:
iptables -t nat -A PREROUTING -p tcp --destination-port 8074 -j REDIRECT --to-ports 16667
# Regras para quem redireciona todo o trafico para o Squid, não usa proxy transparente:
# MSN:
iptables -t nat -A OUTPUT -p tcp --destination-port 1863 -m owner --uid-owner 100 -j REDIRECT --to-ports 16667
# Jabber:
iptables -t nat -A OUTPUT -p tcp --destination-port 5222 -m owner --uid-owner 100 -j REDIRECT --to-ports 16667
# Jabber over SSL:
iptables -t nat -A OUTPUT -p tcp --destination-port 5223 -m owner --uid-owner 100 -j REDIRECT --to-ports 16667
# ICQ/AIM:
iptables -t nat -A OUTPUT -p tcp --destination-port 5190 -m owner --uid-owner 100 -j REDIRECT --to-ports 16667
# Yahoo:
iptables -t nat -A OUTPUT -p tcp --destination-port 5050 -m owner --uid-owner 100 -j REDIRECT --to-ports 16667
# IRC:
iptables -t nat -A OUTPUT -p tcp --destination-port 6667 -m owner --uid-owner 100 -j REDIRECT --to-ports 16667
# Gadu-Gadu:
iptables -t nat -A OUTPUT -p tcp --destination-port 8074 -m owner --uid-owner 100 -j REDIRECT --to-ports 16667
Execução:
A sua execução é simples, para ter um debug do que está acontecendo:
# imspector -D
Modo normal:
# imspector
Agora é só criar um script de inicialização no /etc/rc.d e colocar no rc.M e pronto, essa parte está concluída.
O Imspector 0.7 vem com um script CGI em Perl para visualizar as conversas, porém esse script pega as conversas registradas em log, não do banco. O que passei no script é o básico para seu funcionamento, visite a pagina do desenvolvedor e explore seus recursos.
Bibliografia: www.imspector.org www.blogdobalani.blogspot.com
SEJA LIVRE! VIVA O LINUX!
sexta-feira, 7 de maio de 2010
Assinar:
Postar comentários (Atom)
Nenhum comentário:
Postar um comentário