Usuários do MS Windows dispõem do excelente
Peerguardian para filtrar IPs perigosos, da
RIAA - Recording Industry Association of America, fake-servers e outros. Nós, usuários Linux, dispomos de duas excelentes ferramentas para isso, o
iplist e o
Mobloquer, que é a interface gráfica para o moblock.
Utilizando uma ferramenta como essa se torna desnecessária a utilização da filtragem de IP pelos clientes p2p aMule, Transmission, Deluge, Vuze e outros, pois geralmente cada aplicativo utiliza um tipo específico de listas, por exemplo:
O aMule usa o ipfilter.dat, o Transmission usa um arquivo em formato .bin localizado em .config/transmission/blocklists, não aceita o ipfilter do aMule, mas aceita as blocklists do site bluetack, desde que a adicionemos no diretório citado, feito isso o programa converterá o arquivo em seu formato padrão.
Resumindo, utilizando o Mobloquer, os clientes p2p farão apenas a sua função primária, que é a de baixar/compartilhar arquivos, o que de certa forma deve melhorar seu desempenho, ao mesmo tempo que nos mantemos mais seguros.
Instalando e configurando
Para podermos utilizar o software, devemos adicionar a entrada de seu repositório em nosso arquivo
/etc/apt/sources.list.
Debian:
## Debian Lenny.
#deb http://moblock-deb.sourceforge.net/debian lenny main
#deb-src http://moblock-deb.sourceforge.net/debian lenny main
## Debian Squeeze e SID.
#deb http://moblock-deb.sourceforge.net/debian sid main
#deb-src http://moblock-deb.sourceforge.net/debian sid main
Adicione a seguinte chave GPG:
sudo gpg --keyserver wwwkeys.eu.pgp.net --recv-keys 58712F29 && sudo gpg --export --armor 58712F29 | sudo apt-key add -
Ubuntu:
# Ubuntu 8.04 hardy.
#deb http://moblock-deb.sourceforge.net/debian hardy main
#deb-src http://moblock-deb.sourceforge.net/debian hardy main
## Ubuntu 9.04 jaunty.
#deb http://ppa.launchpad.net/jre-phoenix/ppa/ubuntu jaunty main
#deb-src http://ppa.launchpad.net/jre-phoenix/ppa/ubuntu jaunty main
## Ubuntu 9.10 karmic.
#deb http://ppa.launchpad.net/jre-phoenix/ppa/ubuntu karmic main
#deb-src http://ppa.launchpad.net/jre-phoenix/ppa/ubuntu karmic main
## Ubuntu 10.04 lucid.
#deb http://ppa.launchpad.net/jre-phoenix/ppa/ubuntu lucid main
#deb-src http://ppa.launchpad.net/jre-phoenix/ppa/ubuntu lucid main
Adicione a seguinte chave GPG para o Ubuntu 8.04 hardy:
sudo gpg --keyserver wwwkeys.eu.pgp.net --recv-keys 58712F29 && sudo gpg --export --armor 58712F29 | sudo apt-key add -
Adicione a seguinte chave GPG para o Ubuntu, versões 9.04, 9.10 e 10.04:
sudo gpg --keyserver keyserver.ubuntu.com --recv 9C0042C8 && sudo gpg --export --armor 9C0042C8 | sudo apt-key add -
Notas:
- Todos os repositórios estão comentados, descomente somente o referente à sua versão.
- A princípio todos os repositórios deb-src devem ficar comentados, descomente-os apenas se precisar utilizá-los.
- Usuários do Ubuntu devem habilitar o repositório "Universe".
Após adicionar os repositórios, atualizaremos as listas de pacotes e instalaremos o programa:
sudo apt-get update
$ sudo apt-get install moblock blockcontrol mobloquer
Surgirão as seguintes telas:
Na tela abaixo poderemos deixar como está ou alterá-las. Particularmente prefiro usar as listas: Bluetack_level1, Bluetack_level2, Bluetack_level3, Bluetack_edu, Bluetack_ads, TBG_Bogon e TBG_Hijacked, por achar que no conjunto são menos paranóicas, mas fica a critério de cada um.
Nas imagens a seguir, altere de acordo com sua necessidade, por hora segui o padrão.
Se desejarmos o início automático no boot:
Tela inicial da whitelist:
Adicionando HTTP e HTTPS nas exceções:
Adicione na whitelist a porta UDP_OUT nessa tela (o padrão é em branco):
Adicione na whitelist a porta TCP_IN nessa tela (o padrão é em branco):
Adicione na whitelist a porta UDP_IN nessa tela (o padrão é em branco):
Adicione na whitelist a porta TCP_FORWARD nessa tela (o padrão é em branco):
Adicione na whitelist a porta UDP_FORWARD nessa tela (o padrão é em branco):
Adicionando a rede, DNS e interface loopback na whitelist:
Adicione nessa tela um endereço IP que deseja que fique acessível:
Obs.: Também é possível adicionar um IP editando o arquivo
/etc/blockcontrol/allow.p2p.
Após o término da configuração o programa baixará as listas de IPs.
Nota: para alterar as listas que utilizaremos, poderemos editar o arquivo de configuração diretamente e depois reiniciamos o programa.
sudo nano /etc/blockcontrol/blocklists.list
Conteúdo resumido do arquivo:
# TBG Primary Threats
#http://list.iblocklist.com/?list=ijfqtofzixtwayqovmxn
# TBG General Corporate Ranges
#http://list.iblocklist.com/?list=ecqbsykllnadihkdirsh
# TBG Business ISPs
#http://list.iblocklist.com/?list=jcjfaxgyyshvdbceroxf
# TBG Educational Institutions
#http://list.iblocklist.com/?list=lljggjrpmefcwqknpalp
# TBG Search Engines
#http://list.iblocklist.com/?list=pfefqteoxlfzopecdtyw
# TBG Hijacked
http://list.iblocklist.com/?list=tbnuqfclfkemqivekikv
# TBG Bogon
http://list.iblocklist.com/?list=ewqglwibdgjttwttrinl
# Bluetack level1 (P2P)
http://list.iblocklist.com/?list=bt_level1
# Bluetack level2
http://list.iblocklist.com/?list=bt_level2
# Bluetack level3
http://list.iblocklist.com/?list=bt_level3
# Bluetack edu
http://list.iblocklist.com/?list=bt_edu
# Bluetack ads
http://list.iblocklist.com/?list=bt_ads
# Bluetack bogon
#http://list.iblocklist.com/?list=bt_bogon
# Bluetack spyware
#http://list.iblocklist.com/?list=bt_spyware
# Bluetack spider
#http://list.iblocklist.com/?list=bt_spider
# Bluetack Microsoft
#http://list.iblocklist.com/?list=bt_microsoft
# Bluetack proxy
#http://list.iblocklist.com/?list=bt_proxy
# Bluetack hijacked
#http://list.iblocklist.com/?list=bt_hijacked
# Bluetack badpeers (previously known as templist)
#http://list.iblocklist.com/?list=bt_templist
# Bluetack rangetest
#http://list.iblocklist.com/?list=bt_rangetest
# Bluetack dshield
#http://list.iblocklist.com/?list=bt_dshield
#locallist /etc/blockcontrol/custom-blocklist.p2p
Observem que acima já modifiquei as listas, deixando habilitadas apenas as que comentei acima (Bluetack_level1, Bluetack_level2, Bluetack_level3, Bluetack_edu, Bluetack_ads, TBG_Bogon e TBG_Hijacked).
Podemos reiniciar o programa através da interface gráfica, na aba Manage, botão "restart" ou por linha de comando:
sudo /etc/init.d/blockcontrol restart
Podemos reconfigurar o programa da seguinte maneira:
sudo dpkg-reconfigure blockcontrol
Podemos verificar o estado das regras do iptables assim:
sudo iptables -L -nv