iptables ip range block

Iniciado por rodrigo286, 03 de Janeiro de 2012, 17:07

tópico anterior - próximo tópico

rodrigo286

Ei galera tudo bem? espero que sim, bom eu tenho um servidor e queria liberar o mesmo somente para Brasil e Argentina por motivos de ataques que tentaram fazer contra minha maquina, eu estava fazendo pelo iptables da seguinte forma:

EX:

iptables -P INPUT DROP
iptables -P FORWARD DROP
iptables -A INPUT -s 31.201.9.0/24 -j ACCEPT
iptables -A INPUT -s 46.136.173.0/24 -j ACCEPT
iptables -A INPUT -s 82.138.131.0/24 -j ACCEPT
...


Bloqueia tudo e vai liberando as ranges que deseja...

Mais o problema é saber certinho a range do Pais, cada site passa uma, não acho um que mostre com exatidão, antes tinha no RegistroBR mas agora não tem mais...

Então peguei esse script:

http://www.cyberciti.biz/faq/block-entier-country-using-iptables/

O mesmo não funciona e hoje encontro este:

http://www.facebook.com/topic.php?uid=2211662981&topic=13344

Que realmente parece ser otimo, mais ao mandar baixar os arquivos recebo o erro:

--2012-01-03 15:58:09--  http://www.ipdeny.com/ipblocks/data/countries/ae%0D.zone
Resolving www.ipdeny.com... 64.85.170.117
Connecting to www.ipdeny.com|64.85.170.117|:80... connected.
HTTP request sent, awaiting response...


Exemplo da zona ae, ele coloca esse %OD que não sei da onde bem e com isso não funfa, alguem sabe arrumar isso ou sabe algum outro script ou firewall que faça isso, quero bloquear tudo e liberar somente os paises que eu desejar, obrigado.

Obs:

Nas configs fiz como ele manda coloquei os codigos separados em linhas:

ad
ae
af
ag
ai
al
am
an
ao
ap
ar
as
...


Obrigado novamente.

zekkerj

Vc editou o arquivo de controle no windows, não?
Pesquise antes de perguntar, sua dúvida pode já ter sido respondida.
Não respondo dúvidas por MP, coloque sua dúvida no fórum onde ela pode ser pesquisada pelos seus colegas!
Não venha ao fórum apenas para perguntar. Se você sabe a resposta de um problema, porque não ajudar seu colega? ;D

rodrigo286

Como assim windows? estou usando linux, não entendi o que vc quer dizer com o windows...

Obrigado.

zekkerj

O arquivo de controle parece ter sido editado no windows --- ele está terminando as linhas com um "\r\n", ao invés de apenas "\n", como se faz no unix.

Tente usar o comando "dos2unix" pra retirar esses caracteres de controle, ou então apague esse arquivo e crie-o de novo.
Pesquise antes de perguntar, sua dúvida pode já ter sido respondida.
Não respondo dúvidas por MP, coloque sua dúvida no fórum onde ela pode ser pesquisada pelos seus colegas!
Não venha ao fórum apenas para perguntar. Se você sabe a resposta de um problema, porque não ajudar seu colega? ;D

rodrigo286

A sim editei o mesmo no notepad++ vou testar isso que voce me passou, é que agora vou no medico, mais assim que voltar eu testo, obrigado mesmo.

rodrigo286

#5
Oi tudo bem?

Usei o comando


[root@189 /]# dos2unix ./bloqueio_paises.sh

Recebi a menssagem

dos2unix: converting file ./bloqueio_paises.sh to UNIX format ...

E logo após isso ele ja apareceo console normal mandei executar mais ainda continua com o caractere %0D,

Obrigado.

#EDIT

Vi em um lugar para usar o comando assim:

dos2unix -o nome.exten... bloqueio.exten...

Mas ai recebo uma menssagem de erro em tentar converter,

Obrigado.


zekkerj

Tente apagar o arquivo e criá-lo de novo, dessa vez com o próprio editor do Linux (gedit ou kate).
Pesquise antes de perguntar, sua dúvida pode já ter sido respondida.
Não respondo dúvidas por MP, coloque sua dúvida no fórum onde ela pode ser pesquisada pelos seus colegas!
Não venha ao fórum apenas para perguntar. Se você sabe a resposta de um problema, porque não ajudar seu colega? ;D

rodrigo286

Tudo bem gente, então eu tava precisando bloquear todas as ranges e deixar somente a do Brasil, eu estou fazendo isso usando o iptables, mas o problema é que é dificil achar certinho a range do Brasil, já procurei em varios sites, mas sempre falta alguma range e acaba fazendo algum dos nossos jogadores a não ver o servidores, até achei um script de bloqueio mais o mesmo usa as zonas de um site que tambem não tem as ranges corretas e não bloqueia os outros Países, gostaria de saber se alguem tem lgum lugar de confiança onde sej atualizado e tenha corretamente as ranges do Brasil para mim usar no IPTABLES ou alguem script ou firewall que faça esse tipo de bloqueio,

Obrigado desde já, Rodrigo Ventura.

zekkerj

Pesquise antes de perguntar, sua dúvida pode já ter sido respondida.
Não respondo dúvidas por MP, coloque sua dúvida no fórum onde ela pode ser pesquisada pelos seus colegas!
Não venha ao fórum apenas para perguntar. Se você sabe a resposta de um problema, porque não ajudar seu colega? ;D

rodrigo286

Sim, mas como a quele era sobre um script em especial e o mesmo não funcionou mesmo recriando, eu criei outro, mas realmente deveria ter dado UP por akele antigo, desculpe mesmo, não se repitirá, mas de qualquer forma alguem sabe como me ajudar, preciso muito disso, obrigado desde já.

Tota

Topicos semelhantes do mesmo autor sobre faixas de IP

Os topicos foram unidos

[]'s

rodrigo286

Alguem sabe mais alguma forma?

Obrigado, agradeço desde já.

zekkerj

Os scripts que vc pegou tentavam levantar essa informação de um site. Pq vc não tenta levantar essa informação manualmente, e montar seu próprio script?
Pesquise antes de perguntar, sua dúvida pode já ter sido respondida.
Não respondo dúvidas por MP, coloque sua dúvida no fórum onde ela pode ser pesquisada pelos seus colegas!
Não venha ao fórum apenas para perguntar. Se você sabe a resposta de um problema, porque não ajudar seu colega? ;D

rodrigo286

exatamente isso que fiz, dei um block em todo trafico e depois só liberei as ranges que eu queria, no caso do Brasil, mas ta dificil char uma fonte correta da range do Brasil, queria saber se alguem tem essa lista correta, pois sem ela fica ruim.

zekkerj

O Registro.br tem essa informação. Vc pode fazer isso numa base de tentativa-e-erro, pegue a lista dos IPs bloqueados, e consulte o serviço (https://registro.br/cgi-bin/whois/?qr=&#lresp). Se a resposta for positiva, a faixa está alocada para o Brasil, e vc pode liberá-la.

De início vai ser um trabalhão, mas em alguns poucos dias vc vai cadastrar quase todas as faixas. Até pq são poucas faixas enormes, tipo, o endereço 187.14.15.16 (escolhido aleatoriamente, se vc que está lendo isso descobrir que é o seu... foi mal, hein? :D) resulta a seguinte consulta:

% Copyright (c) Nic.br
%  A utilização dos dados abaixo é permitida somente conforme
%  descrito no Termo de Uso (http://registro.br/termo), sendo
%  proibida a sua distribuição, comercialização ou reprodução,
%  em particular para fins publicitários ou propósitos
%  similares.
%  2012-01-09 17:51:42 (BRST -02:00)

inetnum:       187.12/14
asn:           AS7738
ID abusos:     CGR13
entidade:      Telemar Norte Leste S.A.
documento:     033.000.118/0001-79
responsável:   Daniel Advogados
país:          BR
ID entidade:   HAOGO
ID técnico:    CGR13
inetrev:       187.14/16
servidor DNS:  ns10.telemar.net.br
status DNS:    09/01/2012 a
último a:     09/01/2012
servidor DNS:  ns11.telemar.net.br
status DNS:    09/01/2012 TIMEOUT
último a:     09/07/2010
criado:        08/09/2008
alterado:      10/06/2011

ID:            CGR13
nome:          Centro de Gerencia de Rede TELEMAR
e-mail:        abuse@telemar.net.br
criado:        05/06/2000
alterado:      03/11/2009

ID:            HAOGO
nome:          Halliny Oliveira Gomes
e-mail:        mariana.bion@oi.net.br
criado:        28/06/2006
alterado:      06/07/2011

% Problemas de segurança e spam também devem ser reportados ao
% cert.br, http://cert.br/, respectivamente para cert@cert.br
% e mail-abuse@cert.br
%
% whois.registro.br aceita somente consultas diretas. Tipos de
% consultas são: dominio (.br), ticket, provedor, ID, bloco
% CIDR, IP e ASN.


Pois bem, tem lá a faixa "187.12/14", isso equivale ao bloco CIDR 187.12.0.0/14, e engloba todos os endereços entre 187.12.0.0 e 187.15.255.255 (inclusive!). Uma vez que vc cadastrar essa faixa como liberada, não precisa mais fazer pra nenhum desses 256 mil endereços.
Pesquise antes de perguntar, sua dúvida pode já ter sido respondida.
Não respondo dúvidas por MP, coloque sua dúvida no fórum onde ela pode ser pesquisada pelos seus colegas!
Não venha ao fórum apenas para perguntar. Se você sabe a resposta de um problema, porque não ajudar seu colega? ;D