Em Quinta 25 Janeiro 2007 12:34, Maxwillian Miorim escreveu: > On 1/25/07, badfile <[EMAIL PROTECTED]> wrote: > > Estou acompanhando o tópico, para me ajudar a entender o iptables. > > O Squid trabalha pela ordem das acls e o iptables por cadeia. > > O que seria uma cadeia? Se eu dropo tudo no início, como raciocinar para > > colocar as regras na ordem correta? Estou pesquisando, mas Isso ainda não > > entendi. > > Peço às boas almas que me retirem da escuridão... > > O iptables trabalha como uma pilha: as regras são empilhadas em grupos > chamados chains e depois são processadas "de cima para baixo" (se tu é > programador seria um stack, literalmente), havendo bloqueio ou > liberação explicita o pacote é liberado. > > Cadeias e chains são a mesma coisa: grupos de regras ordenadas. > > A política DROP (acho que foi isso que tu quis dizer com "se eu dropo > tudo no início") faz o seguinte: depois de processar todas as regras, > se não houver nenhuma ação, a ação tomada é o DROP. Há casos, como o > henrique citou, em que colocando o DROP (explicitamente, na forma de > regra e não política) no fim das regras facilita muito a vida dos > "desavisados", assim quando limpar as regras, com iptables -F, por > exemplo, não haverá nada restringindo pois a ação padrão é ACCEPT. > Além disso, com a regra ativa e posicionada após as demais continua > bloqueando da mesma forma, é só uma "prevenção a acidentes de > trabalho". :D
A alma do Miorim será salva. Entendi a idéia quando uso o drop e um grupo de regras (chain ou cadeia) seria: iptables -A INPUT -m state ... -j ACCEPT iptables -A INPUT -i eth0... -j ACCEPT A partir daí o raciocínio para empilhar as chains seria: primeiro permitir conexões (input), depois liberar o tráfego interno da rede (forward), redirecionamentos (postrouting) e finalmente bloquear tudo que não foi liberado (input/output drop)? Se eu estiver correto, somente as regras com drop podem ficar em qualquer lugar (exceto por uma questão de organização)? badfile