Parece que você está tentando fazer algo significativamente mais complicado do que eu acho que você quer.
O que você está pedindo:
Bloqueie uma string específica na carga útil (camada 7) de um pacote. Isso impedirá que alguém envie um e-mail ou mensagem instantânea mencionando uma string "linuxcore" ou postando comentários em fóruns sobre isso.
O que eu acho que você quer:
Redirecionar pacotes destinados a qualquer endereço IP resolvido pelo nome domain.com e destinado à porta 8888 para a porta 7777.
Assumirei o que você acha que quer, já que o primeiro não faz muito sentido. Eu também estou assumindo que você não está interessado em combinar "foo.domain.com". Lembre-se de que são tabelas ip e não tabelas dns .
Neste caso, as linhas 1, 2 e 4 são desnecessárias. E você não quer correspondência de string. iptables
é inteligente o suficiente para transformar nomes em endereços IP apropriados e multiplexar as regras conforme necessário. Além disso, como você está usando PREROUTING
, saiba que isso só irá corresponder ao entrar em seu sistema , não pacotes deixando seu sistema (se você quiser combinar pacotes deixando você precisa usar OUTPUT
, ou alternativamente ter um de cada).
Essa regra ficaria assim:
iptables -t nat -A PREROUTING -d domain.com -p tcp --dport 8888 -j REDIRECT --to-ports 7777