Какие порты нужно открыть на брандмауэре для работы в 1С ?

Probros-portov.pngДоброго дня всем!

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

Также не редкость, когда программа (или игра) вообще не соединяется с другими пользователями в интернете (например, у вас никто ничего не может скачать в uTorrent, игра не соединяется с сервером, Skype отказывается подключаться и т.д.). Все это происходит из-за того, что на роутере никто не пробросил порты(прим.: пробросить = значит открыть).

Суть «проброса» в том, что предоставляется доступ какой-то программе на определенном компьютере для подключения к ней из интернета (по умолчанию, во всех роутерах это отключено, в целях безопасности).

Собственно, в этой статье пошагово постараюсь на доступном языке изложить то, что нужно сделать. Надеюсь, инструкция поможет разобраться с этой «проблемой»…

*

Проброс портов // по шагам

1) Вход в настройки роутера

Логично, что первое необходимое действие — это вход в настройки роутера. Чаще всего, достаточно в любом браузере набрать адрес http://192.168.0.1/ (либо http://192.168.1.1/) и нажать Enter.

В качестве логина и пароля использовать admin (либо заполнить поле логина, а пароль вообще не вводить).

Если вдруг IP-адрес не подошел, а сеть у вас есть и работает — то попробуйте открыть командную строку и ввести ipconfig. Среди кучи появившихся параметров, должны увидеть строчку «Основной шлюз» — это и есть IP-адрес настроек роутера.

Kak-uznat-IP-adres-dlya-vhoda-v-nastroyki-v-router.png

Как узнать IP-адрес для входа в настройки в роутер

ДОПОЛНЕНИЕ!

Если в настройки роутера так и не удалось войти, воспользуйтесь рекомендациями из этой статьи:https://ocomp.info/kak-zayti-po-192-168-1-1-vhod-vrouter.html

*

2) Присваиваем компьютеру постоянный локальный IP-адрес

Каждый раз, когда вы включаете компьютер или ноутбук, он, соединившись с роутером получает свой IP-адрес в локальной сети (т.е. той домашней локальной сети, которую организует роутер). Например, у вашего ноутбука может быть адрес — 192.168.0.101, а у компьютера — 192.168.0.102.

Этот адрес локальный (внутренний) и он может меняться (если это специально не настроить)! Т.е. сегодня у вашего компьютера был IP 192.168.0.102, а завтра 192.168.0.101. А для проброса портов — нужно, чтобы он был постоянным, и не изменялся с течением времени.

Дополнение! О том, как узнать свой IP-адрес, а также разницу между статическим и динамическим, внутренним и внешним IP, вы можете узнать из этой статьи:https://ocomp.info/kak-uznat-ip-adres.html

Чтобы это сделать в роутерах, как правило, необходимо знать MAC-адрес сетевого адаптера, через которое вы подключаетесь к нему. Например, в ноутбуках — это, как правило — беспроводной адаптер, в компьютерах — Ethernet.

Узнать MAC-адрес можно также в командной строке — команда ipconfig/all покажет физический адрес устройства (это и есть MAC-адрес). См. скрин ниже.

Fizicheskiy-adres-adaptera-e`to-i-est-MAC-adres-800x718.png

Физический адрес адаптера — это и есть MAC-адрес

Собственно, дальше в настройках локальной сети в роутере (где задается привязка конкретного статического IP к MAC) укажите ваш локальный IP-адрес и MAC-адрес сетевого адаптера. Таким образом, даже после выключения вашего ПК (перезагрузки) и т.д. — ваш IP будет постоянным (т.е. в нашем примере 192.168.0.102, т.е. роутер, по сути, его за вами закрепит и не даст никакому другому устройству!).

(У каждого роутера своя прошивка, и компоновка и расположение кнопок может существенно различаться. Ниже приведены два фото настроек роутера Tenda и ASUS)

Staticheskiy-IP-adres-800x454.png

Статический IP-адрес (кликабельно)

ASUS-privyazka-IP-k-MAC-adresu-800x391.png

ASUS — привязка IP к MAC-адресу

*

3) Открываем порт для нужной программы

Теперь осталось открыть порт для конкретной программы. Но прежде, один небольшой вопрос…

У некоторых пользователей возникает дилемма, какой именно порт открывать… И где его можно узнать…

Например, в uTorrent порт можно посмотреть в настройках соединения (см. скрин ниже).

Nastroyki-uTorrent-800x451.png

Настройки uTorrent

В моем случае 16360 (но его можно и поменять). Браузеры используют 80 порт, Skype — подобно uTorrent, можно уточнить в настройках (и поменять в случае необходимости).

Как правило, порты (которые нужно открыть) указаны в файле помощи, в настройках приложения, или просто в ошибке, которая сообщит вам о проблемах с NAT!

Что касается каких-то игр – то этот момент необходимо уточнять в технических характеристиках игры, либо у разработчиков (также можно на тематических форумах).

Продолжим…

В настройках роутера в разделе задания параметров интернета (часто раздел WAN) можно задать перенаправление портов (Port Forwarding). В роутере Tenda — это раздел «Дополнительные параметры».

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

Парочка скринов представлены ниже (для роутеров ASUS и Tenda).

Port-dlya-uTorrent-byil-otkryit-800x374.png

Порт для uTorrent был открыт!

ASUS-portyi-otkryityi-v-kachestve-primera-800x385.png

ASUS — порты открыты (в качестве примера)

Собственно, порты проброшены. Можете сохранять настройки и пользоваться программами — всё должно работать…

*

4) Пару слов о DMZ-хосте

Все, что писано выше, мы сделали лишь для одного-двух портов. А представьте, если вам необходимо открыть все порты?! Например, это часто бывает нужно для создания игрового сервера, для организации видеонаблюдения и пр. ситуациях.

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

Vklyuchaem-DMZ-host-800x353.png

Включаем DMZ-хост / Включите также UPnP

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

*

А у меня по теме вопроса пока всё.

Дополнения приветствуются…

👋

RSS  (как читать Rss)dzenlink.png

Другие записи:

  • Otklyuchaem-stroku-poiska.pngКак убрать строку поиска в Windows 10, а то занимает половину панели задач
  • Intel-HD-Graphics-gde-nayti.pngIntel HD Graphics: где и как скачать драйвер на видеокарту (неск. способов)
  • Razbivaem-fayl-na-chasti-kak-pazlyi.pngКак разбить большой файл на части (на куски), а то он не помещается на флешку (диск)…
  • Skorost-interneta-smartfona.pngКак проверить скорость интернета на телефоне Андроид
  • Chrome пишет: «Ваше подключение не защищено», как это исправить? (NET::ERR_CERT_INVALID, …
  • Wi-Fi-i-zdorove.pngОпасен ли Wi-Fi, вреден ли он для здоровья? Как снизить степень воздействия Wi-Fi на организм
  • Как найти драйвер по коду оборудования ИД (ID, VEN/VID, DEV/PID)
  • Как найти человека в интернете. Поиск людей по имени и фамилии, телефону, E-mail и пр.

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

Что такое проброс портов

В компьютерных сетях портом называют числовой идентификатор от 0 до 65 535, указываемый при запросе на соединение. Стандартные номера портов назначаются серверным службам Центром управления номерами интернета (IANA). Например, веб-серверы обычно используют порт 80, FTP-серверы — порты 20 и 21, SMTP-серверы — порт 25 и 110. Перечень общеизвестных и зарегистрированных организацией IANA портов, а также их краткое описание можно посмотреть на сайте «Википедия» по адресу https://ru.wikipedia.org/wiki/Список_портов_TCP_и_UDP.

Белым цветом в таблице выделены порты, зарегистрированные IANA, синим — незарегистрированные, а жёлтым — конфликтные порты, имеющие несколько применений наряду с зарегистрированным

Использование портов позволяет компьютерам, ноутбукам, смартфонам одновременно запускать несколько служб/приложений. А переадресация портов сообщает маршрутизатору, на какое устройство внутри сети должны быть направлены входящие соединения и с каким именно приложением на этом устройстве нужно связаться для обмена пакетами данных.

Зачем нужно открывать порты на роутере?

Функция переадресации портов довольно часто используется как в домашних сетях, так и в корпоративных. Варианты использования перенаправления портов могут быть следующими:

  • доступ к камерам видеонаблюдения, когда вы находитесь вдали от дома;
  • настройка сервера RDP для удалённого доступа к компьютеру из внешней сети;
  • обеспечение дополнительного уровня безопасности сети за счёт скрытия IP-адреса;
  • ускорение загрузки файлов с торрентов и файлообменников;
  • подключение к почтовой службе или FTP-серверу;
  • посещение веб-сайтов с регионально ограниченным доступом;
  • создание виртуального сервера для тестирования сайта на домашнем ПК;
  • настройка IP-телефонии;
  • подключение к игровым серверам с многопользовательскими видеоиграми, например, Counter Strike или Minecraft.

    На роутере можно настроить проброс портов для всех устройств локальной сети, присвоив им разные IP-адреса

Переадресация портов

Для открытия портов на роутере не нужно быть опытным администратором — с этой процедурой справится любой пользователь. Главное, следовать пошаговой инструкции, состоящей из двух основных этапов: присвоения статического IP-адреса пользовательскому компьютеру в настройках ОС Windows и перенаправления портов в админ-панели маршрутизатора.

Предварительные настройки «Виндовс»

Перед пробросом портов нужно для устройств локальной сети выделить диапазон внутренних IP-адресов, после чего закрепить по одному адресу за каждым ПК. Сделать это можно в настройках компьютера либо в панели администрирования роутера (раздел DHCP). Первый способ является более надёжным, так как статический адрес прописывается в настройках сетевой карты и без вашего вмешательства ничто и никто его не изменит. Для запуска данного процесса нужно включить ПК и произвести несколько действий:

  1. Перейти в раздел «Сетевые подключения», воспользовавшись системной утилитой «Выполнить» (вызывается сочетанием клавиш Win + R в любой версии Windows). В появившемся окошке ввести команду ncpa.cpl и нажать кнопку «ОК» или клавишу «ENTER».

    Для быстрого перехода к разделу с сетевыми подключениями можно использовать системную программу «Выполнить»

  2. В открывшемся окне кликнуть правой кнопкой мыши по активному сетевому подключению и выбрать пункт «Свойства».

    При клике ПКМ по активному подключению появится контекстное меню

  3. Сделать двойной клик по строке «IP версии 4 (TCP/IPv4)», чтобы открыть свойства протокола.

    В «Свойствах подключения» первым делом нужно убедиться в том, что пункт «IP версии 4 (TCP/IPv4)» включён, после чего перейти к настройке протокола

  4. В окне «Свойства» активировать пункты «Использовать следующий IP-адрес» и «Использовать следующие адреса DNS-серверов». После чего заполнить обязательные поля:
    • «IP-адрес» — сюда вписать адрес из диапазона внутренней локальной сети, например, любое значение от 192.168.0.2 до 192.168.0.200 (единственное условие — он должен отличаться от адреса роутера),
    • «Маска подсети» — в домашних сетях чаще всего этот параметр имеет значение 255.255.255.0,
    • «Основной шлюз», в роли которого выступает IP-адрес роутера (по умолчанию 192.168.0.1 или 192.168.1.1),
    • «Предпочитаемый DNS-сервер» — здесь чаще всего указывают DNS-адреса провайдера или альтернативного источника, например, публичного сервиса Google Public DNS (8.8.8.8 и 8.8.4.4.).

      В окне настроек протокола можно задать статичный IP-адрес компьютеру и DNS-серверу

  5. Подтвердить настройки нажатием «ОК».

Проброс портов в веб-интерфейсе маршрутизатора

После того как для компьютера зафиксирован статичный IP-адрес, можно переходить к настройке роутера (на примере TP-Link). Для этого нужно выполнить следующие действия:

  1. Войти в админ-панель маршрутизатора, введя в браузерной строке адрес устройства (для большинства роутеров по умолчанию используется 192.168.0.1 или 192.168.1.1).

    По умолчанию для входа в веб-интерфейс большинства роутеова используются одинаковые логин и пароль — admin

  2. В боковом меню выбрать раздел «Переадресация», а в нём подраздел «Виртуальные серверы».
  3. В открывшемся окне нажать кнопку «Добавить» для создания нового правила переадресации.

    Чтобы открыть новый порт, нужно воспользоваться кнопкой «Добавить» в разделе «Виртуальные серверы»

  4. Откроется диалоговое окно, где обязательно нужно заполнить два поля: «Порт сервиса» — здесь указывается номер порта, который нужно открыть, и «IP-адрес» — присвоенный компьютеру статический адрес в сети. Поле «Внутренний порт» можно оставить пустым, а поля «Протокол» («Все») и «Состояние» («Включено») оставить по умолчанию. После чего подтвердить настройки, нажав на кнопку «Сохранить».

    В настройках виртуального сервера обязательно нужно указать номер внешнего порта и статичный IP-адрес компьютера или другого сетевого устройства

При необходимости проброса стандартных портов в роутере имеются предустановленные настройки. Достаточно выбрать в выпадающем списке «Стандартный порт сервиса» нужную службу (DNS, FTP, HTTP, POP3, SMTP, TELNET), как все поля заполнятся автоматически.

Для облегчения процесса настройки стандартных портов предусмотрено соответствующее поле с перечнем общеизвестных портов

Возможные проблемы при пробросе портов и их решение

Иногда при проверке работоспособности добавленных портов пользователь попадает из интернета в панель администрирования роутера, а не на нужный сервис или приложение на компьютере. Почему так происходит? Причин может быть несколько:

  • блокировка внешнего соединения брандмауэрами и антивирусными программами. Решается данная проблема отключением этих служб либо их тонкой настройкой, во время которой добавляются исключения на подсоединение к нужным портам;
  • у компьютера нет постоянного адреса. В таком случае при старте или перезагрузке роутера IP-адрес ПК изменится, и открытый порт перестанет работать, поскольку изначально был привязан к другому адресу. Решение — присвоить компьютеру (ноутбуку, планшету) неизменяемый IP-адрес;
  • политика провайдера. Не редки случаи, когда интернет-провайдер запрещает обладателям «серых» (внутренних) IP-адресов использовать некоторые порты, например, торрент-трекеров. Выход из данной ситуации — приобретение статичного «белого» адреса;
  • изменение порта самим приложением или сервисом. Иногда программы-клиенты самостоятельно меняют порт при каждом запуске. Избежать этого можно, если прописать порт в настройках софта и запретить опцию «Случайный выбор порта».

    В настройках программы uTorrent (раздел «Соединение») можно указать порт входящих соединений и запретить выбор случайного порта при запуске

Как закрыть порты

Очень часто при использовании пользователем различных веб-серверов и сервисов удалённого доступа может возникнуть необходимость закрыть тот или иной порт. Осуществить эту процедуру можно в админ-панели маршрутизатора. Удаление портов производится в той же вкладке, где настраивался их проброс («Переадресация» → «Виртуальные серверы»). В списке открытых портов напротив каждого из них есть две ссылки «Изменить» и «Удалить». Нажав на вторую, произойдёт закрытие (удаление) порта и он перестанет отображаться в панели управления.

Для редактирования и удаления открытых портов во вкладке «Виртуальные серверы» есть соответствующие ссылки

Настройка перенаправления портов в веб-интерфейсе роутера не требует определённых знаний. Пользуясь вышеизложенной инструкцией на примере маршрутизатора TP-Link, любой пользователь при необходимости сможет открыть доступ к устройствам локальной сети из интернета. Алгоритм проброса портов в роутерах других производителей может несколько отличаться, но главные этапы настройки будут одинаковы.

У этой технологии есть множество названий — это и трансляция портадреса, и проброс портов, и перенаправление, и буржуйские порт-форвардинг/порт-маппинг, и сокращенные DNAT/PAT. Но как бы она ни называлась, о ее полезности спорить не приходится. Проброс портов — просто спасательный круг для тех, кто хочет показать свой сервер из-за высокой и крепкой стены под названием NAT.

Перед тем, как начать

Эта статья рассказывает о настройке проброса портов в самых разных операционных системах, начиная с Windows и заканчивая ОС, установленными на сетевом оборудовании. В большинстве случаев для реализации проброса портов используются специальные правила брандмауэра, и здесь я должен сделать первое предостережение.

Дело в том, что любой брандмауэр выполняет трансляцию сетевых адресов до их фильтрации, поэтому описанные в статье правила должны находиться в начале. Второе: для успешного прохождения оттранслированных пакетов должны быть добавлены правила, разрешающие входящие подключения на целевой порт шлюза, а также правила, разрешающие обмен данными между внутренней целевой машиной и шлюзом.

Windows

Начнем, как говорится, с азов. Проще всего проброс портов настроить в операционных системах семейства Windows. Здесь все это делается в «Свойствах NAT»:

  1. Заходим в «Администрирование -> Маршрутизация», выбираем локальную машину, далее «IP-маршрутизация -> NAT».
  2. Включаем NAT для локального интерфейса.
  3. Переходим к вкладке «Службы и порты», выбираем интересующую нас службу или добавляем свою.
  4. В открывшемся окне выбираем протокол, входящий порт (тот, который будет виден извне), адрес машины внутренней сети и ее порт.

LINUX

В Linux все намного сложнее, здесь необходимо оперировать правилами iptables/netfilter, без знания основ которого просто не обойтись. Для осуществления проброса портов предусмотрена цель DNAT, которую необходимо использовать в правилах цепочки PREROUTING. В самом простейшем случае правило будет выглядеть следующим образом:

iptables -t nat -A PREROUTING -p tcp --dst $GATE --dport $PORT -j DNAT --to-destination $SERVER:$PORT

Где $GATE — это адрес шлюза, $PORT — пробрасываемый порт, а связка $SERVER:$PORT — это адрес и порт внутреннего сервера. Естественно, чтобы правило сработало, должен быть включен форвардинг (хотя на шлюзе он в любом случае включен):

# echo 1 > /proc/sys/net/ipv4/ip_forward

Проброс портов возможен и с другой машины:

$IPTABLES -t nat -A PREROUTING -p tcp --dst $IP --dport $PORT -j DNAT --to-destination $SERVER:$PORT $IPTABLES -t nat -I POSTROUTING -p tcp --dst $SERVER --dport $PORT -j SNAT --to $IP

Это вполне легально, а иногда и просто необходимо. Различные преконфигурированные iptables-скрипты, такие как, например, знакомый пользователям Debian, arno-iptables-firewall, также можно использовать для более простой настройки проброса портов. Например, если ты хочешь пробросить порт 80 на машину 192.168.0.100, для этого достаточно добавить строку NAT_TCP_ FORWARD=»80>192.168.0.100″ в файл /etc/arno-iptables-firewall/firewall.conf и перезагрузить брандмауэр:

$ sudo /etc/init.d/arno-iptables-firewall restart

FreeBSD

1. Включить natd и ipfw в /etc/rc.conf:

# vi /etc/rc.conf # Включаем natd natd_enable="YES" # rl0 — внутренний интерфейс шлюза natd_interface="rl0" natd_flags="-f /etc/natd.conf" # Включаем ipfw firewall_enable="YES" firewall_type="/etc/ipfw.conf"

2. Настроить NAT и проброс портов в /etc/natd.conf:

# vi /etc/natd.conf same_ports yes use_sockets yes # Проброс портов: # протокол адрес-сервера-внутри-сети:порт порт-на-шлюзе redirect_port tcp 192.168.0.100:80 80

3. Чтобы все пакеты, проходящие через внешний интерфейс (rl1) шлюза, перенаправлялись в natd и обрабатывались им, добавим правило divert в /etc/ipfw.conf:

ipfw add divert natd ip from any to any in via rl1

Также разрешим общение всех с внутренним сервером:

ipfw allow tcp from any to 192.168.0.100 dst-port 80 in via rl0 setup

Далее можно добавить правила фильтрации. Метод номер два: ядерный NAT. Активация NAT с помощью реализации внутри ядра не требует ничего, кроме правильной настройки брандмауэра с помощью двух-трех правил. Не буду расписывать все в деталях, а просто приведу простой пример, демонстрирующий уже обсуждавшийся выше проброс 80-го порта со шлюза на внутренний сервер:

# vi /etc/ipfw.conf # Настраиваем NAT nat 1 config log if rl1 reset same_ports redirect_port tcp 192.168.0.100:80 80 # Заворачиваем весь трафик через внешний интерфейс в NAT add nat 1 ip from any to any via rl1

Правила ‘nat’ имеют несколько опций, большинство из которых совпадает с опциями, используемыми демоном natd. Например, опция same_ports предписывает механизму NAT сохранять оригинальные номера исходящих портов для исходящих пакетов (нужно для правильной работы некоторых RPC-протоколов). Опция rdirect_port имеет тот же синтаксис, что и в файле /etc/natd.conf.

OpenBSD

Наверное, самый логичный и простой в настройке проброс портов получается в ОС OpenBSD. Здесь механизм NAT также реализован в ядре и настраивается с помощью штатного pf, синтаксис которого куда яснее и продуманнее синтаксиса ipfw и, уж тем более, iptables. Все тот же проброс 80-го порта на языке pf будет выглядеть следующим образом:

# vi /etc/pf.conf # Настраиваем NAT nat on rl1 from 192.168.10.0/24 to any -> $out_ip # Настраиваем проброс портов rdr on rl1 inet proto { tcp, udp } from any to $out_ip port 80 -> 192.168.0.100

Как и прежде, rl1 — внешний интерфейс шлюза, 192.168.0.100 — адрес внутреннего сервера, а out_ip — адрес внешнего интерфейса шлюза. При этом, если проброс должен быть сделан на порт, отличный от 80-го, достаточно просто добавить ключевое слово «port» и числовое значение в конец первого правила.

Разрешается использование диапазонов портов, если, конечно же, оно может иметь какой-то смысл:

rdr on rl1 inet proto { tcp, udp } from any to $out_ip port 5000:10000 -> 192.168.0.100

Прим. ред.: Например, с помощью этой фичи удобно разрешать прохождение трафика bittorrent:

rdr on $ext_if inet proto tcp from any to $ext_if port 6881:6889 -> $myhost port 6881:6889 pass in quick on $ext_if inet proto tcp from any to $myhost port 6880 >< 6890 keep state

Как и в других рассмотренных ранее брандмауэрах, принятие решения о дальнейшей судьбе пакетов возлагается на правила фильтрации, через которые пакет будет пропущен уже после перенаправления. Но есть одно маленькое исключение: используя ключевое слово «pass» совместно с правилом rdr можно добиться такого поведения системы, когда пакеты будут отпускаться во внешний мир, минуя правила фильтрации (см. скриншот «Форвардим входящие запросы на сервер терминалов и SQL-сервер»). Эта особенность может быть использована для отладки правил.

Будь внимателен, в OpenBSD 4.7 синтаксис конфига несколько изменился:

pass out on rl1 from 192.168.0.0/24 to any nat-to $out_ip pass in on rl1 proto tcp from any to any port 80 rdr-to 192.168.0.100

Cisco

С моей стороны было бы кощунством не рассказать про настройку проброса портов с помощью сетевого оборудования небезызвестной компании Cisco. Благо, здесь все решается одной простой строкой, которая, тем не менее, будет разной для различных типов устройств. Например, проброс портов в Cisco PIX (Private Internet Exchange) или ASA (Adaptive Security Appliance) осуществляется с помощью следующей строки конфигурации:

static (inside,outside) tcp 1.2.3.4 www 192.168.0.100 www netmask 255.255.255.255

В то же время для оборудования, работающего на операционной системе Cisco IOS, строка будет выглядеть так:

ip nat inside source static tcp 192.168.0.100 80 1.2.3.4 80

Обе они не делают ничего кроме проброса порта 80 на сервер 192.168.0.100 для клиента с адресом 1.2.3.4. При этом если необходимо настроить проброс всех портов, достаточно просто опустить номера/ имена портов в строке конфигурации.

Openwrt и DD-WRT

Конечно же, кроме оборудования именитой Cisco на рынке существуют и гораздо менее дорогостоящие решения вроде разного рода домашних роутеров и точек доступа. Большой популярностью среди них пользуются ультра-бюджетные сетевые устройства таких компаний, как D-Link, ASUS, Linksys и других. На многих из них можно установить свободные и более продвинутые прошивки вроде OpenWrt, X-Wrt и DD-wrt, которые отличаются более развитой системой настройки и хорошим комьюнити. Естественно, проброс портов легко выполнить и с их помощью. В DD-Wrt проброс портов осуществляется с помощью локализованного веб-интерфейса. Чтобы настроить проброс по описанной выше схеме, достаточно открыть веб-интерфейс роутера (192.168.1.1), перейти на вкладку «NAT/QoS», далее — вкладка «Перенаправление портов». Теперь в поле «Приложение» пишем любое удобное для нас имя, например, «www», «Порт-источник» — внешний порт роутера, «Протокол» — TCP или UDP, «IP-адрес» — адрес внутреннего сервера, «Порт-приемник» — его порт. Далее выбираем галочку «Включить», жмем кнопку «Добавить », потом — кнопку «Применить».

Это действительно простой путь, который… не сработает для большинства российских провайдеров, предоставляющих как доступ к локальной сети (прямой), так и доступ к сети интернет (через VPN/PPTP). Дело в том, что добавленное таким образом правило будет применено к внешнему физическому интерфейсу, тогда как интерфейс ppp0, используемый для выхода в интернет через VPN/PPTP, останется не при делах. Для решения проблемы можно воспользоваться прямым вмешательством в недра DD-Wrt. Открываем вкладку «Тех.обслуживание», далее — «Команды» и набираем стандартные правила iptables:

iptables -t nat -A PREROUTING -p tcp -i ppp0 --dport 80 -j DNAT --to 192.168.0.100:80

Нажимаем «Сохр. брандмауэр» и перезагружаемся. Ненамного труднее выполнить эту операцию с помощью веб-интерфейса прошивок X-Wrt, представляющих собой, по сути, более юзабельный вариант OpenWrt. Жмем на «Network», затем «Firewall», выбираем в меню «New Rule» пункт «Forward» и нажимаем «Add». Записываем в поле «Forward To» IP-адрес внутреннего сервера, в поле «Port» помещаем номер пробрасываемого порта. В выпадающем меню выбираем пункт «Protocol» и нажимаем «Add», в появившемся меню выбираем протокол: TCP или UDP. Если порт, открытый на шлюзе, должен отличаться от порта внутреннего сервера, выбираем в выпадающем меню пункт «Destination Ports», получаем одноименное поле и вводим в него номер порта. Нажимаем кнопку «Save».

Того же эффекта можно достичь, отредактировав конфигурационный файл /etc/config/firewall следующим образом:

forward:proto=tcp dport=80:192.168.0.100:80

Другие подходы

Для осуществления проброса порта совсем необязательно использовать брандмауэры или системные демоны, как, например, этого требуют старые версии FreeBSD. Существует несколько других способов сделать это с помощью специализированного софта или стандартных инструментов ОС (кто знает, возможно, ты используешь Minix в качестве ОС для шлюза :)). Один из таких инструментов — SSH. Далеко не каждый системный администратор в курсе, что проброс порта является стандартной функцией этой программы. Возьмем, к примеру, следующую ситуацию. В локальной сети, закрытой от внешней сети NAT’ом, есть сервер, к которому тебе необходимо иметь доступ. Ситуация усугубляется тем, что ты не имеешь привилегий для настройки файервола на машине-шлюзе. Зато у тебя есть доступ к SSH-серверу, работающему на этом шлюзе. Как это может помочь? На самом деле очень сильно. Ты просто выполняешь следующую команду на удаленной машине (serverip — адрес внутреннего сервера, gateway-ip — адрес шлюза):

$ ssh -L 8080::80 user@<gateway>

И вуаля, порт 8080 локальной машины становится портом 80 внутреннего сервера локалки. Теперь достаточно набрать в веб-браузере адрес localhost:8080, и ты попадешь туда, куда надо. Твой SSH-клиент создаст туннель с SSH-сервером шлюза, все передаваемые в рамках которого данные будут направлены на порт 80 внутреннего сервера.

1.2.3.4 80 192.168.0.100 80

И (пере)запустить сервер командой:

$ sudo /etc/init.d/rinetd restart

в Ubuntu или:

# /usr/local/etc/rc.d/rinetd start

# echo "rinetd_enable="YES"" >> /etc/rc.conf

После этого весь трафик, пришедший на порт 80 машины 1.2.3.4, будет автоматически перенаправлен на тот же порт машины с IP-адресом 192.168.0.100.

Один из излюбленных способов проброса портов среди UNIX-администраторов заключается в использовании утилиты socket совместно с сетевым супер-сервером inetd. Как и все гениальное, идея в этом случае проста, а реализация очевидна. Открываем файл /etc/inetd.conf (даже если в твоей системе используется более новый xinetd, ты все равно можешь использовать этот файл) и добавляем в него строку следующего вида:

порт1 stream tcp nowait root /usr/local/bin/socket socket 192.168.0.100 порт2

Здесь порт1 — это прослушиваемый порт на машине-шлюзе, а порт2 — порт назначения на внутренней машине 192.168.0.100. При этом оба они должны быть заданы в форме имени службы (www, ftp и т.д.), если же таковой не имеется (ты выбрал произвольный порт), то ее необходимо добавить в файл /etc/services.

Далее можно перезагрузить inetd командой «kill -HUP» и наслаждаться результатом. Если же его нет, то смотрим в файл /etc/hosts.allow. Доступ к службе должен быть открыт.

Выводы

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

UDP-туннель между двумя NAT

Утилита pwnat (http://samy.pl/pwnat/) позволяет любому количеству клиентов, находящихся за одним NAT-сервером, соединяться с сервером, который стоит за другим NAT, причем никакой проброски портов на серверах не потребуется.

Клиент может подключаться через такой сервер к любым ресурсам, либо только к тем, что ограничены сервером pwnat.

Автоматический проброс портов

Universal Plug and Play (UPnP) — технология, призванная упростить и автоматизировать процесс общения сетевых устройств и приложений между собой. Поддерживается почти любым современным сетевым оборудованием, включает в себя механизм автоматического проброса портов в случае необходимости. Тот же механизм реализован во многих файлообменных программах.

</gateway></code></p>← Ранее Вход в социалки — на амбарный замок: Еще несколько способов контроля трафика и управления доступомДалее → Не спасовать перед лавиной: Подготавливаем веб-сервер к высоким нагрузкам

Используемые источники:

  • https://ocomp.info/kak-probrosit-portyi-na-routere.html
  • https://itmaster.guru/nastrojka-interneta/routery-i-modemy/kak-otkryt-porty-na-routere.html
  • https://xakep.ru/2011/01/17/54483/

Рейтинг автора
5
Подборку подготовил
Андрей Ульянов
Наш эксперт
Написано статей
168
Ссылка на основную публикацию
Похожие публикации