TS no firewall [RESOLVIDO]

13. Re: TS no firewall [RESOLVIDO]

Alcimar
arc

(usa Slackware)

Enviado em 11/10/2010 - 22:53h

Cara ta meio estranho o seu firewall( muito grande o arquivo) fica dificil decifrar
tipo eu diria que faltava liberar o FORWARD na porta 3389 mas com as regras a seguir no seu firewall acho que o DROP NO FORWARD já era

iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A OUTPUT -m state --state ESTABLISHED,RELATED,NEW -j ACCEPT
iptables -A FORWARD -m state --state ESTABLISHED,RELATED,NEW -j ACCEPT

esta aceitando novos pacotes com a flag NEW ou será que estou enganado

conselho cria um script com tudo drop e vai liberando aos poucos

outra coisa a porta do mysql esta aberta para a internet tome cuidado


  


14. Re: TS no firewall [RESOLVIDO]

Rodrigo Hlatki
rodrigoh79

(usa Debian)

Enviado em 11/10/2010 - 23:40h

Valeu arc, lejoso. Ainda bem que tem gente no fórum afim de ajudar. Arc, após postar aki eu coloquei a porta 3389 no FORWARD, mesmo assim não deu reultado. Quanto às suas sugestões, vou alterar. valeu a dica. Em outro fórum um cara sugeriu colocar a porta 3389 também liberada no OUTPUT, mas minha política padrão para OUTPUT, é ACCEPT. Outra sugestão foi no PREROUTING E FORWARD da porta 3389, usar o -I ao invés do -A, para dar prioridade àquelas regras. Também não deu certo.


15. Re: TS no firewall [RESOLVIDO]

Radiske
Radiske

(usa Slackware)

Enviado em 12/10/2010 - 00:17h

Olá,

Experimente usar a seguinte linha com essas instruções.

iptables -t nat -A PREROUTING -i Interface_de_Entrada -p tcp --dport 3389 -j DNAT --to ip_do_servidor:3389

Olha, aconselho a resolver seu problema da seguinte forma: Coloque somente essa linha em um script de firewall e teste somente com ele.
Depois, se der certo, vá montando seu script aos poucos.
De qualquer forma, coloque essa instrução antes das instruções de bloqueio.

Atenciosamente,

Radiske


16. Re: TS no firewall [RESOLVIDO]

Rodrigo Hlatki
rodrigoh79

(usa Debian)

Enviado em 12/10/2010 - 18:28h

Acho que vou fazer o que o vcs sugeriram. Vou acrescentar somente as linhas do TS, testar, e se funcionar vou acrescentando o restante. Vou retirar essa linhas:

## ACCEPT (libera) pacotes de retorno da internet
# -------------------------------------------------------
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A OUTPUT -m state --state ESTABLISHED,RELATED,NEW -j ACCEPT
iptables -A FORWARD -m state --state ESTABLISHED,RELATED,NEW -j ACCEPT

Mas a primeira vez que coloquei prá funcionar esse firewall, lembro que coloquei somente a regra do Squid, o masquerade, e o TS. Dava o mesmo erro. Continuo na lida e agradeço as respostas do pessoal. Quarta a noite vou fazer mais um teste (depois que fechar o escritório). Valeu galera.


17. Re: TS no firewall [RESOLVIDO]

leonardo Souza
lejoso

(usa Debian)

Enviado em 13/10/2010 - 08:35h

"jejoso, é assim: o servidor é 10.1.1.150, e uma outra estação com a mesma faixa 10.1.1.0. Ambos sob a máscara 255.255.255.0".

Então, como estão no mesmo barramento as requisições nem passam pelo firewall. No TS apenas digite o ip do servidor que tem que acessar. O proxy também não tem nada a ver, pois ele serve para navegação apenas.


18. Re: TS no firewall [RESOLVIDO]

Rodrigo Hlatki
rodrigoh79

(usa Debian)

Enviado em 13/10/2010 - 09:56h

pois é lejoso, o estranho é isso. as estações e o servidor estão na mesma rede. Mas quando ligo o proxy não acessa mais. Quando tiro o proxy e coloco o modem de volta, funciona. É isso que me deixa indignado.


19. Re: TS no firewall [RESOLVIDO]

Alcimar
arc

(usa Slackware)

Enviado em 13/10/2010 - 16:53h

Achei que não conecta-se apenas na rede externa, caso não esteja conectando internamente também com o proxy habilitado fica dificil ajudar, pois o proxy não tem nada haver com TS. Verifica se a requisição esta chegando ao servidor TS.


20. Re: TS no firewall [RESOLVIDO]

Ricardo Vasconcellos
qxada07

(usa Slackware)

Enviado em 13/10/2010 - 18:26h

Amigo... Se a politica de INPUT e FORWARD já estão em DROP, vc não precisa dropar elas novamente nas outras linhas..... Caso vc tenha alguma duvida com relação ao firewall, sugiro alterar as politas de DROP e FORWARD para ACCEPT para realizar testes... Porém se seu acesso é dentro da rede interna, então seu problema não será no firewall..... da um tcpdump para cima do TS e tenta realizar a conexão para ver se a conexão esta chegando até o TS ou não...

tcpdump host IP_do_TS


21. Re: TS no firewall [RESOLVIDO]

Rodrigo Hlatki
rodrigoh79

(usa Debian)

Enviado em 14/10/2010 - 22:42h

Galera, parece que vai funcionar agora. Esta noite dei uma enxugada no firewall, e ficou funcionando. Vou ver como se comportará amanhã. O script ficou assim:
echo "----------------------------------"
echo "iniciando configuração do Firewall"
echo "----------------------------------"

sleep 3

# --------------Ativa Modulos-----------------------------------------
modprobe ip_tables
modprobe ip_conntrack
modprobe iptable_filter
modprobe iptable_mangle
modprobe iptable_nat
modprobe ipt_LOG
modprobe ipt_limit
modprobe ipt_state
modprobe ipt_REDIRECT
modprobe ipt_owner
modprobe ipt_REJECT
modprobe ipt_MASQUERADE
modprobe ip_conntrack_ftp
modprobe ip_nat_ftp

# ------------Zera regras-------------------------------------------
iptables -F
iptables -Z
iptables -X
iptables -t nat -F

# -------------Determina a politica padrao------------------------------------------
iptables -P INPUT DROP
iptables -P FORWARD DROP
iptables -P OUTPUT ACCEPT

# --------------Ativa roteamento no kernel-----------------------------------------
echo "1" > /proc/sys/net/ipv4/ip_forward
echo "1" > /proc/sys/net/ipv4/ip_dynaddr
echo "1" > /proc/sys/net/ipv4/tcp_syncookies
echo "1" > /proc/sys/net/ipv4/conf/all/rp_filter
echo "1" > /proc/sys/net/ipv4/conf/all/proxy_arp
echo "1" > /proc/sys/net/ipv4/icmp_echo_ignore_broadcasts
echo "0" > /proc/sys/net/ipv4/conf/all/accept_source_route
echo "0" > /proc/sys/net/ipv4/conf/all/accept_redirects
echo "1" > /proc/sys/net/ipv4/conf/all/secure_redirects
echo "1" > /proc/sys/net/ipv4/conf/all/log_martians
echo "1" > /proc/sys/net/ipv4/icmp_echo_ignore_all

# --------------Abre para a interface de loopback.--------------------
iptables -A INPUT -s 127.0.0.1 -i lo -j ACCEPT

iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A OUTPUT -m state --state ESTABLISHED,RELATED,NEW -j ACCEPT
iptables -A FORWARD -m state --state ESTABLISHED,RELATED,NEW -j ACCEPT

# --------------Libera o HTTP-----------------------------------------
iptables -A INPUT -p tcp --dport 80 -j ACCEPT
iptables -A INPUT -p tcp --dport 443 -j ACCEPT

# --------------DNS - Libera a resolucao de nomes----------------------
iptables -A INPUT -p tcp -m tcp --dport 53 -j ACCEPT
iptables -A INPUT -p udp -m udp --dport 53 -j ACCEPT
iptables -A INPUT -p tcp -m tcp --sport 53 -j ACCEPT
iptables -A INPUT -p udp -m udp --sport 53 -j ACCEPT

# --------------Mascaramento de rede para acesso externo---------------
iptables -t nat -A POSTROUTING -o ppp0 -j MASQUERADE

# --------------Redirencionar portas 80 para 3128----------------------
iptables -A INPUT -p tcp -i eth1 --dport 3128 -j ACCEPT
iptables -t nat -A PREROUTING -i eth1 -p tcp --dport 80 -j REDIRECT --to-port 3128

## Liberando porta 443 do Squid (sem isso não funciona orkut, hotmail, etc)
## não adianta redirecionar a porta 443 para a 3128, pois https não funciona
## com Squid transparente.
# -------------------------------------------------------
iptables -A FORWARD -i eth1 -p tcp --dport 443 -j ACCEPT

# -------------Libera a conexao para a rede interna----------------------
iptables -t nat -A POSTROUTING -o eth1 -j MASQUERADE

# --------------Abre para uma faixa de endereco da rede local--------------
iptables -A INPUT -p tcp --syn -i eth1 -j ACCEPT

# --------------Abre rede-----------------------------------------------
iptables -A INPUT -i eth1 -j ACCEPT
iptables -A OUTPUT -o eth1 -j ACCEPT
iptables -A INPUT -i ppp0 -j ACCEPT
iptables -A OUTPUT -o ppp0 -j ACCEPT

# -------------Libera o MSN---------------------------------------------
iptables -A INPUT -p tcp --dport 1863 -j ACCEPT

# -------------Terminal Server------------------------------------------
iptables -A INPUT -p tcp --dport 3389 -j ACCEPT
iptables -A FORWARD -i eth1 -p tcp --dport 3389 -j ACCEPT
iptables -t nat -A PREROUTING -p tcp -i ppp0 --dport 3389 -j DNAT --to 10.1.1.150
#iptables -t nat -A POSTROUTING -d 10.1.1.150 -j SNAT --to 10.1.1.1

# -------------VNC------------------------------------------
#iptables -A INPUT -p tcp --dport 5900 -j ACCEPT
#iptables -A INPUT -p tcp --dport 5800 -j ACCEPT

# -------------Liberando SSH------------------------------------------
iptables -A INPUT -p tcp --dport 22 -j ACCEPT

## Libera o POP SMTP
# -------------------------------------------------------
#iptables -A INPUT -p tcp --dport 25 -j ACCEPT #SMTP
#iptables -A INPUT -p tcp --dport 110 -j ACCEPT #POP
#iptables -A INPUT -p tcp --dport 465 -j ACCEPT #SMTP
#iptables -A INPUT -p tcp --dport 587 -j ACCEPT #SMTP
#iptables -A INPUT -p tcp --dport 995 -j ACCEPT #POP

# Protecao contra port scanners
# -------------------------------------------------------
iptables -N SCANNER
iptables -A SCANNER -m limit --limit 5/m -j LOG --log-level 6 --log-prefix "FIREWALL: port scanner: "
iptables -A SCANNER -j DROP
iptables -A INPUT -p tcp --tcp-flags ALL FIN,URG,PSH -i ppp0 -j SCANNER
iptables -A INPUT -p tcp --tcp-flags ALL NONE -i ppp0 -j SCANNER
iptables -A INPUT -p tcp --tcp-flags ALL ALL -i ppp0 -j SCANNER
iptables -A INPUT -p tcp --tcp-flags ALL FIN,SYN -i ppp0 -j SCANNER
iptables -A INPUT -p tcp --tcp-flags ALL SYN,RST,ACK,FIN,URG -i ppp0 -j SCANNER
iptables -A INPUT -p tcp --tcp-flags SYN,RST SYN,RST -i ppp0 -j SCANNER
iptables -A INPUT -p tcp --tcp-flags SYN,FIN SYN,FIN -i ppp0 -j SCANNER

# ----------------Protecao contra tronjans-----------------------------------
iptables -N TROJAN
iptables -A TROJAN -m limit --limit 5/m -j LOG --log-level 6 --log-prefix "FIREWALL: trojan: "
iptables -A TROJAN -j DROP
iptables -A INPUT -p tcp -i ppp0 --dport 666 -j TROJAN
iptables -A INPUT -p tcp -i ppp0 --dport 666 -j TROJAN
iptables -A INPUT -p tcp -i ppp0 --dport 4000 -j TROJAN
iptables -A INPUT -p tcp -i ppp0 --dport 6000 -j TROJAN
iptables -A INPUT -p tcp -i ppp0 --dport 6006 -j TROJAN
iptables -A INPUT -p tcp -i ppp0 --dport 16660 -j TROJAN

# Protecao contra trinoo
# -------------------------------------------------------
iptables -N TRINOO
iptables -A TRINOO -m limit --limit 5/m -j LOG --log-level 6 --log-prefix "FIREWALL: trinoo: "
iptables -A TRINOO -j DROP
iptables -A INPUT -p tcp -i ppp0 --dport 1524 -j TRINOO
iptables -A INPUT -p tcp -i ppp0 --dport 27444 -j TRINOO
iptables -A INPUT -p tcp -i ppp0 --dport 27665 -j TRINOO
iptables -A INPUT -p tcp -i ppp0 --dport 31335 -j TRINOO
iptables -A INPUT -p tcp -i ppp0 --dport 34555 -j TRINOO
iptables -A INPUT -p tcp -i ppp0 --dport 35555 -j TRINOO

##Negar Ident
# -------------------------------------------------------
iptables -A INPUT -p tcp -m tcp --dport 113 -j REJECT --reject-with tcp-reset

## Reset em conexoes para portas desconhecidas
# ---------------------------------------------------------
iptables -A INPUT -p tcp -j REJECT --reject-with tcp-reset

## Esta regra e coracao do firewall
# -------------------------------------------------------
iptables -A INPUT -p tcp --syn -j DROP

echo "----------------------------------"
echo "Firewall configurado com sucesso!"
echo "----------------------------------"
sleep 1

Mas ainda fiquei com uma dúvida. Alguns de vcs me alertaram que as linhas abaixo estavam deixando meu INPUT e FORWARD como ACCEPT. Removi essas linhas mas aí as estações ficam sem acesso à internet.

iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A OUTPUT -m state --state ESTABLISHED,RELATED,NEW -j ACCEPT
iptables -A FORWARD -m state --state ESTABLISHED,RELATED,NEW -j ACCEPT

Tem alguma outra forma de modificar de forma que fique mais seguro? Ainda vou ver amanhã como se comporta o firewall. E ainda tenho que ajustar para acesso à alguns bancos, tenho que configurar para acessar o conectividade social. Grato a todos que ajudaram. Vamos ver se segue funcionando.


22. Re: TS no firewall [RESOLVIDO]

Marcelo
hrapytor

(usa Debian)

Enviado em 17/10/2010 - 13:03h

Olá Rodrigo,

Tá muito estranho mesmo seu problema, mas é como o lejoso disse se a conexão é interna não tem necessidade de passar pelo Gateway.

Vai uma dica:

Para dar um pouco mais de segurança ao seu servidor e sua rede interna eu configuraria o seu modem para fazer a conexão com a Internet e liberando um ip 192.168.1.3 ou qualquer outro para seu servidor. Somente com esse procedimento vc eliminaria muitas linhas de regras no seu firewall.

No servidor linux deixaria somente rodando DHCP/Squid/ Iptables(somente com as regras necessárias).

Bom se vc quiser fazer esse teste retirei algumas regras do teu fírewall pode ter faltado alguma mas já é o começo.

## Determina a politica padrao
# -------------------------------------------------------
iptables -P INPUT DROP
iptables -P FORWARD DROP
iptables -P OUTPUT ACCEPT

## ACCEPT (libera) pacotes de retorno da internet
# -------------------------------------------------------
iptables -A INPUT -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT
iptables -A FORWARD -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT

## Mascaramento de rede para acesso externo
# -------------------------------------------------------
iptables -t nat -A POSTROUTING -o eth1 -j MASQUERADE


## Ativa roteamento no kernel
# -------------------------------------------------------
echo "1" > /proc/sys/net/ipv4/ip_forward


## Abre para a interface de loopback E TB REDE INTERNA.
# -------------------------------------------------------
iptables -A INPUT -i lo -j ACCEPT
iptables -A INPUT -i eth1 -j ACCEPT #ETH1 - rede interna


#FORWARD INTERNO
iptables -A FORWARD -s 10.0.0.0 -d 10.0.0.0 -j ACCEPT

Posta ai se vc consegui com minha dica ou de outra forma.

Até.


23. Re: TS no firewall [RESOLVIDO]

Rodrigo Hlatki
rodrigoh79

(usa Debian)

Enviado em 18/10/2010 - 10:12h

Galera, o problema era o seguinte: o firewall do Windows Server 2008. Como todos haviam comentado (e eu inclusive, achava muito estranho) o acesso local so TS não passaria pelo firewall. Mas o firewaal do server 2008 estava barrando o redirecionamento do meu proxy/firewall. Agradeço a todos que ajudaram e opinaram, pois melhorei meu script com suas dicas. Uma dúvida que ficou foi aobre aquelas linhas que vc pediram prá retirar do script, sem as quais fico sem acesso à net. E também se tem algum problema deixar o firewall do server 2008 desativado, sendo que tenho um firewall dedicado na rede. Esse é o espírito do fórum, ajudar a galera. Muito grato a todos.


24. Re: TS no firewall [RESOLVIDO]

Junior Rocha
junior

(usa Ubuntu)

Enviado em 18/10/2010 - 14:54h

Que bom que seu problema foi resolvido.
Quanto a questão de deixar o firewall do Windows 2008, eu aconselho você a deixá-lo ativado.
Visto que o firewall Linux, que é um firewall de borda, irá apenas proteger de ataques externos, sendo que muitas vezes, nossos servidores são alvos de ataques de estações da rede interna.

Agora que você identificou o foco do problema, otimize seu script e mesmo não gostando dos comentários do "irado", siga os link's que o mesmo postou que lhe ajudará a entender melhor o iptables e deixar seu firewall cada vez mais robusto e eficaz.

Um abraço.



  
01 02 03



Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts