
		andrebatista
		
		(usa Debian)
		
		Enviado em 11/07/2012 - 16:29h 
		Bem, vou deixar bem claro, sou iniciante em Linux, mas cuido de uma empresa que possui um servidor Win2003 Server(Dados) e um Debian(internet), e por acaso descobri um usuario utilizando o Ultra Surf 12, procurando muito descobri que é muito dificil bloquear esse programa que burla toda segurança da internet, mas como consegui bloquear, resolvi pelo fato de não haver muita documentação sobre isso, postar aqui a forma que utilizei para bloquea-lo segue abaixo:
Começando
Vamos lá, esse pequeno tutorial é para tratar um problema especifico, sendo assim eu suponho que você já sabe usar o iptables, afinal já está aqui buscando uma forma de fazer um bloqueio mais avançado, rs
Acredito que essa solução possa ser utilizada por todos, para firewall simples até o mais complexo.
Eu estou usando Debian 5.0.3, iptables 1.4.2 e fail2ban 0.8.3.
iptables
Essa parte é bem simples, no seu script de firewall adicione a seguinte linha.
iptables -A FORWARD -d 65.49.14.0/24 -j LOG --log-prefix "=UltraSurf= " 
A rede 65.49.14.0/24 é a primeira a ser contactada pelo UltraSurf quando ele é aberto, a regra acima apenas gera um LOG, não existe bloqueio do acesso, em um primeiro momento o usuário vai até pensar que está funcionando.
ATENÇÃO
Coloque essa regra antes da regra com o modulo state (-m state –state ESTABLISHED,RELATED).
Se colocar depois os pacotes das conexões já estabelecidas não irão para o LOG e pode gerar falhas no bloqueio.
fail2ban
O fail2ban é uma ferramenta muito boa para a segurança de servidores, em linhas gerais ela faz o seguinte.
Lê algum arquivo de log, compara com uma expressão regular e em caso positivo ele executa algum comando no sistema.
Por padrão ele monitora o log do SSH e em caso de falhas consecutivas no acesso ele cria uma regra no iptables para bloquear o possível invasor.
Instalando
Como eu estou utilizando o Debian e vou instalar pelo apt-get.
apt-get install fail2ban
Reading package lists... Done Building dependency tree Reading state information... Done Suggested packages:   python-gamin The following NEW packages will be installed:   fail2ban 0 upgraded, 1 newly installed, 0 to remove and 100 not upgraded. Need to get 86.2kB of archives. After this operation, 631kB of additional disk space will be used. Get:1 
http://ftp.br.debian.org stable/main fail2ban 0.8.3-2sid1 [86.2kB] Fetched 86.2kB in 0s (419kB/s) Selecting previously deselected package fail2ban. (Reading database ... 38547 files and directories currently installed.) Unpacking fail2ban (from .../fail2ban_0.8.3-2sid1_all.deb) ... Processing triggers for man-db ... Setting up fail2ban (0.8.3-2sid1) ... 
Depois de instalado vamos acessar o diretório de configuração
# cd /etc/fail2ban/ 
Aqui vamos criar um arquivo chamado jail.local
vi /etc/fail2ban/jail.local 
Vamos adicionar o conteúdo abaixo ao arquivo jail.local.
[ultrasurf]
enabled   = true
filter    = ultrasurf
port      = all
banaction = iptables-ultrasurf
logpath   = /var/log/messages 
maxretry  = 6 
# Tempo em segundos que o IP fica bloqueado, aqui 15 minutos 
bantime   = 900 
Vamos criar o arquivo com a expressão regular que irá filtar o log do iptables.
vi /etc/fail2ban/filter.d/ultrasurf.local 
Aqui vamos adicionar uma expressão regular simples ao arquivo ultrasurf.local.
[Definition]
failregex = (.*)=UltraSurf=(.*) SRC=<HOST> 
ignoreregex =
 
Apesar de simples, funciona  
Agora o arquivo que irá executar o iptables e criar as regras necessárias para o bloqueio e desbloqueio.
vi /etc/fail2ban/action.d/iptables-ultrasurf.local 
Aqui é onde a magica acontece, adicione o conteúdo abaixo ao arquivo iptables-ultrasurf.local.
[Definition]
actionstart = iptables -N fail2ban-<name>               
              iptables -A fail2ban-<name> -j RETURN                
              iptables -I INPUT -j fail2ban-<name>    
              iptables -I FORWARD -j fail2ban-<name>   
actionstop = iptables -D FORWARD -j fail2ban-<name>
             iptables -D INPUT -j fail2ban-<name>
             iptables -F fail2ban-<name>
             iptables -X fail2ban-<name>
actioncheck = iptables -n -L FORWARD | grep -q fail2ban-<name>
              iptables -n -L INPUT | grep -q fail2ban-<name>   
actionban = iptables -I fail2ban-<name> 1 -s <ip> -j REJECT   
actionunban = iptables -D fail2ban-<name> -s <ip> -j REJECT
[Init] name = ultrasurf
 
Agora basta reiniciar o Daemon
/etc/init.d/fail2ban restart 
Foi dessa forma que consegui bloquear o Ultra Surf 12.01
espero ter ajudado de alguma forma