Открыть сервисСервис

Открытие сетевых портов

Открытие сетевых портов — это настройка программного или аппаратного средства, в результате которой сетевые соединения к определённым номерам портов на компьютере перестают блокироваться и становятся доступными извне. Порты — это логические точки обмена данными в протоколах TCP и UDP, нумерация которых идёт от 0 до 65535. Закрытый порт не принимает входящие соединения, а открытый — принимает, что необходимо для работы серверов, удалённого доступа, онлайн-игр, торрент-клиентов и ряда других приложений.

Общие принципы

Прежде чем открывать порт, необходимо определить, какой именно номер требуется, какой протокол используется (TCP или UDP или оба), и какое приложение или служба слушает этот порт. Открытие порта на самом компьютере не гарантирует доступ из интернета: соединение должно пройти через все средства защиты на пути — локальный файрвол, роутер (если компьютер находится за NAT), и, при необходимости, сторонний файрвол провайдера.

Брандмауэр Windows

В Windows 10 и 11 управление правилами осуществляется через оснастку «Брандмауэр Windows в режиме повышенной безопасности» (wf.msc). Порядок действий:

  1. Открыть оснастку wf.msc через меню «Выполнить».
  2. В дереве слева выбрать «Правила для входящих подключений».
  3. Нажать «Создать правило…» в панели действий.
  4. Выбрать тип правила «Для порта» и нажать «Далее».
  5. Указать протокол (TCP или UDP) и номер порта или диапазон (например, 25565 или 8000-8100).
  6. Разрешить подключение.
  7. Применить правило ко всем профилям сети (домашняя, рабочая, публичная) либо только к нужным.
  8. Задать имя правила и завершить создание.

Для программ, а не портов, можно создать правило типа «Для программы», указав путь к исполняемому файлу. В домашних редакциях Windows 10 и 11 встроенный брандмауэр не позволяет создавать правила для исходящих подключений; для этого используются сторонние утилиты, например, WFP filtering API или утилиты вроде TinyWall.

Брандмауэр Linux

В большинстве дистрибутивов Linux используется iptables или его современная замена nftables. Примеры команд:

`` sudo iptables -A INPUT -p tcp --dport 8080 -j ACCEPT sudo iptables -A INPUT -p udp --dport 51820 -j ACCEPT ``

Чтобы правило сохранилось после перезагрузки, пакет iptables-persistent сохраняет текущие правила командой sudo netfilter-persistent save. В дистрибутивах с nftables аналогичная запись выглядит как nft add rule inet filter tcp dport 8080 accept. На десктопных системах с AppArmor или SELinux может потребоваться дополнительно разрешить доступ на уровне этих модулей.

Настройка роутера (проброс портов)

Если компьютер находится за маршрутизатором, входящие соединения сначала приходят на WAN-интерфейс роутера, и нужно указать, куда направлять трафик на конкретный порт. Эта настройка называется пробросом (пробуждением) портов, port forwarding или виртуальным сервером.

Общий порядок:

  1. Войти в веб-интерфейс роутера (обычно 192.168.0.1 или 192.168.1.1).
  2. Найти раздел «Виртуальные серверы», «Port Forwarding», «NAT» или «Проброс портов».
  3. Создать новое правило: указать внешний порт, внутренний IP-адрес компьютера, внутренний порт и протокол.
  4. Сохранить и перезагрузить роутер при необходимости.

Чтобы адрес компьютера не менялся, ему лучше назначить статический IP в локальной сети или зарезервировать адрес по MAC-адресу в настройках DHCP роутера. Альтернативный вариант — DMZ (демилитаризованная зона), при котором весь входящий трафик направляется на один хост; этот способ повышает уязвимость и применяется редко.

Утилиты и веб-сервисы

Для проверки, открыт ли порт, используются утилиты telnet, nc (netcat), nmap и веб-сервисы проверки открытых портов. Пример проверки:

`` nc -zv example.com 8080 nmap -p 8080 192.168.1.10 ``

Программы вроде uTorrent, Steam, Plex Media Server, RDP-клиенты и VPN-серверы часто имеют встроенный мастер настройки, который автоматически добавляет необходимые правила в брандмауэр и подсказывает, какие порты нужно открыть на роутере.

Проблемы при открытии портов

Наиболее частые причины, по которым порт остаётся закрытым:

  • правило добавлено в брандмауэр, но не для того профиля сети;
  • порт занят другим приложением;
  • роутер не пробрасывает трафик или правило указано на неверный IP;
  • провайдер использует CGNAT (Carrier-Grade NAT), при котором внешний IP-адрес общий для многих абонентов, и входящие соединения невозможны без публичного адреса или VPN-туннеля;
  • программный файрвол стороннего производителя перекрывает правила системного.

Безопасность

Каждый открытый порт увеличивает площадь потенциальной атаки. Рекомендуется открывать только те порты, которые действительно нужны, ограничивать доступ по IP-адресам, использовать сложные пароли для служб с удалённым доступом (RDP, SSH), а также отказываться от устаревших протоколов вроде Telnet и FTP в пользу SSH и SFTP.

Источники

  • Официальная документация Microsoft по брандмауэру Windows
  • Документация проекта Netfilter (iptables/nftables)
  • RFC 9293 — Transmission Control Protocol
  • Руководства по настройке роутеров TP-Link, MikroTik и ASUS
Заметили ошибку или не согласны с информацией в статье? Напишите нам support@bfometr.ru