У меня есть две машины, machine1 настроен с сетью 192.168.1.0/24 и machine2 с сетью 10.10.0.0/24.

Я отбросил связь между двумя сетями с помощью iptables -P FORWARD DROP . Но я хочу разрешить FTP-соединения с и с machine2 в активном режиме.

Я делаю правило, как показано ниже, чтобы достичь этого, но когда я проверяю его не работает.

iptables –A FORWARD –s 192.168.1.0/24 –d 10.10.0.1 –p tcp –-dport 20:21 –m state -–state NEW,ESTABLISHED –j ACCEPT
iptables –A FORWARD –d 10.10.0.1 –s 192.168.1.0/24 –p tcp –-dport 20:21 –m state –-state NEW,ESTABLISHED –j ACCEPT

Можете ли вы дать некоторую помощь, чтобы понять, почему она не работает?

1 ответ1

1

Прежде всего; если ваше правило удаления является первым в цепочке, к вашим следующим правилам ничего не дойдет - вам нужно иметь это правило после разрешающих правил.

Это двустороннее общение, поэтому вам нужно иметь правила в обоих направлениях. Нечто подобное, повторяемое для порта 20, должно работать, если ваше правило сброса следует за ними.

iptables -A INPUT  -p tcp --sport 21 -m state --state NEW,ESTABLISHED -j ACCEPT
iptables -A OUTPUT -p tcp --dport 21 -m state --state ESTABLISHED -j ACCEPT

Вы должны иметь правила пересылки, которые будут варьироваться в зависимости от вашей сетевой топологии; если они применяются на маршрутизаторе, что мне не ясно из вашего описания, статический маршрут должен быть установлен там, как вы, очевидно, и сделали. При необходимости измените условия состояния (если это не имеет смысла, дайте мне знать).

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