Re: [AsteriskBrasil] RES: RES: Iptables

2013-07-29 Por tôpico Guilherme Rezende
Mike, lembrando que se tratando de SIP, que usa o protocolo UDP, vc pode 
fazer conforme abaixo:
Esse exemplo abaixo possuo em um cliente onde bloqueio qualquer 
tentativa de se logar na central via SIP c/ alguma classe diferente das 
que estão listadas(que são classes BR)

Apenas isso vai resolver seu problema!

#!/bin/bash
ipt=/sbin/iptables
$ipt -F
$ipt -A INPUT -i eth2 -s 172.16.5.0/24 -p udp -j ACCEPT
$ipt -A INPUT -i eth2 -s 186.0.0.0/8 -p udp -j ACCEPT
$ipt -A INPUT -i eth2 -s 187.0.0.0/8 -p udp -j ACCEPT
$ipt -A INPUT -i eth2 -s 177.0.0.0/8 -p udp -j ACCEPT
$ipt -A INPUT -i eth2 -s 179.0.0.0/8 -p udp -j ACCEPT
$ipt -A INPUT -i eth2 -s 189.0.0.0/8 -p udp -j ACCEPT
$ipt -A INPUT -i eth2 -s 198.50.96.130 -p udp -j ACCEPT
$ipt -A INPUT -i eth2 -s 200.0.0.0/8 -p udp -j ACCEPT
$ipt -A INPUT -i eth2 -s 201.0.0.0/8 -p udp -j ACCEPT
$ipt -A INPUT -i eth2 -p udp -j DROP


Em 26/07/2013 09:30, Mike escreveu:


Pessoal, agradeço muito a todos pelas dicas.

Bruno estou lendo já os links que me passou.

Fiz várias tentativas já inclusive esta que você me passou, mas ao 
carregar o serviço ele me dá um erro.  Mesmo eu deixando a regra -A 
INPUT -s 192.168.25.34 -j ACCEPT apos reiniciar o serviço, ele me 
bloqueia sempre. Não libera meu acesso.


[root@ibridge ~]# service iptables restart

iptables: Liberando regras do firewall:[  OK  ]

iptables: Configurando chains para a política ACCEPT: filt[  OK  ]

iptables: Descarregando módulos:  [  OK  ]

iptables: Aplicando regras do firewall:Bad argument `iptables'

Error occurred at line: 18

Try `iptables-restore -h' or 'iptables-restore --help' for more 
information.


[FALHOU]

Estou com a regra abaixo.

# Firewall configuration written by system-config-firewall

# Manual customization of this file is not recommended.

*filter

:INPUT ACCEPT [0:0]

:FORWARD ACCEPT [0:0]

:OUTPUT ACCEPT [0:0]

-A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT

-A INPUT -p icmp -j ACCEPT

-A INPUT -i lo -j ACCEPT

-P INPUT DROP

-P OUTPUT DROP

-P FORWARD DROP

iptables -A INPUT -s 192.168.25.34 -j ACCEPT ;;meu ip local

-A INPUT -s 192.168.25.34 -j ACCEPT

-A INPUT -s 192.168.25.82 -j ACCEPT

-A INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT

-A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT

-A INPUT -m state --state NEW -m tcp -p tcp --dport 88 -j ACCEPT

-A INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT

-A INPUT -m state --state NEW -m tcp -p tcp --dport 5038 -j ACCEPT

-A INPUT -m state --state NEW -m udp -p udp --dport 1:65535 -j ACCEPT

-A INPUT -j REJECT --reject-with icmp-host-prohibited

-A FORWARD -j REJECT --reject-with icmp-host-prohibited

COMMIT

Muito Obrigado!

Att: Mike

*De:*asteriskbrasil-boun...@listas.asteriskbrasil.org 
[mailto:asteriskbrasil-boun...@listas.asteriskbrasil.org] *Em nome de 
*Bruno Gerotto

*Enviada em:* sexta-feira, 26 de julho de 2013 08:34
*Para:* asteriskbrasil@listas.asteriskbrasil.org
*Assunto:* Re: [AsteriskBrasil] RES: Iptables

Bom dia Mike, tudo em ordem.

Seguinte, também não tenho mto conhecimento em iptables e 
fail2ban, mas acredito que consigo te dar uma força com minhas 
próprias palavras..


Quando você usa a opção -P no comando iptables (iptables -P INPUT 
DROP), você está querendo dizer que a politica padrão do firewall para 
as conexões de entrada é drop, ou seja, todas as conexões de entrada a 
esse servidor serão barradas.


Como você usou DROP para INPUT, FORWARD E OUTPUT, você isolou o 
servidor de toda a rede.


Porém existem as regras com -A (iptables -A INPUT -s 111..111.111 
-j ACCEPT), ou seja, você pode dizer que suas regras de entrada padrão 
serão drop, mas quando chegar uma conexão de determinado ip você vai 
aceitar..


Partindo desses principios da pra você bloquear tudo e liberar somente 
o necessário... oque eu sempre costumo fazer.


Quanto ao Fail2ban, oque ele faz é analisar os arquivos de log de uma 
aplicação e bloquear a origem dos acessos caso haja uma determinada 
quantia de erros. Ele faz isso criando regras no iptables.


Segue alguns links que já me ajudaram muito.

Fail2ban com asterisk

http://asterisk.zip.net/asterisk/ (Da um ctrl + f e procura por 
fail2ban pq ta bem no meio da pagina e ela é um pouco extensa).


http://www.vivaolinux.com.br/dica/Evitando-bruteforce-de-SSH-utilizando-o-Fail2ban

http://www.vivaolinux.com.br/artigo/Bloqueio-de-repetidas-tentativas-de-login-ao-seu-Linux?pagina=5

http://www.servidordebian.org/pt/wheezy/security/brute_force_attack/fail2ban

http://www.fail2ban.org/wiki/index.php/Asterisk

Firewall Iptables com Asterisk

http://wiki.ubuntu-br.org/Iptables

http://web.mit.edu/rhel-doc/4/RH-DOCS/rhel-sg-pt_br-4/s1-firewall-ipt-fwd.html

Espero ter ajudado.


ATT.

Bruno Gerotto



___
KHOMP: completa linha de placas externas FXO, FXS, GSM e E1;
Media Gateways de 1 a 64 E1s para SIP com R2, ISDN e SS7;

Re: [AsteriskBrasil] RES: RES: Iptables

2013-07-29 Por tôpico Guilherme Rezende
Mike, lembrando que sua chain padrão não deve ser alterada.  Ou seja, a 
CHAIN INPUT, OUTPUT necessariamente precisam estar como ACCEPT.


iptables -P INPUT ACCEPT
iptables -P OUTPUT ACCEPT

Veja como ficou a saída do iptables -L conforme script abaixo

[root@pbx-grupocred /]# iptables -L
Chain INPUT (policy ACCEPT)
target prot opt source   destination
ACCEPT udp  --  172.16.5.0/24anywhere
ACCEPT udp  --  186.0.0.0/8  anywhere
ACCEPT udp  --  187.0.0.0/8  anywhere
ACCEPT udp  --  177.0.0.0/8  anywhere
ACCEPT udp  --  179.0.0.0/8  anywhere
ACCEPT udp  --  189.0.0.0/8  anywhere
ACCEPT udp  --  198.50.96.130anywhere
ACCEPT udp  --  200.0.0.0/8  anywhere
ACCEPT udp  --  201.0.0.0/8  anywhere
DROP   udp  --  anywhere anywhere

Chain FORWARD (policy ACCEPT)
target prot opt source   destination

Chain OUTPUT (policy ACCEPT)
target prot opt source   destination



Em 29/07/2013 10:29, Guilherme Rezende escreveu:
Mike, lembrando que se tratando de SIP, que usa o protocolo UDP, vc 
pode fazer conforme abaixo:
Esse exemplo abaixo possuo em um cliente onde bloqueio qualquer 
tentativa de se logar na central via SIP c/ alguma classe diferente 
das que estão listadas(que são classes BR)

Apenas isso vai resolver seu problema!

#!/bin/bash
ipt=/sbin/iptables
$ipt -F
$ipt -A INPUT -i eth2 -s 172.16.5.0/24 -p udp -j ACCEPT
$ipt -A INPUT -i eth2 -s 186.0.0.0/8 -p udp -j ACCEPT
$ipt -A INPUT -i eth2 -s 187.0.0.0/8 -p udp -j ACCEPT
$ipt -A INPUT -i eth2 -s 177.0.0.0/8 -p udp -j ACCEPT
$ipt -A INPUT -i eth2 -s 179.0.0.0/8 -p udp -j ACCEPT
$ipt -A INPUT -i eth2 -s 189.0.0.0/8 -p udp -j ACCEPT
$ipt -A INPUT -i eth2 -s 198.50.96.130 -p udp -j ACCEPT
$ipt -A INPUT -i eth2 -s 200.0.0.0/8 -p udp -j ACCEPT
$ipt -A INPUT -i eth2 -s 201.0.0.0/8 -p udp -j ACCEPT
$ipt -A INPUT -i eth2 -p udp -j DROP


Em 26/07/2013 09:30, Mike escreveu:


Pessoal, agradeço muito a todos pelas dicas.

Bruno estou lendo já os links que me passou.

Fiz várias tentativas já inclusive esta que você me passou, mas ao 
carregar o serviço ele me dá um erro.  Mesmo eu deixando a regra -A 
INPUT -s 192.168.25.34 -j ACCEPT apos reiniciar o serviço, ele me 
bloqueia sempre. Não libera meu acesso.


[root@ibridge ~]# service iptables restart

iptables: Liberando regras do firewall:[  OK  ]

iptables: Configurando chains para a política ACCEPT: filt[  OK  ]

iptables: Descarregando módulos:  [  OK  ]

iptables: Aplicando regras do firewall:Bad argument `iptables'

Error occurred at line: 18

Try `iptables-restore -h' or 'iptables-restore --help' for more 
information.


[FALHOU]

Estou com a regra abaixo.

# Firewall configuration written by system-config-firewall

# Manual customization of this file is not recommended.

*filter

:INPUT ACCEPT [0:0]

:FORWARD ACCEPT [0:0]

:OUTPUT ACCEPT [0:0]

-A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT

-A INPUT -p icmp -j ACCEPT

-A INPUT -i lo -j ACCEPT

-P INPUT DROP

-P OUTPUT DROP

-P FORWARD DROP

iptables -A INPUT -s 192.168.25.34 -j ACCEPT ;;meu ip local

-A INPUT -s 192.168.25.34 -j ACCEPT

-A INPUT -s 192.168.25.82 -j ACCEPT

-A INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT

-A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT

-A INPUT -m state --state NEW -m tcp -p tcp --dport 88 -j ACCEPT

-A INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT

-A INPUT -m state --state NEW -m tcp -p tcp --dport 5038 -j ACCEPT

-A INPUT -m state --state NEW -m udp -p udp --dport 1:65535 -j ACCEPT

-A INPUT -j REJECT --reject-with icmp-host-prohibited

-A FORWARD -j REJECT --reject-with icmp-host-prohibited

COMMIT

Muito Obrigado!

Att: Mike

*De:*asteriskbrasil-boun...@listas.asteriskbrasil.org 
[mailto:asteriskbrasil-boun...@listas.asteriskbrasil.org] *Em nome de 
*Bruno Gerotto

*Enviada em:* sexta-feira, 26 de julho de 2013 08:34
*Para:* asteriskbrasil@listas.asteriskbrasil.org
*Assunto:* Re: [AsteriskBrasil] RES: Iptables

Bom dia Mike, tudo em ordem.

Seguinte, também não tenho mto conhecimento em iptables e 
fail2ban, mas acredito que consigo te dar uma força com minhas 
próprias palavras..


Quando você usa a opção -P no comando iptables (iptables -P INPUT 
DROP), você está querendo dizer que a politica padrão do firewall 
para as conexões de entrada é drop, ou seja, todas as conexões de 
entrada a esse servidor serão barradas.


Como você usou DROP para INPUT, FORWARD E OUTPUT, você isolou o 
servidor de toda a rede.


Porém existem as regras com -A (iptables -A INPUT -s 111..111.111 
-j ACCEPT), ou seja, você pode dizer que suas regras de entrada 
padrão serão drop, mas quando chegar uma conexão de determinado ip 
você vai aceitar..


Partindo desses principios da pra você bloquear tudo e liberar 
somente o necessário... oque eu sempre costumo fazer.



Re: [AsteriskBrasil] RES: RES: Iptables

2013-07-26 Por tôpico Bruno Gerotto
Mike, vc está usando um arquivo com as regras de iptables certo?

se sim altere esta linha:
iptables -A INPUT -s 192.168.25.34 -j ACCEPT ;;meu ip local
para:
-A INPUT -s 192.168.25.34 -j ACCEPT ;;meu ip local

veja se funciona.

ATT.
Bruno Gerotto
___
KHOMP: completa linha de placas externas FXO, FXS, GSM e E1;
Media Gateways de 1 a 64 E1s para SIP com R2, ISDN e SS7;
Intercomunicadores para acesso remoto via rede IP. Conheça em www.Khomp.com.
___
ALIGERA – Fabricante nacional de Gateways SIP-E1 para R2, ISDN e SS7.
Placas de 1E1, 2E1, 4E1 e 8E1 para PCI ou PCI Express.
Channel Bank – Appliance Asterisk - Acesse www.aligera.com.br.
___
Para remover seu email desta lista, basta enviar um email em branco para 
asteriskbrasil-unsubscr...@listas.asteriskbrasil.org