3

Есть ли способ, как разрешить трафик TCP только из указанных стран на указанный порт, а остальная часть трафика перенаправить на другой IP/ порт с помощью iptables?

2 ответа2

3

Вам нужно будет настроить и обновить базу данных geoip, прежде чем она заработает.

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

замените 1.1.1.1 вашим IP и 333 на любой порт, который вы хотите.

Вот руководство, чтобы помочь вам:http://xmodulo.com/block-network-traffic-by-country-linux.html

Вам нужно будет периодически обновлять базы данных, так как иногда IP-адреса меняют владельцев и страны.

0

Правильный синтаксис:

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

Но ваш ответ был верным.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .