Erro ao adicionar regras no firewall [RESOLVIDO]

1. Erro ao adicionar regras no firewall [RESOLVIDO]

Eliseu Diniz Felix
felixdinizz

(usa Ubuntu)

Enviado em 01/04/2014 - 09:36h

Prezados,
configurei o iptables no ubuntu 10.04 e todas as vezes que adiciono uma regra e aplico um "restart" para reiniciar o serviço ou um "STOP" e depois "START" os clientes pedem o acesso a internet e não consigo acessar via SSH e nem mesmo tenho resposta do "PING" no servidor. alguém sabe o que pode ser? para acessar ele tenho que reiniciar o sistema operacional. Estou postando meu firewall.



#!/bin/bash

iniciar(){
#Limpa regras
iptables -X
iptables -F
iptables -t nat -F

# Politicas padrao
iptables -P INPUT DROP
iptables -P OUTPUT DROP
iptables -P FORWARD DROP

# Compartilha a conexao com a internet
echo 1 > /proc/sys/net/ipv4/ip_forward
iptables -t nat -A POSTROUTING -o eth1 -j MASQUERADE

# Redirecionamento para o Squid
iptables -t nat -A PREROUTING -i eth1 -p tcp --dport 80 -j REDIRECT --to-port 3128
iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 80 -j REDIRECT --to-port 3128

### Impedindo ataque Ping of Death no Firewall
iptables -A INPUT -p icmp --icmp-type echo-request -m limit --limit 1/s -j ACCEPT

### Impedindo ataque Ping of Death na rede
iptables -A FORWARD -p icmp --icmp-type echo-request -m limit --limit 1/s -j ACCEPT

### Impedindo ataque de Denial Of Service Dos na rede e servidor
iptables -I FORWARD -p tcp -m limit --limit 1/s -j ACCEPT
iptables -A INPUT -p tcp -m limit --limit 1/s -j ACCEPT

### Desabilita port scan
echo 1 > /proc/sys/net/ipv4/icmp_echo_ignore_broadcasts

### Protecao contra synflood
echo "1" > /proc/sys/net/ipv4/tcp_syncookies

### Ativando protecao contra responses bogus
echo 1 > /proc/sys/net/ipv4/icmp_ignore_bogus_error_responses

#libera pacotes de retorno da internet
iptables -A INPUT -p tcp -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A INPUT -p udp -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A INPUT -p icmp -m state --state ESTABLISHED,RELATED -j ACCEPT

#Liberando porta http
iptables -A OUTPUT -p tcp --dport 80 -j ACCEPT

#Liberando porta SQUID
iptables -A OUTPUT -p tcp --dport 3128 -j ACCEPT

#Liberando a porta https
iptables -A OUTPUT -p tcp --dport 443 -j ACCEPT

#Liberando a portas POP3 e SMTP
iptables -A OUTPUT -p tcp --dport 25 -j ACCEPT
iptables -A OUTPUT -p tcp --dport 110 -j ACCEPT

#Liberando a porta SSH
iptables -A INPUT -p tcp --dport 22 -j ACCEPT
iptables -A OUTPUT -p tcp --dport 22 -j ACCEPT
iptables -A FORWARD -p tcp --dport 22 -j ACCEPT

#CONECTIVIDADE SOCIAL
iptables -A OUTPUT -p tcp --dport 2631 -j ACCEPT

#Liberando DHCP
iptables -A OUTPUT -p tcp --dport 67 -j ACCEPT

#Liberando o DNS
iptables -A OUTPUT -p udp --dport 53 -j ACCEPT
iptables -A OUTPUT -p tcp --dport 53 -j ACCEPT

#Gerando os logs do Iptables
iptables -A INPUT -p tcp -j LOG
}

parar(){
echo Limpando as tabelas e Chains
iptables -F
iptables -F -t nat
iptables -F INPUT
iptables -F OUTPUT
iptables -F FORWARD
iptables -t mangle -F
iptables -t nat -F
iptables -X
echo Limpeza das Tabelas ..... [ok]
}

case "$1" in
"start") iniciar ;; "stop") parar ;;
"restart") parar; iniciar ;;
*) echo "Use os parametros start ou stop"
esac














  


2. MELHOR RESPOSTA

Carlos Alberto de Souza Barbosa
souzacarlos

(usa Outra)

Enviado em 03/04/2014 - 09:09h

felixdinizz escreveu:

Coloquei somente o compartilhamento de internet no firewall (no post abaixo, e funcionou, não perdeu a conexão, e acredito eu que esteja alguma política de forma incorreta no outro script que ainda não descobrir.

#!/bin/bash
#Limpa regras

iptables -P INPUT ACCEPT
iptables -P OUTPUT ACCEPT
iptables -P FORWARD ACCEPT
iptables -F
iptables -X
iptables -t nat -F
iptables -t nat -X
iptables -t mangle -F
iptables -t mangle -X
iptables -L -n

modprobe iptable_nat
modprobe ip_tables


# Compartilha a conexao com a internet
echo 1 > /proc/sys/net/ipv4/ip_forward
iptables -t nat -A POSTROUTING -o eth1 -j MASQUERADE


Bom dia

Cara teu script estava cheio de problemas, uma dica que dou é, a partir de agora começa a subir serviço por serviço e vai testando entendeu, esquece esse negócio de sair colocando um monte de linha e sair rodando, vai por partes é o melhor jeito de "debugar" um problema...

Caso tenho lhe ajudado, favor marcar como melhor resposta e lembrar de fechar o post!!!

Caso precise de ajuda para montar teu novo servidor pode contar comigo.

Abs,


3. Re: Erro ao adicionar regras no firewall [RESOLVIDO]

Leandro Nascimento de Souza
spikey

(usa Debian)

Enviado em 01/04/2014 - 11:10h

Olá,

Poste os resultados dos comandos abaixo:

# iptables -t filter -nL
# iptables -t nat -nL


4. Re: Erro ao adicionar regras no firewall [RESOLVIDO]

Reginaldo de Matias
saitam

(usa Slackware)

Enviado em 01/04/2014 - 11:13h

Na regra de compartilhamento conexão, qual a interface externa (que faz conexão com internet) ?

Substitua na tag respectiva pela interface externa.

# Compartilha a conexao com a internet
echo 1 > /proc/sys/net/ipv4/ip_forward
iptables -t nat -A POSTROUTING -o < INTERFACE-EXTERNA > -j MASQUERADE





5. Re: Erro ao adicionar regras no firewall [RESOLVIDO]

Carlos Alberto de Souza Barbosa
souzacarlos

(usa Outra)

Enviado em 01/04/2014 - 12:33h

Bom dia.

Não vou entrar no mérito de outros problemas, vou colocando a solução por partes para ver se vc consegue em cima disto entender oq vc fez ok!!!

Bom no POLICE default vc disse que as regras de INPUT OUTPUT FORWARD são DROP

VC criou uma regra onde vc redireciona o tráfego da 80 para 3128

cade a regra que vc permite a tráfego "ENTRANTE" INPUT no servidor?

vc criou a saida OUTPUT 3128 ACCEPT mas não criou a entrada.

aguardo,


6. Re: Erro ao adicionar regras no firewall [RESOLVIDO]

Eliseu Diniz Felix
felixdinizz

(usa Ubuntu)

Enviado em 01/04/2014 - 15:20h

spikey, Os resultados foram:

root@ubuntu:~# iptables -t filter -nL
Chain INPUT (policy ACCEPT)
target prot opt source destination

Chain FORWARD (policy ACCEPT)
target prot opt source destination

Chain OUTPUT (policy ACCEPT)
target prot opt source destination


root@ubuntu:~# iptables -t nat -nL
Chain PREROUTING (policy ACCEPT)
target prot opt source destination

Chain POSTROUTING (policy ACCEPT)
target prot opt source destination

Chain OUTPUT (policy ACCEPT)
target prot opt source destination
root@ubuntu:~#



Saitam,
Na regra de compartilhamento conexão, a interface externa É a eth1.



Souzacarlos, no caso seria:

#Liberando porta http
iptables -A OUTPUT -p tcp --dport 80 -j ACCEPT
iptables -A INPUT -p tcp --dport 80 -j ACCEPT

#Liberando porta SQUID
iptables -A OUTPUT -p tcp --dport 3128 -j ACCEPT
iptables -A INPUT -p tcp --dport 3128 -j ACCEPT

E assim para todas as portas?















7. Re: Erro ao adicionar regras no firewall [RESOLVIDO]

Carlos Alberto de Souza Barbosa
souzacarlos

(usa Outra)

Enviado em 01/04/2014 - 17:41h

Cara tem alguma coisa errada ai.


No teu script vc diz que a POLICE default e DROP

e na saída do comando iptables -L aparece ACCEPT

algo errado que não está certo!!! favor conferir

aguardo,


8. Re: Erro ao adicionar regras no firewall [RESOLVIDO]

Leandro Nascimento de Souza
spikey

(usa Debian)

Enviado em 02/04/2014 - 11:30h

Realmente tem algo errado, o script está executando corretamente? Na primeira linha coloque a flag -x para debug, tipo: #!/bin/bash -x


9. Re: Erro ao adicionar regras no firewall [RESOLVIDO]

Eliseu Diniz Felix
felixdinizz

(usa Ubuntu)

Enviado em 03/04/2014 - 08:00h

Coloquei somente o compartilhamento de internet no firewall (no post abaixo, e funcionou, não perdeu a conexão, e acredito eu que esteja alguma política de forma incorreta no outro script que ainda não descobrir.

#!/bin/bash
#Limpa regras

iptables -P INPUT ACCEPT
iptables -P OUTPUT ACCEPT
iptables -P FORWARD ACCEPT
iptables -F
iptables -X
iptables -t nat -F
iptables -t nat -X
iptables -t mangle -F
iptables -t mangle -X
iptables -L -n

modprobe iptable_nat
modprobe ip_tables


# Compartilha a conexao com a internet
echo 1 > /proc/sys/net/ipv4/ip_forward
iptables -t nat -A POSTROUTING -o eth1 -j MASQUERADE



10. Re: Erro ao adicionar regras no firewall [RESOLVIDO]

Eliseu Diniz Felix
felixdinizz

(usa Ubuntu)

Enviado em 03/04/2014 - 15:36h

Souzacarlos,
obrigado pela dica. vou fazer o que sugeriu, vou começar a montar regra por regra e testar cada uma, sobre a ajuda seria muito bem vinda. Vou abrir outro post para montar as regras.

Obrigado.






Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts