Você está na página 1de 23

Como Fazer para Bloquear o UltraSurf, Soluo D...

http://www.dotsharp.com.br/linux/como-fazer-para...

A Empresa

Servios

Artigos

Contato

14/01/2012
Rodrigo Luis Silva
40 Comments
Linux, Segurana
como fazer, debian,
fail2ban, Firewall,
iptables, Linux,
Segurana, Shell

Como Fazer para Bloquear o UltraSurf,


Soluo Definitiva [iptables + fail2ban]
Essa semana fazendo a reviso do firewall de um cliente eu consegui bloquear o
acesso as redes BitTorrent e ao terrvel UltraSurf.
Vou descrever como fiz para bloquear o UltraSurf.

O problema
Em um primeiro momento eu acreditei que seria fcil bloquear o UltraSurf, porm
o uso de proxy transparente obriga que a porta 443 (HTTPS) fique liberada, o
BitTorrent foi bloqueado sem dificuldades.
Com o uso do tcpdump eu identifique que todo o acesso do UltraSurf sai pela
porta 443, logo a soluo mais obvia seria bloquea-la, porm no possvel.
Bloquear o IP ou range de IP do servidor de destino seria outra opo.
Quando fiz o bloqueio pelo range de IP, descobri que o UltraSurf tenta uma
centena de IPs diferentes at conseguir o acesso que ele precisa, e certamente
devem existir novos IPs a cada nova verso.
Pesquisei pelo Google e no encontrei nenhuma forma eficiente de bloquear o
UltraSurf, foi ento que tive pensei o seguinte.
Criar uma regra no iptables e fazer log dos acesso ao IP do UltraSurf, depois criar
um daemon para ler esse log e fazer um bloqueio em tempo real.
Bem, chega de bla bla e vamos por a mo na massa.

Comeando
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 avanado, rs
Acredito que essa soluo possa ser utilizada por todos, para firewall simples at
o mais complexo.
1 de 23Eu estou usando Debian 5.0.3, iptables 1.4.2 e fail2ban 0.8.3.

Qualquer dvida, problema ou sugesto podem deixar um comentrio.

20-03-2016 18:31

No final
voc
encontrao os
arquivos Soluo
de configurao
para http://www.dotsharp.com.br/linux/como-fazer-para...
download.
Como Fazer
para
Bloquear
UltraSurf,
D...

iptables
Essa parte bem simples, no seu script de firewall adicione a seguinte linha.
1

?
iptables -A FORWARD -d 65.49.14.0/24 -j LOG --log-prefix
"=UltraSurf= "

A rede 65.49.14.0/24 (http://whois.arin.net/rest/net/NET-65-49-14-0-1/pft) a


primeira a ser contactada pelo UltraSurf quando ele aberto, a regra acima
apenas gera um LOG, no existe bloqueio do acesso, em um primeiro momento o
usurio vai at pensar que est funcionando.
ATENO
Coloque essa regra antes da regra com o modulo state (-m state state
ESTABLISHED,RELATED).
Se colocar depois os pacotes das conexes j estabelecidas no iro para o LOG
e pode gerar falhas no bloqueio.

fail2ban
O fail2ban (http://www.fail2ban.org/) uma ferramenta muito boa para a
segurana de servidores, em linhas gerais ela faz o seguinte.
L algum arquivo de log, compara com uma expresso regular e em caso positivo
ele executa algum comando no sistema.
Por padro ele monitora o log do SSH e em caso de falhas consecutivas no
acesso ele cria uma regra no iptables para bloquear o possvel invasor.

Instalando
Como eu estou utilizando o Debian e vou instalar pelo apt-get.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18

?
# 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 diretrio de configurao


1

# cd /etc/fail2ban/

Aqui vamos criar um arquivo chamado jail.local


2 de 23

vi /etc/fail2ban/jail.local

Vamos adicionar o contedo abaixo ao arquivo jail.local.

20-03-2016 18:31

1 para
[ultrasurf]
Como Fazer
Bloquear o UltraSurf, Soluo D...
2
3
4
5
6
7
8
9

?
http://www.dotsharp.com.br/linux/como-fazer-para...
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 expresso regular que ir filtar o log do iptables.
1

vi /etc/fail2ban/filter.d/ultrasurf.local

Aqui vamos adicionar uma expresso regular simples ao arquivo ultrasurf.local.


1
2
3

[Definition]
failregex = (.*)=UltraSurf=(.*) SRC=<HOST>
ignoreregex =

Apesar de simples, funciona


Agora o arquivo que ir executar o iptables e criar as regras necessrias para o
bloqueio e desbloqueio.
1

vi /etc/fail2ban/action.d/iptables-ultrasurf.local

Aqui onde a magica acontece, adicione o contedo abaixo ao arquivo iptablesultrasurf.local.


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21

[Definition]
actionstart = iptables
iptables
iptables
iptables
actionstop = iptables
iptables
iptables
iptables

-N
-A
-I
-I
-D
-D
-F
-X

fail2ban-<name>
fail2ban-<name> -j RETURN
INPUT -j fail2ban-<name>
FORWARD -j fail2ban-<name>
FORWARD -j fail2ban-<name>
INPUT -j fail2ban-<name>
fail2ban-<name>
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


1

/etc/init.d/fail2ban restart

Pronto, agora s olhar o log do fail2ban e esperar pelo primeiro bloqueio.

3 de 23

20-03-2016 18:31

1 para
# tail
-f ofail2ban.log
Como Fazer
Bloquear
UltraSurf, Soluo D...
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23

2012-01-13
2012-01-13
2012-01-13
2012-01-13
2012-01-13
2012-01-13
2012-01-13
2012-01-13
2012-01-13
2012-01-13
2012-01-13
2012-01-13
2012-01-13
2012-01-13
2012-01-13
2012-01-13
2012-01-13
2012-01-13
2012-01-13
2012-01-13
2012-01-13
2012-01-13

19:11:36,890
19:11:36,891
19:11:36,891
19:11:36,901
19:11:36,902
19:11:36,903
19:11:36,903
19:11:36,912
19:11:36,912
19:11:36,913
19:11:36,914
19:11:36,915
19:11:36,915
19:11:36,985
19:11:36,997
19:11:52,029
19:13:36,057
19:26:52,081
19:28:36,109
19:33:50,137
19:48:50,165
19:53:44,193

?
http://www.dotsharp.com.br/linux/como-fazer-para...
fail2ban.server : INFO
Changed logging target
fail2ban.jail
: INFO
Creating new jail 'ult
fail2ban.jail
: INFO
Jail 'ultrasurf' uses
fail2ban.filter : INFO
Added logfile = /var/l
fail2ban.filter : INFO
Set maxRetry = 6
fail2ban.filter : INFO
Set findtime = 600
fail2ban.actions: INFO
Set banTime = 900
fail2ban.jail
: INFO
Creating new jail 'ssh
fail2ban.jail
: INFO
Jail 'ssh' uses poller
fail2ban.filter : INFO
Added logfile = /var/l
fail2ban.filter : INFO
Set maxRetry = 6
fail2ban.filter : INFO
Set findtime = 600
fail2ban.actions: INFO
Set banTime = 600
fail2ban.jail
: INFO
Jail 'ultrasurf' start
fail2ban.jail
: INFO
Jail 'ssh' started
fail2ban.actions: WARNING [ultrasurf] Ban 10.23
fail2ban.actions: WARNING [ultrasurf] Ban 10.23
fail2ban.actions: WARNING [ultrasurf] Unban 10.
fail2ban.actions: WARNING [ultrasurf] Unban 10.
fail2ban.actions: WARNING [ultrasurf] Ban 10.23
fail2ban.actions: WARNING [ultrasurf] Unban 10.
fail2ban.actions: WARNING [ultrasurf] Ban 10.23

Enviando email de aviso


possvel enviar um email de alerta a cada bloqueio e desbloqueio que o fail2ban
faz.
Para ativar essa funo voc tem primeiramente que testar o envio de email na
maquina, para fazer isso vamos usar o programa mail.
1
2
3
4
5

# mail seu-email@seu-dominio.com.br
Subject: Teste
Teste de envio de mensagem
.
Cc:

Ateno ao . no final da mensagem, ele finaliza o email.


O Debian por padro utiliza o Exim, o log fica localizado em /var/log/exim4
/mainlog.
Voc tambm pode usar o comando mailq para verificar a fila de email, em
situaes normais no deve existir nenhum email na fila.
Diversos detalhes podem impedir o envio de email, aqui no vou detalhar muito
,vou apenas colocar o contedo do meu arquivo /etc/exim4/updateexim4.conf.conf para usar como referncia.

4 de 23

1
2
3
4
5
6
7
8
9
10
11
12
13

dc_eximconfig_configtype='smarthost'
dc_other_hostnames='SERVER.DOMINIO.com.br'
dc_local_interfaces='127.0.0.1'
dc_readhost=''
dc_relay_domains=''
dc_minimaldns='false'
dc_relay_nets='127.0.0.1'
dc_smarthost='smtp.DOMINIO.com.br'
CFILEMODE='644'
dc_use_split_config='false'
dc_hide_mailname='false'
dc_mailname_in_oh='true'
dc_localdelivery='mail_spool'

Estou usando ele como smarthost e encaminhando as mensagens para o meu

20-03-2016 18:31

servidor
de Bloquear
smtp.
Como Fazer
para
o UltraSurf, Soluo D...

http://www.dotsharp.com.br/linux/como-fazer-para...

Depois de ajustar o arquivo voc deve executar o comando update-exim4.conf


para atualizar a configurao, e reiniciar o Daemon do exim com o comando
/etc/init.d/exim4 restart
Pronto, se o envio de email pelo programa mail estiver funcionando voc j pode
ativar o envio de email pelo fail2ban, vamos l.
Edite o arquivo /etc/fail2ban/jail.local
1

#vi /etc/fail2ban/jail.local

1
2
3
4
5
6
7
8
9

[ultrasurf]
enabled
=
filter
=
port
=
banaction =

logpath
maxretry
bantime

true
ultrasurf
all
iptables-ultrasurf
sendmail-ultrasurf
= /var/log/messages
= 6
= 900

Adicione a action sendmail-ultrasurf conforme exemplo acima.


Agora vamos criar um novo arquivo chamado /etc/fail2ban/action.d/sendmailultrasurf.local
1
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25

vi /etc/fail2ban/action.d/sendmail-ultrasurf.local

?
[Definition]
actionstart =
actionstop =
actioncheck =
actionban = printf %%b "Subject: Bloqueado <ip>
From: Suporte <<sender>>
To: <dest>\n
\n
O dispositivo com IP <ip> foi bloqueado depois de tentar bu
<failures> vezes o nosso sistema de seguranca.\n
Acesso sera liberado automaticamente,\n
Suporte" | /usr/sbin/sendmail -f <sender> <dest>

actionunban = printf %%b "Subject: Liberado <ip>


From: Infra <<sender>>
To: <dest>\n
\n
O dispositivo com IP <ip> foi liberado para acesso normal
Novas tentativas serao bloqueadas automaticamente,\n
Suporte" | /usr/sbin/sendmail -f <sender> <dest>
[Init]
name = default
dest = root
sender = fail2ban

Feito isso voc ir receber um email quando uma maquina for bloqueada ou
desbloqueada, veja exemplo
Bloqueio
1
2
3
5 de 23 4
5
6

O dispositivo com IP 10.23.134.41 foi bloqueado depois ?de tentar burlar


14 vezes o nosso sistema de seguranca.
Acesso sera liberado automaticamente,
Suporte

20-03-2016 18:31

Desbloqueio
Como Fazer
para Bloquear o UltraSurf, Soluo D...
1
2
3
4
5

http://www.dotsharp.com.br/linux/como-fazer-para...

?
O dispositivo com IP 10.23.134.41 foi liberado para acesso
normal

Novas tentativas serao bloqueadas automaticamente,


Suporte

Voc tambm pode alterar a mensagem a seu critrio.

CentOS
O nosso amigo Jovander deu uma grande dica para funcionar em CentOS.
Trocando a linha
banaction = iptables-ultrasurf
por
action = iptables-ultrasurf
Ai sim o servio funcionou e leu os logs.

Ubuntu
Nosso amigo Angelo Figueiredo deu uma dica pra quem utiliza o Ubuntu 12.04
LTS.
A configurao pode estar toda certinha e no estar bloqueando a soluo :
verificar o arquivo /etc/fail2ban/jail.conf
se estiver
backend = auto
mude para
backed = polling
que ir comear a bloquear.

Agradecimento
Um forte abrao ao meu amigo Yros Aguiar, quando falei que eu ia criar um
Daemon para ler o log, ele me lembrou que eu no precisaria re-inventar a roda,
bastava usar alguma ferramenta j existente, rs.
Valeu, economizou horas de trabalho.

Concluso
Fica ai a dica, pra mim funcionou.
Testei apenas com a verso 11.03, se em alguma outra no der certo peo que
me avisem para podermos analisar como bloquear.
Com essa soluo a cada tentativa de acesso utilizando o UltraSurf o usurio ser
bloqueado e no ir acessar mais nada pelo tempo determinado, com isso ele tem
duas opes, ou entrar em contato com o suporte da empresa para reclamar ou
parar de usar o UltraSurf.
Se ele reclamar voc orienta a no usar mais o software, porm normalmente ele
para de usar de forma natural o UltraSurf.

6 de 23

20-03-2016 18:31

Download

Como Fazer para Bloquear o UltraSurf, Soluo D...

http://www.dotsharp.com.br/linux/como-fazer-para...

Configurao SEM suporte a envio de email conf-fail2ban-ultrasurf.tar.gz


(http://www.dotsharp.com.br/download/conf-fail2ban-ultrasurf.tar.gz)
Configurao COM suporte a envio de email conf-fail2ban-ultrasurf-email.tar.gz
(http://www.dotsharp.com.br/download/conf-fail2ban-ultrasurf-email.tar.gz)

Referncias
fail2ban (http://www.fail2ban.org)
iptables (http://www.netfilter.org/projects/iptables/index.html)
Bloquear Ultrasurf usando uma GPO (http://tekniblog.wordpress.com/activedirectory/gpos/bloquear-ultrasurf-usando-uma-gpo/)

Rodrigo Luis Silva


Gestor de equipes especialista em sistemas
GNU/Linux com vasta experincia em gerenciamento
de storage, virtualizao, network, desenvolvimento e
outros.
More Posts (http://www.dotsharp.com.br/author
/rodrigo-silva) - Website (http://www.dotsharp.com.br)
Follow Me:
(http://www.twitter.com/rsilva14)

40 Respostas
Yros
14/01/2012 at 7:31 pm

Muito bom o artigo, no tinha encontrado antes uma ferramenta eficiente para bloqueio do
ultrasurf, ficou mais fcil, muito til.
(Citar) (javascript:void(null))

leonardo
16/01/2012 at 2:51 pm

Outra forma identificar o trfego com o Snort e integrar com iptables ou outro..
(Citar) (javascript:void(null))

David Thimotti
7 de 23

23/01/2012 at 5:28 pm

20-03-2016 18:31

Rodrigo, muito bom o seu artigo, porm estou com um pouco de dificuldade para implementar.

uma maquina
CENTOS.
Como FazerEstou
para tentando
Bloquearem
o UltraSurf,
Soluo
D...

http://www.dotsharp.com.br/linux/como-fazer-para...
Fiz exatamente da forma indicada e o servio Fail2Ban no inicia, ento tentei com o cdigo
abaixo:

[ultrasurf]
enabled = true
filter = ultrasurf
banaction = iptables-ultrasurf[port=all, protocol=tcp]
sendmail-ultrasurf[name=ultrasurf, dest=cpd@telealpha.com.br]
logpath = /var/log/messages
maxretry = 6
bantime = 900
Porm no obtive sucesso.
Poderia me d uma dica de como proceder ??? Toda ajuda valida.
No mais, muito obrigado.
David Thimotti
(Citar) (javascript:void(null))

Eduardo
25/01/2012 at 11:52 am

Parabns pelo Tutorial !!!!!


Implementei no Firewall de um cliente e funcionou, ta bloqueando o UltraSurf.
S que no log, apareceram algumas mensagens de erro, que me parece ser de sintaxe ou
que est faltando alguma coisa.
Poderia me ajudar ?
Aqui tenho todo o script do Firewall em um arquivo chamado iptables, salvo no /root e
um squid rodando na porta 3128 com whitelist. A minha distribuio um Debian 5.0.5 .
Segue o erro:
2012-01-25 10:43:13,130 fail2ban.actions.action: ERROR iptables -n -L FORWARD | grep -q
fail2ban-ultrasurf
iptables -n -L INPUT | grep -q fail2ban-ultrasurf returned 100
2012-01-25 10:43:13,130 fail2ban.actions.action: ERROR Invariant check failed. Trying to restore a
sane environment
2012-01-25 10:43:13,135 fail2ban.actions.action: ERROR iptables -D FORWARD -j fail2banultrasurf
iptables -D INPUT -j fail2ban-ultrasurf
iptables -F fail2ban-ultrasurf
iptables -X fail2ban-ultrasurf returned 100
2012-01-25 10:43:13,147 fail2ban.actions.action: ERROR iptables -D fail2ban-ultrasurf -s 10.0.1.28
-j REJECT returned 100
Obrigado.
(Citar) (javascript:void(null))

Sabino
04/02/2012 at 11:29 am

8 de 23

Muito bom o artigo, pra mim funcionou 100%, implementei em varios lugares que administro, com
20-03-2016 18:31
100% de eficacia.
Parabens ao author.

Como FazerSabino.
para Bloquear o UltraSurf, Soluo D...

http://www.dotsharp.com.br/linux/como-fazer-para...

(Citar) (javascript:void(null))

Rodrigo Luis Silva


04/02/2012 at 9:15 pm

Eduardo (#comment-330) :
Parabns pelo Tutorial !!!!!
Implementei no Firewall de um cliente e funcionou, ta bloqueando o UltraSurf.
S que no log, apareceram algumas mensagens de erro, que me parece ser de sintaxe ou
que est faltando alguma coisa.
Poderia me ajudar ?
Aqui tenho todo o script do Firewall em um arquivo chamado iptables, salvo no /root e
um squid rodando na porta 3128 com whitelist. A minha distribuio um Debian 5.0.5 .
Segue o erro:
2012-01-25 10:43:13,130 fail2ban.actions.action: ERROR iptables -n -L FORWARD | grep -q
fail2ban-ultrasurf
iptables -n -L INPUT | grep -q fail2ban-ultrasurf returned 100
2012-01-25 10:43:13,130 fail2ban.actions.action: ERROR Invariant check failed. Trying to
restore a sane environment
2012-01-25 10:43:13,135 fail2ban.actions.action: ERROR iptables -D FORWARD -j fail2banultrasurf
iptables -D INPUT -j fail2ban-ultrasurf
iptables -F fail2ban-ultrasurf
iptables -X fail2ban-ultrasurf returned 100
2012-01-25 10:43:13,147 fail2ban.actions.action: ERROR iptables -D fail2ban-ultrasurf -s
10.0.1.28 -j REJECT returned 100
Obrigado.
Caro Eduardo,
vamos l, acho que essa fcil de resolver, rs
Quando o fail2ban iniciado ele criar uma CHAIN no iptables usando o comando abaixo
iptables -N fail2ban-ultrasurf
Dentro dessa Chain ele coloca as regras para bloqueio, quando voc roda o seu script de firewall
ele certamente remove todas as chains personalizadas, sendo assim ele remove a chain fail2banultrasurf.
Para resolver isso basta voc adicionar a linha abaixo no comeo do seu script de firewall
/etc/init.d/fail2ban stop
E a seguinte linha no final do script de firewall
/etc/init.d/fail2ban start
Espero que resolva.
9 de 23

abs,
Rodrigo

20-03-2016 18:31

(javascript:void(null))
Como Fazer (Citar)
para Bloquear
o UltraSurf, Soluo D...

http://www.dotsharp.com.br/linux/como-fazer-para...

Jovander
09/03/2012 at 5:01 pm

David Thimotti (#comment-329) :


Rodrigo, muito bom o seu artigo, porm estou com um pouco de dificuldade para
implementar.
Estou tentando em uma maquina CENTOS.
Fiz exatamente da forma indicada e o servio Fail2Ban no inicia, ento tentei com o cdigo
abaixo:
[ultrasurf]
enabled = true
filter = ultrasurf
banaction = iptables-ultrasurf[port=all, protocol=tcp]
sendmail-ultrasurf[name=ultrasurf, dest=cpd@telealpha.com.br]
logpath = /var/log/messages
maxretry = 6
bantime = 900
Porm no obtive sucesso.
Poderia me d uma dica de como proceder ??? Toda ajuda valida.
No mais, muito obrigado.
David Thimotti
Estou com o mesmo erro!!! Conseguiu subir o servio
(Citar) (javascript:void(null))

Walter
11/04/2012 at 9:56 am

Muito obrigado, meu amigo, por essa sua importante contribuio! Estava h muito tempo
procurando uma soluo e a sua , at o momento, a mais eficiente. Um abrao!
(Citar) (javascript:void(null))

Jovander
15/05/2012 at 3:24 pm

Ol consegui resolver no CentOS da seguinte forma:


trocando a linha banaction = iptables-ultrasurf por action =
iptables-ultrasurf
Ai sim o servio funcionou e leu os logs.
At.
Jovander
10 de 23

(Citar) (javascript:void(null))

20-03-2016 18:31

Como Fazer para Bloquear o UltraSurf, Soluo D...

Max Weber

http://www.dotsharp.com.br/linux/como-fazer-para...

25/05/2012 at 10:24 am

Galera, testei essa dica a e funcionou. Mas tive que fazer umas alteraes, do mesmo modo que
o colega Jovander, outra dvida. Quando executo o comando tail -f fail2ban.log diz que o arquivo
no existe, resolvi ento colocar /var/log/fail2ban.log mas tambm no deu certo, criei o arquivo na
mo, mas ele sempre fica em branco, ou seja, eu no consigo ver apenas o log do fail2ban, para
que eu possa visualizar os logs tenho que executar o j conhecido tail -f /var/log/messages mas ele
me mostra todos os logs claro.
Alguma dica?
(Citar) (javascript:void(null))

Ultrasurf. como bloquear? KiD LiNuX


22/06/2012 at 1:58 pm

Daniel TI
27/06/2012 at 4:17 pm

Simplesmente sensacional.
Muito obrigado e parabns pelo excelente trabalho.
Um abrao,
(Citar) (javascript:void(null))

Jefferson
10/07/2012 at 2:53 pm

No fedora 14
Ainda no conseguir fazer funcionar mas o log conseguir resolver
echo logtarget = /var/log/fail2ban.log >> /etc/fail2ban/fail2ban.conf
(Citar) (javascript:void(null))

Bruno Bassani
11/07/2012 at 1:58 pm

Parabns Pelo Post e pelos Scripts. Agradecido!


Abrao
(Citar) (javascript:void(null))

marlon
25/07/2012 at 5:51 pm

11 de 23

nessa linha iptables -A FORWARD -d 65.49.14.0/24 -j LOG log-prefix =UltraSurf= tem o espao
na expressao entre aspas ou assim =UltraSurf= ?
20-03-2016 18:31
(Citar) (javascript:void(null))

Como Fazer para Bloquear o UltraSurf, Soluo D...

marlon

http://www.dotsharp.com.br/linux/como-fazer-para...

25/07/2012 at 6:19 pm

como fao para liberar 1 ip para usar o ultrasurf???


(Citar) (javascript:void(null))

Rodrigo Luis Silva


27/07/2012 at 12:12 am

marlon (#comment-620):
nessa linha iptables -A FORWARD -d 65.49.14.0/24 -j LOG log-prefix =UltraSurf= tem o
espao na expressao entre aspas ou assim=UltraSurf=?
Caro Marlon, tudo bem?
Sim, tem um espao, se no colocar o espao na hora de gerar o log ele vai ficar grudado.
abs,
Rodrigo
(Citar) (javascript:void(null))

Rodrigo Luis Silva


27/07/2012 at 12:14 am

marlon (#comment-622):
como fao para liberar 1 ip para usar o ultrasurf???
Marlon, basta adicionar a regra de liberao antes da regra iptables -A FORWARD -d
65.49.14.0/24 -j LOG log-prefix =UltraSurf=
abs
(Citar) (javascript:void(null))

Angelo Figueiredo
03/08/2012 at 11:41 am

Dica pra quem utiliza o Ubuntu 12.04 LTS


A configurao pode estar toda certinha e no estar bloqueando a soluo :
verificar o arquivo /etc/fail2ban/jail.conf
se estiver backend = auto mude para backed = polling que ir comear a bloquear.
abraos
(Citar) (javascript:void(null))

12 de 23

Rodrigo Luis Silva


03/08/2012 at 11:58 am

20-03-2016 18:31

Como Fazer para Bloquear o UltraSurf, Soluo D...

http://www.dotsharp.com.br/linux/como-fazer-para...
Angelo Figueiredo (#comment-691):
Dica pra quem utiliza o Ubuntu 12.04 LTS
A configurao pode estar toda certinha e no estar bloqueando a soluo :

verificar o arquivo /etc/fail2ban/jail.conf


se estiver backend = auto mude para backed = polling que ir comear a bloquear.
abraos
Angelo, muito obrigado pela dica.
Abraos
(Citar) (javascript:void(null))

Adan
08/08/2012 at 2:10 pm

Max Weber (#comment-501): Quando executo o comando tail -f fail2ban.log diz que o
arquivo no existe
Mesmo problema.
(Citar) (javascript:void(null))

Adan
08/08/2012 at 3:17 pm

Adan (#comment-724): backed = polling


Hummm falta o caminho completo do log:
tail -f /var/log/fail2ban.log
Mas ele no atualizaria sozinho? Ou seja, quando eu dou o comando o sistema mostra o
contedo. Sentei numa mquina do lado e abri o UltraSurf para navegar. 5 minutos depois nada
mudou na tela do log, nem quando mandei atualizar.
(Citar) (javascript:void(null))

etecfami
10/08/2012 at 4:55 pm

Ol Rodrigo,

13 de 23

Estou usando sua regra na escola que trabalho, uso Debian 6 e squid configurado no modo
transparente.
Percebi que bloqueia o ultrasurf na primeira vez que o usurio abre o mesmo, mas se o usurio
no fechar o aplicativo e configurar com minhas configuraes de proxy o mesmo consegue usar o
ultrasurf.
Gostaria de saber se possvel utilizar algum comando que no deixe o squid passar a conexo
20-03-2016 18:31
do ultrasurf ou se pode ser algo errado no meu firewall.
Segue conf atual do firewall

Como Fazer#!/bin/sh
para Bloquear o UltraSurf, Soluo D...

http://www.dotsharp.com.br/linux/como-fazer-para...
modprobe iptable_nat
iptables -F
iptables -t nat -F
iptables -X
echo 1 > /proc/sys/net/ipv4/ip_forward
iptables -t nat -A PREROUTING -p tcp -i eth1 dport 80 -j REDIRECT to 3128
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE

iptables -A FORWARD -d 65.49.14.0/24 -j LOG log-prefix =UltraSurf=


Agradecimentos antecipados,
No aguardo,
Etecfami
(Citar) (javascript:void(null))

Anonymous
16/08/2012 at 9:23 pm

Muito boa noite Rodrigo.


Primeiramente queria te agradecer muito mesmo pela essa MARAVILHOSA dica.
Funcionou que uma maravilha!!
Agora uns engraadinhos metidos a bonzo aqui na empresa iro voltar a trabalhar e deixar o
facebook de lado. HAHAHAHAHA (risada maligna)
Brincadeiras a parte, obrigado mais uma vez, e vou te seguir no facebook e acompanhar teu site
sempre ok?
Tenha uma tima semana.
Abraos.
(Citar) (javascript:void(null))

Rodrigo Luis Silva


24/08/2012 at 12:37 am

14 de 23

20-03-2016 18:31

Como Fazer para Bloquear o UltraSurf, Soluo D...

etecfami (#comment-741):
Ol Rodrigo,

http://www.dotsharp.com.br/linux/como-fazer-para...

Estou usando sua regra na escola que trabalho, uso Debian 6 e squid configurado no modo
transparente.
Percebi que bloqueia o ultrasurf na primeira vez que o usurio abre o mesmo, mas se o
usurio no fechar o aplicativo e configurar com minhas configuraes de proxy o mesmo
consegue usar o ultrasurf.
Gostaria de saber se possvel utilizar algum comando que no deixe o squid passar a
conexo do ultrasurf ou se pode ser algo errado no meu firewall.
Segue conf atual do firewall
#!/bin/sh
modprobe iptable_nat
iptables -F
iptables -t nat -F
iptables -X
echo 1 > /proc/sys/net/ipv4/ip_forward
iptables -t nat -A PREROUTING -p tcp -i eth1 dport 80 -j REDIRECT to 3128
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
iptables -A FORWARD -d 65.49.14.0/24 -j LOG log-prefix =UltraSurf=
Agradecimentos antecipados,
No aguardo,
Etecfami
Boa noite,
Pela sua regra voc deve utilizar proxy transparente, para contornar esse problema voc pode
editar o arquivo /etc/fail2ban/action.d/iptables-ultrasurf.local
Adiciona a seguinte linha
iptables -I PREROUTING -t nat -j fail2ban-<name>
iptables -D PREROUTING -t nat -j fail2ban-<name>
Veja o aquivo completo
[Definition]
actionstart = iptables -N fail2ban-<name>
iptables -A fail2ban-<name> -j RETURN
iptables -I INPUT -j fail2ban-<name>
iptables -I FORWARD -j fail2ban-<name>
iptables -I PREROUTING -t nat -j fail2ban-<name>
actionstop = iptables -D FORWARD -j fail2ban-<name>
iptables -D INPUT -j fail2ban-<name>
iptables -D PREROUTING -t nat -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
15 de 23

actionunban = iptables -D fail2ban-<name> -s <ip> -j REJECT

20-03-2016 18:31

Como Fazer[Init]
para Bloquear o UltraSurf, Soluo D...

name = ultrasurf

http://www.dotsharp.com.br/linux/como-fazer-para...

Dessa forma voc vai impedir que ele conecte na porta do proxy.
Caso voc utilize estaes Windows e tenha um AD na rede eu recomendo que voc crie uma
GPO para bloquer a alterao de proxy.
Se der certo me avisa.
abs,
Rodrigo
(Citar) (javascript:void(null))

Rodrigo Luis Silva


24/08/2012 at 12:44 am

Jefferson (#comment-557): Jefferson


Opa Jeferson, me passa por email os arquivos de log as configuraes e o resultado do iptables -L
-nv
abs
(Citar) (javascript:void(null))

Carlos Henrique da Silva


28/09/2012 at 2:25 pm

Essas regras s pode ser usado no linux, vc tem algum procedimento para Ruwindows??
(Citar) (javascript:void(null))

Elivelto
01/10/2012 at 5:27 pm

Utilize o Ubuntu 12.04 mas o servio fail2ban no iniciar


/etc/init.d/fail2ban restart
erro: Restarting authentication failure monitor fail2ban
Alguem pode me ajudar.
(Citar) (javascript:void(null))

Neto
04/10/2012 at 4:08 pm

16 de 23

Ol Rodrigo! Primeiramente gostaria de te elogiar pela dedicao em ajudar o prximo.


Por gentileza voc poderia me ajudar ?
No estou conseguindo bloquear o ultrasurf, o pessoal est utilizando a verso 12.04.
J segui todos os procecimentos anteriores sem sucesso, utilizo proxy transparente, j configurei a
20-03-2016 18:31
GPO no AD para no permitir que o usurio alterar as configuraes do Proxy.
Segue o log do Fail2Ban, utilizo o Ubuntu 10.04.

tail -f /var/log/fail2ban.log
Como Fazerroot@srv-internet:~#
para Bloquear o UltraSurf,
Soluo D...
2012-10-04
2012-10-04
2012-10-04
2012-10-04
2012-10-04
2012-10-04
2012-10-04
2012-10-04
2012-10-04
2012-10-04

15:47:20,240
15:47:20,241
15:47:20,243
15:47:20,245
15:47:20,265
15:47:20,283
15:53:13,982
15:53:14,973
15:53:15,735
15:53:15,744

http://www.dotsharp.com.br/linux/como-fazer-para...
fail2ban.jail : INFO Jail ultrasurf uses poller
fail2ban.filter : INFO Set maxRetry = 6
fail2ban.filter : INFO Set findtime = 600
fail2ban.actions: INFO Set banTime = 900
fail2ban.jail : INFO Jail ssh started
fail2ban.jail : INFO Jail ultrasurf started
fail2ban.server : INFO Stopping all jails
fail2ban.jail : INFO Jail ssh stopped
fail2ban.jail : INFO Jail ultrasurf stopped
fail2ban.server : INFO Exiting Fail2ban

Segue meu firewall


EXTERNAL=eth0
INTERNAL=eth1
# parando o failban
/etc/init.d/fail2ban stop
[]
# log do ultrasurf
iptables -A FORWARD -d 65.49.14.0/24 -j LOG log-prefix =UltraSurf=
[]
# BLOQUEIO ULTRASURF
[]
iptables -I FORWARD -p tcp -d 65.49.14.0/24 -j DROP
[]
# inicializa o failban
/etc/init.d/fail2ban start
Segue os resultados do comando iptables -L -nv
root@srv-internet:~# iptables -L -nv
Chain INPUT (policy DROP 1842 packets, 593K bytes)
pkts bytes target prot opt in out source destination
14813 1550K ACCEPT all eth1 * 0.0.0.0/0 0.0.0.0/0
[]
14 672 DROP tcp * * 0.0.0.0/0 65.49.14.0/24
[]
40 4586 LOG all * * 0.0.0.0/0 65.49.14.0/24 LOG flags 0 level 4 prefix =UltraSurf=
[]
Chain OUTPUT (policy ACCEPT 34376 packets, 39M bytes)
pkts bytes target prot opt in out source destination
0 0 ACCEPT tcp * * 0.0.0.0/0 0.0.0.0/0 tcp dpt:110
[]
(Citar) (javascript:void(null))

Cristiano Galdino
17 de 23

09/10/2012 at 8:19 pm

Boa implementao!

20-03-2016 18:31

(javascript:void(null))
Como Fazer (Citar)
para Bloquear
o UltraSurf, Soluo D...

http://www.dotsharp.com.br/linux/como-fazer-para...

Rodrigo Luis Silva


20/10/2012 at 12:31 am

Carlos Henrique da Silva (#comment-959):


Essas regras s pode ser usado no linux, vc tem algum procedimento para Ruwindows??
Carlos, boa noite.
Para Windows eu no conheo.
abs,
Rodrigo
(Citar) (javascript:void(null))

Rodrigo Luis Silva


20/10/2012 at 1:07 am

Elivelto (#comment-975):
Utilize o Ubuntu 12.04 mas o servio fail2ban no iniciar
/etc/init.d/fail2ban restart
erro: Restarting authentication failure monitor fail2ban
Alguem pode me ajudar.
Elivelto, boa noite.
Tenta usar a dica do Angelo.
verificar o arquivo /etc/fail2ban/jail.conf
se estiver backend = auto mude para backed = polling que ir comear a bloquear.
(Citar) (javascript:void(null))

Rodrigo Luis Silva


20/10/2012 at 1:29 am

18 de 23

20-03-2016 18:31

Como Fazer para Bloquear o UltraSurf, Soluo D...

http://www.dotsharp.com.br/linux/como-fazer-para...
Neto (#comment-993):
Ol Rodrigo! Primeiramente gostaria de te elogiar pela dedicao em ajudar o prximo.
Por gentileza voc poderia me ajudar ?
No estou conseguindo bloquear o ultrasurf, o pessoal est utilizando a verso 12.04.
J segui todos os procecimentos anteriores sem sucesso, utilizo proxy transparente, j
configurei a GPO no AD para no permitir que o usurio alterar as configuraes do Proxy.
Segue o log do Fail2Ban, utilizo o Ubuntu 10.04.
root@srv-internet:~# tail -f /var/log/fail2ban.log
2012-10-04 15:47:20,240 fail2ban.jail : INFO Jail ultrasurf uses poller
2012-10-04 15:47:20,241 fail2ban.filter : INFO Set maxRetry = 6
2012-10-04 15:47:20,243 fail2ban.filter : INFO Set findtime = 600
2012-10-04 15:47:20,245 fail2ban.actions: INFO Set banTime = 900
2012-10-04 15:47:20,265 fail2ban.jail : INFO Jail ssh started
2012-10-04 15:47:20,283 fail2ban.jail : INFO Jail ultrasurf started
2012-10-04 15:53:13,982 fail2ban.server : INFO Stopping all jails
2012-10-04 15:53:14,973 fail2ban.jail : INFO Jail ssh stopped
2012-10-04 15:53:15,735 fail2ban.jail : INFO Jail ultrasurf stopped
2012-10-04 15:53:15,744 fail2ban.server : INFO Exiting Fail2ban

Segue meu firewall


EXTERNAL=eth0
INTERNAL=eth1
# parando o failban
/etc/init.d/fail2ban stop
[]
# log do ultrasurf
iptables -A FORWARD -d 65.49.14.0/24 -j LOG log-prefix =UltraSurf=
[]
# BLOQUEIO ULTRASURF
[]
iptables -I FORWARD -p tcp -d 65.49.14.0/24 -j DROP
[]
# inicializa o failban
/etc/init.d/fail2ban start
Segue os resultados do comando iptables -L -nv
root@srv-internet:~# iptables -L -nv
Chain INPUT (policy DROP 1842 packets, 593K bytes)pkts bytes target prot opt in out source
destination
14813 1550K ACCEPT alleth1 * 0.0.0.0/00.0.0.0/0
[]
14 672 DROP tcp** 0.0.0.0/065.49.14.0/24
19 de 23

[]
404586 LOGall** 0.0.0.0/065.49.14.0/24LOG flags 0 level 4 prefix =UltraSurf=

20-03-2016 18:31

[] Bloquear o UltraSurf, Soluo D...


Como Fazer para

http://www.dotsharp.com.br/linux/como-fazer-para...

Chain OUTPUT (policy ACCEPT 34376 packets, 39M bytes)pkts bytes target prot opt in out
source destination 0 0 ACCEPT tcp** 0.0.0.0/00.0.0.0/0tcp dpt:110
[]
Opa Neto, tudo bem?
No sei se j conseguiu resolver, o que tenho de dica o seguinte.
14 672 DROP tcp * * 0.0.0.0/0 65.49.14.0/24 < <<<<<<<<<<<<<<<<<-------- 0 0 DROP tcp -- * *
65.49.2.0/24 0.0.0.0/0 0 0 DROP tcp -- * * 0.0.0.0/0 65.49.2.0/24 0 0 DROP tcp -- * * 0.0.0.0/0
0.0.0.0/0 tcp dpt:9666 0 0 DROP tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp dpt:3162 0 0 DROP tcp -- * *
0.0.0.0/0 0.0.0.0/0 tcp dpt:3103 0 0 DROP tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp dpt:23620 0 0 DROP tcp
-- * * 0.0.0.0/0 0.0.0.0/0 tcp dpt:19769 0 0 DROP tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp dpt:33190 0 0
DROP tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp dpt:55433 0 0 DROP tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp
dpt:19769 0 0 ACCEPT all -- * * 0.0.0.0/0 200.201.174.204 40 4586 LOG all -- * * 0.0.0.0/0
65.49.14.0/24 LOG flags 0 level 4 prefix "=UltraSurf= " <<<<<<<<<<<<<<------------- Voc tem duas
regras para a rede 65.49.14.0/24, nesse caso o pacote cai na primeira regra e no cria o log do
ultrasurf que est na regra mais abaixo. Tira do seu script as regras de bloqueio do ultrasurf que
voc usava antes. # BLOQUEIO ULTRASURF iptables -I FORWARD -p tcp --dport 19769 -j DROP
iptables -I FORWARD -p tcp --dport 55433 -j DROP iptables -I FORWARD -p tcp --dport 33190 -j
DROP Elas acabam entrando na frente da regra do fail2ban. Espero que resolva. Vou editar o seu
post para no aparecer as suas regras no site. abs, Rodrigo
(Citar) (javascript:void(null))

Rafael Caobianco
30/10/2012 at 10:59 am
Que legal, primeiro site que encontro esse tutorial, parece ser muito eficiente!!!
Utilizo o CentOS com o tuxfrw e squid, existe a possibilidade de realizar o bloqueio do UltraSurf a partir
deles?
Muito obrigado e sucesso!!
Abs
(Citar) (javascript:void(null))

Dias
04/11/2012 at 2:51 pm
Muito obrigado. Funcionou sem problemas c/ debian 6.0. uma questo de tica profissional.
(Citar) (javascript:void(null))

Bruno
15/04/2013 at 5:26 pm
Muito bom o artigo. Obrigado, funcionou certinho aqui!
Uma dica que eu dou pra quem usa firewall/nat com duas placas de rede, informar a interface usada e
dar um drop depois. Exemplo:
IPTABLES=/sbin/iptables # caminho para o iptables
20 de 23

LOCAL_INTERFACE_1=eth1 # Interface para intranet/rede local

20-03-2016 18:31

$IPTABLES
-A FORWARD
-i $LOCAL_INTERFACE_1
-dhttp://www.dotsharp.com.br/linux/como-fazer-para...
65.49.14.0/24 -j LOG log-prefix UltraSurf
Como Fazer
para Bloquear
o UltraSurf,
Soluo D...
$IPTABLES -A FORWARD -i $LOCAL_INTERFACE_1 -d 65.49.14.0/24 -j DROP
(Citar) (javascript:void(null))

Carlos
08/05/2013 at 1:45 pm
Cara, meus parabns pelo artigo.
(Citar) (javascript:void(null))

Claudiney
24/09/2013 at 5:25 pm
como implementar esse bloqueio do ultrasurf no pfsense?
(Citar) (javascript:void(null))

Rodrigo Luis Silva


03/11/2013 at 5:35 pm
Claudiney (#comment-10739):
como implementar esse bloqueio do ultrasurf no pfsense?
Claudiney, tudo bem?
Tem sim, segue o link, inclusive foi baseado no meu artigo.
http://forum.pfsense.org/index.php/topic,64166.msg347609.html (http://forum.pfsense.org/index.php
/topic,64166.msg347609.html)
abs,
Rodrigo
(Citar) (javascript:void(null))

Wellington Rangel Diesel


04/11/2013 at 1:54 pm
Muito obrigado pelo tutorial, ajudou muito!
(Citar) (javascript:void(null))

Deixe uma resposta


O seu endereo de e-mail no ser publicado. Campos obrigatrios so marcados com *
Comentrio

21 de 23

20-03-2016 18:31

Como Fazer para Bloquear o UltraSurf, Soluo D...

http://www.dotsharp.com.br/linux/como-fazer-para...

Nome *

E-mail *

Site

Publicar comentrio

Home Linux Como Fazer para Bloquear o UltraSurf, Soluo Definitiva [iptables + fail2ban]

22 de 23

20-03-2016 18:31

Como Fazer para Bloquear o UltraSurf, Soluo D...

http://www.dotsharp.com.br/linux/como-fazer-para...

Busca
Search

DotSharp Servios de Informtica

23 de 23

20-03-2016 18:31