IPTables - Redireciona o tráfego com base no país

IPTables - Redireciona o tráfego com base no país

Existe alguma maneira de permitir o tráfego TCP apenas de países especificados em uma porta especificada e o restante do tráfego redirecionado para outro IP/porta usando iptables?

Responder1

Você precisará configurar e atualizar o banco de dados geoip antes de funcionar.

iptables -I INPUT -m geoip -p tcp --dport ### --src-cc CN -j ACCEPT
iptables -A PREROUTING -m geoip -p tcp --dport ###  --src-cc ! CN -j DNAT --to-destination 1.1.1.1:333

substitua 1.1.1.1 pelo seu IP e 333 pela porta desejada.

Aqui está um tutorial para ajudá-lo: http://xmodulo.com/block-network-traffic-by-country-linux.html Aparentemente, este link morreu, então estou adicionando um para arquivo da Internet.

https://web.archive.org/web/20190410142529/http://xmodulo.com/block-network-traffic-by-country-linux.html

Você precisará atualizar periodicamente os bancos de dados, pois às vezes os endereços IP mudam de proprietário e de país.

Responder2

A sintaxe correta é:

iptables -I INPUT -m geoip -p tcp --dport xxx --src-cc CN -j ACCEPT
iptables -A PREROUTING -p tcp --dport xxx --src-cc ! CZ,SK -j DNAT --to-destination 1.1.1.1:333

Mas sua resposta estava correta.

informação relacionada