Проброс портов (DNAT)

Проброс портов (DNAT) с помощью iptables

Пошаговое руководство по перенаправлению внешних портов маршрутизатора на внутренние серверы в локальной сети.

Часть 1: Проброс портов на маршрутизаторе

Для предоставления доступа к внутренним сервисам (например, веб-серверу или нестандартному SSH) из внешней сети, необходимо настроить правила Destination NAT (DNAT).

Выполните следующие команды на вашем маршрутизаторе, заменив имя_интерфейса на ваш внешний сетевой интерфейс, а внешний_порт, ip_назначения и внутренний_порт на соответствующие значения для вашей сети.

Пример проброса порта для Web-сервера:

Copy

iptables -t nat -A PREROUTING -j DNAT -p tcp -i имя_интерфейса --dport внешний_порт --to-destination ip_назначения:внутренний_порт

Пример проброса порта для нестандартного SSH:

Copy

iptables -t nat -A PREROUTING -j DNAT -p tcp -i имя_интерфейса --dport внешний_порт --to-destination ip_назначения:внутренний_порт

Часть 2: Сохранение правил

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

Copy

iptables-save > /etc/sysconfig/iptables

Для корректной работы сохраненных правил убедитесь, что служба iptables добавлена в автозагрузку (через systemctl enable iptables).

Часть 3: Проверка доступности сервисов

После настройки правил рекомендуется проверить доступность сервисов с внешнего клиента (например, с машины провайдера или удаленного узла).

Для проверки проброса SSH:

Copy

ssh имя_пользователя@ip_адрес_роутера -p внешний_порт

Для проверки Web-сервера:

Откройте браузер на клиенте и перейдите по адресу:

Copy

http://ip_адрес_роутера:внешний_порт

Если соединение не устанавливается, проверьте, включен ли форвардинг пакетов на маршрутизаторе (net.ipv4.ip_forward = 1) и не блокируются ли пакеты цепочкой FORWARD.