Назад | Перейти на главную страницу

Прочтите миллион вопросов / ответов о перенаправлении пакетов iptables на локальный порт, и ответы не соответствуют моему контексту

Моя таблица фильтров имеет политику удаления. (Я очень хочу этого, при необходимости выколачивайте дыры) Я хочу, чтобы nat table перехватывала пакеты, идущие на 443, и отправляла их на любой другой порт на той же машине, которую я выберу.

Мои вопросы:

  1. Если NAT получает пакеты на 443, как мне получить эти пакеты на мой веб-сервер на том же компьютере, если в таблице фильтров есть политика DROP?

  2. Когда NAT получает пакеты (PREROUTING) из Интернета и перенаправляет их на внутренний порт localhost, означает ли это, что сетевой интерфейс переключается на возвратную петлю, или публичный интерфейс все еще используется здесь?

  3. Если я устанавливаю правило для пакетов PREROUTING, означает ли это, что я должен автоматически устанавливать правила для цепочки INPUT?

  4. Если я просто хочу скрыть, что порт моих служб - это перенаправление, которое я хочу, или пересылка, поскольку пакеты остаются в той же машине?

пример: (это не работает для меня и пробовал много других комбинаций)

NAT- iptables -t nat -A PREROUTING -p tcp --dport 443 -j DNAT --to-destination serverIP: порт

ФИЛЬТР-: ПАДЕНИЕ ВВОДА [45: 2424]: ПРИНЯТЬ ВПЕРЕД [0: 0]: ПРИНЯТЬ ВЫВОД [52: 5840] -A ВВОД -s «У меня здесь домашний IP-адрес» -p tcp -m tcp --dport sshPort - j ПРИНЯТЬ (мне нужен только ssh) -A INPUT -i lo -j ACCEPT -A INPUT -s 127.0.0.0/8! -i lo -j REJECT --reject-with icmp-port-unreachable

Спасибо всем, кто имеет хороший опыт и готов поделиться.