Cara hacker é tudo uns almofadinhas... gays ou sei la .. Sõ mulherzinhas qu gostam de saber da vida dos outros...
Hacker.. vão se fud**
Versão Imprimível
Cara hacker é tudo uns almofadinhas... gays ou sei la .. Sõ mulherzinhas qu gostam de saber da vida dos outros...
Hacker.. vão se fud**
Bom pelo menos as minhas defesas com ipatables estão boas... pois o cara tá tentando desde o dia 13/08 e ainda não conseguiu nada...
Alem do mais dei uma reforçada nas senhas... vamo ver até onde meu servidor aguenta.
Agora eu preciso achar um modo de barrar as conexões dele, pois como eu disse ele tá conseguindo fazer requisições, e ainda não conseguiu entender como ele está, pois a politica padrão para INPUT é DROP e somente liberei ssh para um determinado ip.
troca a porta!
verifica de onde tá vindo essas requisições...pega o ip do desgraçado e bloqueia no iptables
- feche todas as portas que nao for usar do servidor, libere ssh apenas para um IP da sua rede interna
- gere logs com iptables
- Analise os logs do iptables e trave o IP do cara
- nao permita de forma alguma login como root.
Já é um bom começo.
Bom,pelo menos no primeiro caso,ficou claro que sempre é bom utilizar versões estáveis e que deve manter abertas apenas portas necessárias..bom saber...
Galera, fiz o seguinte dei uma revisada nas minhas regras e percebi que tinha uma regra que tava abrindo uma brecha permitindo conexões de fora:
iptables -A INPUT -p tcp --tcp-flags SYN,ACK,FIN,RST SYN -m limit --limit 1/s -j ACCEPT
Removi essa e outras regras parecidas e dai parece ter resolvido o problema. Tb mandei fazer log de todas as conexões com destino a porta 22 com exceção do ip que liberei.
iptables -A INPUT -p tcp -i eth0 -s ! 200.xxx.xxx.xxx -m limit --limit 20/hour --dport 22 -j LOG --log-prefix="Acesso nao Autorizado"
Instalei o SNORT, removi usuários desnecessários do sistema e tirei acesso ao shell aos demais.
Agora me respondam uma coisa, essa regra estava liberando o acesso creio eu por ser genérica. Como posso fazer com que essa regra seja encaixada sem afetar as outras. Já me falaram para criar outra CHAIN mas não consegui entender bem.
Como eu nao sou adepto ao linux e sim ao bsd, deixa eu ver se consigo entender..
iptables -A INPUT -p tcp --tcp-flags SYN,ACK,FIN,RST SYN -m limit --limit 1/s -j ACCEPT
o iptables aceita conexoes entrantes com as flags SYN, ack, fin, rst, com o limite de 1 pacote por segundo....
acho q essa regra deixaria qualquer porta aberta nao acha?
se estiver errado, coloquem a resolucao pra todos please..
:)
:(6)
-------------------------------
Apaguei tudo, pois o desatento aqui pegou o bonde andando, e ainda quis ir na janela.
Não tinha nada a ver com o assunto mais.
Olha pessoal, fiz os procedimentos conforme descrito no meu posta anterior e agora tá tudo na santa paz.
O iptables está gerando os logs e as tentativas estão sendo barradas.
Agora um fato importante, fui consultar outros amigos que gerenciam firewalls e isso está acontecendo tb com todos eles, portanto acho que está sendo um tipo de ataque geral por brute force num range de ips, pois está afetando vários servidores.
Agora um pergunta, tem como denucniar isso para que alguem possa agir? Onde posso fazer isso?
Log de tentativa eu geralmente tenho uns 10 por dia, vindo de vários cantos do mundo.
Aug 25 18:55:27 boss kernel: SSH Tentativa externo IN=eth1 OUT= MAC=00:0a:e6:b1:97:86:00:04:16:02:0f:9d:08:00 SRC=67.167.12.227 DST=192.168.1.3 LEN=60 TOS=0x00 PREC=0x20 TTL=46 ID=28583 DF PROTO=TCP SPT=2577 DPT=22 WINDOW=5840 RES=0x00 SYN URGP=0
Note que os cara geralmente tentam na 22 (não vi nenhum log de alguem tentando na minha porta SSH).
O meu iptables está da seguinte forma:
Como padrão eu bloquiei tudo
Código :
#Bloqueando toda a entrada iptables -t filter -P INPUT DROP #Bloqueando o redirecionamento iptables -t filter -P FORWARD DROP #A saida por padrão será liberada iptables -t filter -P OUTPUT ACCEPT #Bloquando POSTROUTING iptables -t nat -P POSTROUTING DROP #Bloqueando PREROUTING iptables -t nat -P PREROUTING DROP
Agora para poder liberar conexões eu preciso liberar tanto o INPUT, FORWARD e o PREROUTING. Se não ele não deixa acessar.
Um exemplo interessante é que eu defini quais seriam os DNS que seriam acessados pela minha rede, permitindo acesso somente a eles.
E a volta, somente se for deles.
Não sei se é possível no seu caso, mas no meu eu só permito acesso a um servidor de e-mail (o da empresa, que é externo).
SSH eu mudei de porta, dei permissão a somente um usuário, e este não tem permissão pra nada (nem diretório ele tem).
Também editei uma configuração no SSH para ele limitar as conexões e começar a negar a partir de um tanto, por ex:
Ou seja ele aceita no máximo 10 conexões simultanes, negando 50% quando acima de 5.Código :
MaxStartups 5:50:10
E log por todo firewall, se o cara espirrar na frente do computador, eu to sabendo que ele tá tentando passar vírus.
A sim, minhas regras são restritivas, tanto pra fora, quanto pra dentro da rede.
Para mim todo usuário é mau.
Ae edmafer, gostei da forma com que você implementa sua segurança e já vou até adotar algumas de suas dicas.
Agora me responda uma coisa: quais regras são necessárias para eu colocar a chain PREROUTING como DROP e liberar acesso web (http) sendo que uso proxy transparente. Quando fui fazer esse firewall eu não obtive sucesso usando politica DROP para a chain PREROUTING.
Se puderem pelo menos me explicar quais serviços passam pelas chains PREROUTING já me ajudaria, pois esse é o maior problema.
Alguem pode me dar um empurrão? Tô querendo fazer um firewall parrudo!!
Maverick, todas (se eu estiver errado por favor alguém me corrija).
Quando você definir suas regras padrões como DROP (veja no exemplo do post anterior), você precisará liberar para tudo o que for necessário (mas somente o necessário).
Tanto que meus log's são configurados nas CHAINS PREROUTING, já que se passa por elas antes de qualquer outra regra. Mas como o todo admim é desconfiado, eu bloqueio as outras opções também como INPUT e FORWARD (se for o caso).
Um exemplo para você liberar um acesso fazendo um NAT normal seria o seguinte:
Esta é uma regra geral, mas para todos os usuários eu limito o pop e o smtp a um único servidor de e-mail.
Para isto é só adicionar um destino -d ip_server_mail.
Código :
ip=sua_faixa_de_ip iptables -A FORWARD -s $ip -d 0.0.0.0/0 -p tcp -m multiport --dport 25,80,110 -j ACCEPT iptables -A FORWARD -d $ip -p tcp -m multiport --sport 25,110 -j ACCEPT iptables -t nat -A PREROUTING -s $ip -d 0.0.0.0/0 -p tcp -m multiport --dport 25,80,110 -j ACCEPT iptables -t nat -A PREROUTING -d $ip -p tcp -m multiport --sport 25,110 -j ACCEPT iptables -t nat -A POSTROUTING -s $ip -d 0.0.0.0/0 -p tcp -m multiport --dport 25,80,110 -j MASQUERADE
Você pode notar que não liberei consulta ao DNS, isto por que meu servidor de DNS é local, então eu o libero em outra regra:
O que é uma boa dica de segurança, já que ataques podem ser feitos pelo DNS.
Código :
#liberando a rede interna para consultar DNS no servidor iptables -A INPUT -s $ip -i $redein -d $ipserver -p udp --dport 53 -j ACCEPT iptables -A FORWARD -s $ip -d $ipserver -p udp --dport 53 -j ACCEPT iptables -t nat -A PREROUTING -s $ip -d $ipserver -p udp --dport 53 -j ACCEPT
E um exemplo de log, seria o meu de SSH:
Código :
iptables -t nat -A PREROUTING -i $IFACE_EXT -p tcp --dport 22 -m state --state ! ESTABLISHED,RELATED -m limit --limit 5/s -j LOG --log-prefix "SSH Tentativa externo"
Eu gravo log tanto para os acessos externos quanto internos.
Há isto é importante, não permita acesso a sua máquina pela parte externa na porta do SQUID, não é só por questão de segurança, mas você não ia querer um monte de usuário pendurado no teu proxy, para tentar escapar das regras de uma empresa, ou faculdade.
E uma dica bastante batida:
http://focalinux.cipsga.org.br/guia/...w-iptables.htm
Qualquer dúvida posta ai, que tentamos te ajudar.
Desculpe, não me ative ao proxy transparente. Mas vale o exemplo do MASQUERADE.
Para proxy transparente é simples:
(agora vou ser experto eu vou mandar sem o code)
Abaixo, estou liberando o acesso da rede interna ao meu apache, mas tudo que for na porta 80 com destino diferente do servidor...
#Liberando para acesso interno
iptables -A INPUT -s $ip -i $redein -d $ipserver -p tcp --dport 80 -j ACCEPT
#Liberando o roteamento para esta porta
iptables -A FORWARD -s $ip -i $redein -d $ipserver -p tcp --dport 80 -j ACCEPT
#Liberando o PREROUTING para esta porta
iptables -t nat -A PREROUTING -s $ip -i $redein -d $ipserver -p tcp --dport 80 -j ACCEPT
... eu redireciono para a porta do squid:
iptables -t nat -A PREROUTING -s $ip -i $redein -d ! $ipserver -p tcp --dport 80 -j REDIRECT --to-port 3128
Qualquer dúvida avise.
[]'s
Cara, valew mesmo. Obrigado a todos.
Vou dar uma lida no Guia avançado e ver se consigo extrair formas mais avançadas de bloqueio. Se o resultado desse firewall ficar bom, eu prometo postar o resultado aqui.
Obrigado mais uma vez.