Порт перенаправления брандмауэра OpenWRT IPv6

441
jacob_pro

Кто-нибудь как перенаправить входящий порт на другой порт для адреса IPv6 в OpenWRT?

Нет никакого NAT, вовлеченного только обычный глобальный адрес IPv6.

Я пытаюсь изменить порт SSH для нескольких серверов; внутренне перенаправить произвольный номер порта на 22. Оставаясь на порту 22 для локальной сети.

Например, [2345 :: 1]: 5000 -> OpenWRT -> [2345 :: 1]: 22

При использовании эквивалентного IPv4 NAT эта конфигурация очень проста, потому что порты могут быть легко настроены с переадресацией портов.

Большое спасибо

1
Я не уверен, почему бы вам просто не настроить эти серверы для _добавок_ прослушивания порта 5000 ... grawity 5 лет назад 0
^, а затем просто заблокируйте порт 22 для входящих соединений WAN. confetti 5 лет назад 0
да, это было бы альтернативой, но сделать это один раз на маршрутизаторе предпочтительнее, чем настроить много серверов jacob_pro 5 лет назад 0

2 ответа на вопрос

0
grawity

На самом деле вы можете использовать такую ​​же переадресацию портов на основе DNAT в Linux ip6tables. Основное отличие состоит в том, что вы не меняете адрес назначения; с другой стороны, вам нужно сопоставить существующий адрес.

-t nat -I PREROUTING -d 2345::1 -p tcp --dport 5000 -j DNAT --to-destination [2345::1]:22 

Конечно, с IPv6 вам не нужно маскирование на основе SNAT, но для начала это совершенно отдельное правило брандмауэра, поэтому его можно просто пропустить.

Я не знаю, как это переводится в OpenWRT (за исключением того, что вам может понадобиться kmod-ipt-nat6пакет), но я подозреваю, что это что-то вроде:

config redirect option family ipv6 option src wan6 option src_dip 2345::1 option proto tcp option src_dport 5000 option target DNAT option dest_ip 2345::1 option dest_port 22 
Спасибо большое. Я установил kmod-ipt-nat6 и использую следующую команду (пока у меня нет работы с конфигурацией openwrt UCI): `ip6tables -t nat -I PREROUTING -d IPV6_ADDRESS -p tcp --dport 5000 - j DNAT --to-destination [IPV6_ADDRESS]: 22`, однако он будет работать только в том случае, если я также открою порт 22 от WAN до устройства в брандмауэре - что оставляет меня в затруднении с первоначальной проблемой, связанной с открытием 22. редирект от 5000 работает - но как я могу ограничить доступ только 5000, а не 22? jacob_pro 5 лет назад 0
насколько я могу видеть, "перенаправление конфигурации" не поддерживается для ipv6? https://github.com/openwrt/luci/issues/925 jacob_pro 5 лет назад 0
Вы можете разрешить подключения DNAT к порту 22 (сначала), а затем ОТМЕНИТЬ любые НОВЫЕ подключения к порту 22 в цепочке FORWARD. Tomek 5 лет назад 0
0
jacob_pro

В настоящее время невозможно использовать «перенаправление конфигурации» для IPv6 в брандмауэре 3 OpenWRT.

Однако я смог достичь этого вручную, используя следующие правила:

ip6tables -t nat -I PREROUTING -d IPV6_ADDRESS_HERE -p tcp --dport 5000 -j DNAT --to-destination [IPV6_ADDRESS_HERE]:22 ip6tables -A zone_wan_input -m conntrack --ctstate DNAT -j ACCEPT ip6tables -A zone_wan_forward -m conntrack --ctstate DNAT -j zone_(ZONE_NAME)_dest_ACCEPT