Qual é a diferença entre -j DROP e -j STEAL?

9

Costumo ver que as pessoas definem o STEALalvo nas regras do iptables. É possível obter este alvo instalando (no debian) xtables-addons-commone xtables-addons-dkms. Fiquei curioso para saber por que as pessoas preferem STEALmais DROP, então verifiquei o manual , mas há apenas as seguintes informações:

   STEAL
       Like the DROP target, but does not throw an error like DROP when used
       in the OUTPUT chain.

Alguém sabe qual erro? Por exemplo, podemos usar as duas regras a seguir:

-A OUTPUT --protocol tcp --match multiport ! --dports 80,443 --match set --match-set bt_level1 dst --jump STEAL

e:

-A OUTPUT --protocol tcp --match multiport ! --dports 80,443 --match set --match-set bt_level1 dst --jump DROP 

Qual a diferença entre eles?

Mikhail Morfikov
fonte

Respostas:

3

Drop envia um pacote de erro quando usado com a cadeia OUTPUT. Assim como REJECT retorna um pacote de erro quando usado com a cadeia INPUT. STEAL não.

EDIT: Por bahamat, as extensões IPtables são de fato feitas pela equipe do netfilter.

Rfelsburg
fonte
1
Essas extensões são fornecidas pela equipe do netfilter. Na verdade, eles escrevem iptablese os módulos do kernel que o acompanham. O código não está do lado de fora porque é de uma parte não confiável. É porque o código é experimental.
bahamat
É bom saber que fiquei com a impressão de que era mantido por um grupo externo.
Rfelsburg