Программы. Советы. Безопасность. Интересное. Накопитель

Как подключаться к открытым портам? Для каких ситуаций возможна проверка открытых портов.

Распространённая задача: настроить удалённый доступ к компьютеру, который подключён к Интернету через роутер.

Решение: сделать перенаправление порта на роутере. Перенаправление порта ещё называют публикацией порта или пробросом порта . В английской терминологии используются термины Port Forwarding и Port Publishing .

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

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

А вот какой порт пробрасывать, зависит от того, каким способом вы хотите получать доступ к компьютеру.

Как настроить удалённый доступ через RDP (удалённый рабочий стол, терминал)

Подключения по протоколу RDP осуществляются на порт целевого 3389 компьютера. Что нужно сделать:

Шаг 1 Разрешить входящие RDP подключения на компьютере

Внимание! Осуществлять ВХОДЯЩИЕ подключение через Удалённый рабочий стол возможно к следующим редакциям ОС Windows:
Windows XP Professional;
Windows 7/8.1 Professional;
Windows 7/8.1 Ultimate;
Windows 7/8.1 Corporate.

В Windows XP Starter, Home Edition, в Windows Vista/7/8/8.1 Starter, Home Basic, Home Premium возможность входящих подключений отсутствует.

Для этого открываем Свойства системы (WIN+Break), нажимаем на ссылку Дополнительные параметры системы:

Переходим на вкладку Удалённый доступ , ставим переключатель в положение Разрешать подключения к этому компьютеру , снимаем галку Разрешать подключения только с компьютеров, на которых работает удалённый рабочий стол с проверкой подлинности на уровне сети (рекомендуется) и нажимаем ОК для применения настройки:

Шаг 2 Создать на компьютере учётную запись, под которой будет подключаться пользователь удалённого рабочего стола.

Требование №1. Эта учётная запись обязательно должна иметь пароль . Согласно настроек по умолчанию локальной политики безопасности, учётным записям без пароля подключение по RDP запрещено. Разрешать удалённый доступ незапароленным учётным записям в политиках безопасности не рекомендуется. Это создаст угрозу несанкционированного доступа со стороны злоумышленников.

Требование №2. Если пользователь НЕ является администратором на локальном компьютере, его необходимо добавить в группу . Это можно сделать двумя способами.

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

Способ первый.

Нажмите правой кнопкой по системному ярлыку Этот компьютер и выберите Управление :

В окне Управление компьютером выберите Локальные пользователи и группы => Пользователи :

В списке найдите нужного пользователя и двойным щелчком вызовите его свойства:

Перейдите на вкладку Членство в группах и нажмите кнопку Добавить :

Нажмите кнопку Дополнительно :

Затем, кнопку Поиск :

Выделите в списке группу Пользователи удалённого рабочего стола и нажмите OK :

В окнах Выбор группы и Свойства: <пользователь> нажмите OK:

Способ второй.

Вызовите свойства системы (Win+Break) , нажмите Дополнительные параметры:

Зайдите на вкладку Удалённый доступ и нажимаем кнопку Выбрать пользователей :

Нажмите кнопку Добавить :

Нажмите Дополнительно :

и Поиск :

В списке выберите учётную запись пользователя, которому хотите предоставить права для удалённого доступа, и нажмите OK :

Теперь нажмите OK в двух следующих окнах:

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

В роутерах D-Link нужный раздел может называться Virtual Server , как в D-Link DIR-615:

Также, он может называться Port Forwarding , как, например, в DIR-300:

Суть одна и та же:

  1. Даём произвольное имя правилу;
  2. Открываем НЕстандартный порт на роутере, который не занят (поле Public Port );
  3. Указываем IP-адрес целевого компьютера в сети, куда должен попадать удалённый пользователь (поле IP-Address );
  4. Указываем номер порта, через который работает приложение или служба на компьютере. В нашем случае, для службы сервера удалённых рабочий столов это порт 3389 (поле Private Port ).

Если ваш провайдер выдаёт вашему роутеру динамический адрес, вам удобно воспользоваться службой Dynamic DNS. У компании D-Link есть свой сервис, где можно бесплатно зарегистрировать Интернет-адрес (т.е. домен) и настроить доступ к вашему роутеру и локальной сети через него.

Для настройки Dynamic DNS зайдите в раздел MAINTENANCE , выберите подраздел DDNS Settings и нажмите на ссылку Sign up … для перехода на сайт и регистрации домена. Затем настройте синхронизацию домена с IP-адресом роутера в области DYNAMIC DNS SETTINGS и сохраните настройки кнопкой Save Settings :

После этого можно будет подключаться не по IP-адресу, а по адресу вида vash-adres.dlinkddns.com:port

Проверка подключения к компьютеру через удалённый рабочий стол

Запустите клиент сервера удалённых рабочих столов:

В поле Компьютер введите адрес и порт через двоеточие. В поле Пользователь введите имя пользователя и нажмите кнопку Подключить :

Это удалённое подключение может нанести вред локальному или удалённому компьютеру. Перед подключением убедитесь, что удалённый компьютер надёжен.

Установите галку и нажмите кнопку Подключить :

Теперь введите пароль пользователя, установите галку Запомнить учётные данные , если не хотите вводить пароль каждый раз, и нажмите OK :

После этого может появиться сообщение:

Не удаётся проверить подлинность удалённого компьютера. Вы хотите установить подключение в любом случае?

Здесь можно установить галку Больше не выводить запрос о подключениях к этому компьютеру и нажать Да :

Инструкция

Вы должны знать ip-адрес компьютера, к которому хотите подключиться. Если известно доменное имя, можно определить ip на одном из существующих в сервисов. Например, здесь: http://www.all-nettools.com/toolbox/smart-whois.php
Введите доменное имя в формате www.name.ru – то есть имя сайта без «http://», нажмите кнопку «Submit». Вы получите ip-адрес и всю дополнительную информацию о сайте.

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

Откройте XSpider, ведите ip-адрес, запустите сканирование. После его окончания вы получите список открытых портов на сканируемой машине. Наличие не означает, что вы получили доступ к удаленному компьютеру и говорит лишь о том, что этот порт используется какой-то программой. Например, порт 21 – ftp, 23 – telnet, 4988 – Radmin, 3389 - Remote Desktop‎ и т.д. Наберите в поисковике «Список портов и их сервисов», и вы получите подробную информацию.

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

Если вы хотите научиться использовать эксплоиты, скачайте программу Metasploit. В ее состав входят несколько сотен эксплоитов, их состав постоянно . В составе Метасплоита есть и сканер Nmap. Изучение программы требует времени и терпения, но результат того стоит.

Если вы хотите быстрого результата, скачайте две программы: VNC-сканер с Gui-интерфейсом (vnc_scanner_gui) и Lamescan. Первая является очень хорошим и быстрым сканером, удобным при сканировании конкретного порта. Например, порта 4899, используемого программой удаленного управления Radmin.

Запустите VNC-сканер, укажите порт 4899, выберите в списке нужную страну и нажмите кнопку «Get diap list». В окошке слева появится список диапазонов ip-адресов. Выберите несколько диапазонов (лучше 2-3), остальные удалите. Нажмите кнопку «Start scan». После окончания процесса сканирования вы получите текстовый файл IPs.txt со списком ip-адресов компьютеров, у которых открыт порт 4899. Нажмите кнопку «Start parser» - список будет очищен от всей лишней информации, останутся только ip-адреса.

Запустите программу Lamescan. Нажмите в меню «Настройка – Основное». Поставьте номер порта 4899. Введите пути к словарям паролей и логинов (найдите их в сети). Нажмите «Готово». Теперь нажмите зеленый плюсик и введите в появившееся окно ваши насканенные ip-адреса и нажмите зеленую стрелку. Начнется процесс подбора пароля к указанным адресам. В большинстве случаев подбор оказывается неудачным, но из сотни адресов несколько окажутся с простыми паролями.

Скачайте и установите программу Radmin. Запустите ее, введите адрес компьютера с подобранным паролем. В появившемся окне введите пароль (и логин – если подобрали данные к программе с логином и паролем). Появится синий значок соединения, и несколько секунд спустя вы увидите у себя на экране рабочий стол удаленного компьютера.

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

I. ПРОВЕРКА ОТКРЫТЫХ ПОРТОВ НА ЛОКАЛЬНОМ КОМПЬЮТЕРЕ

Способ 1. Для того, чтобы проверить открытые порты на локальном (своем) компьютере, можно воспользоваться «Командной строкой» операционной системы Windows (

Для вызова этой строки необходимо нажать сочетание клавиш Win+R и прописать команду «cmd», после чего нажать «ОК».

В открывшемся окне пропишите специальную команду «netstat -a» и ознакомьтесь со списком открытых портов на Вашем компьютере.

Способ 2. Если Вы подключены к интернету, то проверить, открыт ли порт, можно на сайте

whatsmyip.org/port-scanner/

Данный ресурс сам определит Ваш IP-адрес, а сканировать порты можно через специальное поле «Custom Port Test ».

Введите интересующий Вас порт и нажмите кнопку «Check Port », после чего Вы получите ответ, открыт или закрыт данный порт.

II. ПРОВЕРКА ОТКРЫТЫХ ПОРТОВ НА УДАЛЕННОМ КОМПЬЮТЕРЕ

Теперь рассмотрим, как проверить, открыт ли порт на удаленном компьютере или сервере. Воспользуйтесь все той же «Командной строкой» в системе Windows, но теперь пропишите команду telnet в формате:

telnet IP-адрес порт

Нажмите клавишу «Enter». Если нет записи «Could not open …», то запрашиваемый порт открыт, иначе - закрыт.

Мы вкратце рассмотрели, как проверить, открыт ли порт на компьютере. Если остались, какие либо вопросы, то задайте их в поле для комментариев.

Что означает результат проверки порта?

Статус Порт закрыт

Подключиться к этому порту в данный момент невозможно. Вредоносные программы или злоумышленники не могут воспользоваться данным портом для атаки или получения конфиденциальной информации (Вам поможет материал 4 лучших бесплатных антивируса для Windows 10). Если все неизвестные порты имеют статус "закрыт", то это означает хороший уровень защищенности компьютера от сетевых угроз.

Если порт должен быть открытым, то это плохой показатель. Причиной недоступности порта может быть неверная настройка сетевого оборудования или программного обеспечения. Проверьте права доступа программ к сети в файерволе. Удостоверьтесь, что порты проброшены через роутер.

Результат "порт закрыт" также можно получить, если порт открыт, но время отклика вашего компьютера в сети (пинг) завышено. Подключится к порту в таких условиях практически не представляется возможным.

Статус Порт открыт

К данному порту можно произвести подключение, он доступен из интернета. Если это то, что требуется — прекрасно.

Если неизвестна причина, по которой порт может быть открытым, то стоит проверить запущенные программы и сервисы. Возможно, некоторые из них вполне легально используют этот порт для работы с сетью. Существует вероятность, что порт открыт в следствии работы несанкционированного/вредоносного программного обеспечения (Вам поможет материал Как включить защиту от потенциально нежелательных программ в Windows Defender). В таком случае рекомендуется проверить компьютер антивирусом.

F.A.Q.

Что за порты? Для чего они нужны?

Порты, которые проверяет PortScan.ru, — это не физические, а логические порты на компьютере или сетевом устройстве.
В случае, если программа или служба планирует работать с сетью, она открывает порт с уникальным номером, через который она может работать с удаленными клиентами/серверами. Фактически, сетевая программа резервирует для себя определенное число, которое позволяет понять, что пришедшие данные предназначаются именно этой программе.

На человеческом языке это звучало бы примерно так: "Я, программа-сервер, открываю порт номер 1234. Если по сетевому кабелю придут данные с номером порта 1234 — это мне. "

Какие номера портов может открывать программа?

Порты идентифицируются номерами от 0 до 65535 включительно. Любой другой порт открыть нельзя, соответственно и проверить тоже. Это ограничения TCP/IP протокола.

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

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

Для каких ситуаций возможна проверка открытых портов?

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

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

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

Проброс портов (Port Forwarding, иногда Virtual Servers) — специальная настройка на роутере, позволяющая перенаправить внешние запросы (из интернета) на компьютеры локальной сети. По сути это способ указать, на какой локальный компьютер пересылать данные и запросы подключения, пришедшие на определенный порт.

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

Если ваш компьютер подключен к интернету напрямую (без роутера/маршрутизатора), то выполнять проброс портов не требуется. Все ваши открытые порты должны быть доступны из интернета (естественно, при наличии выделенного IP).

Как узнать, какие порты открыты на компьютере?

Для Windows: Пуск → "cmd" → Запустить от имени администратора → "netstat -bn"
Для Linux: В терминале выполнить команду: "ss -tln"

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

Прежде всего надо устранить причину — запущенную программу или службу, которая открыла этот порт; ее надо закрыть/остановить. Если причина открытого порта не ясна — проверьте компьютер антивирусом, удалите лишние правила проброса портов на роутере и установите продвинутый файервол (Firewall).

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

Инструкция

  • Вы должны знать ip-адрес компьютера, к которому хотите подключиться. Если известно доменное имя, можно определить ip на одном из существующих в интернете сервисов. Например, здесь: http://www.all-nettools.com/toolbox/smart-whois.phpВведите доменное имя в формате www.name.ru – то есть имя сайта без «http://», нажмите кнопку «Submit». Вы получите ip-адрес и всю дополнительную информацию о сайте.
  • Теперь вам необходимо определить, какие порты на интересующем вас компьютере открыты. Делается это путем сканирования с использованием специальных программ – сканеров. Наиболее известные сканеры – Nmap и XSpider. Новичку лучше выбрать второй, в сети можно найти как демоверсию, так и полный вариант программы.
  • Откройте XSpider, ведите ip-адрес, запустите сканирование. После его окончания вы получите список открытых портов на сканируемой машине. Наличие открытого порта не означает, что вы получили доступ к удаленному компьютеру и говорит лишь о том, что этот порт используется какой-то программой. Например, порт 21 – ftp, 23 – telnet, 4988 – Radmin, 3389 - Remote Desktop? и т.д. Наберите в поисковике «Список портов и их сервисов», и вы получите подробную информацию.
  • Вы получили список открытых портов. Следующий этап – поиск возможности проникнуть через эти порты на удаленную машину. Вариантов здесь много, основные – подбор пароля либо поиск и использование подходящего эксплоита. Эксплоит – это программный код, написанный под конкретную уязвимость.
  • Если вы хотите научиться использовать эксплоиты, скачайте программу Metasploit. В ее состав входят несколько сотен эксплоитов, их состав постоянно обновляется. В составе Метасплоита есть и сканер Nmap. Изучение программы требует времени и терпения, но результат того стоит.
  • Если вы хотите быстрого результата, скачайте две программы: VNC-сканер с Gui-интерфейсом (vnc_scanner_gui) и Lamescan. Первая является очень хорошим и быстрым сканером, удобным при сканировании конкретного порта. Например, порта 4899, используемого программой удаленного управления Radmin.
  • Запустите VNC-сканер, укажите порт 4899, выберите в списке нужную страну и нажмите кнопку «Get diap list». В окошке слева появится список диапазонов ip-адресов. Выберите несколько диапазонов (лучше 2-3), остальные удалите. Нажмите кнопку «Start scan». После окончания процесса сканирования вы получите текстовый файл IPs.txt со списком ip-адресов компьютеров, у которых открыт порт 4899. Нажмите кнопку «Start parser» - список будет очищен от всей лишней информации, останутся только ip-адреса.
  • Запустите программу Lamescan. Нажмите в меню «Настройка – Основное». Поставьте номер порта 4899. Введите пути к словарям паролей и логинов (найдите их в сети). Нажмите «Готово». Теперь нажмите зеленый плюсик и введите в появившееся окно ваши насканенные ip-адреса и нажмите зеленую стрелку. Начнется процесс подбора пароля к указанным адресам. В большинстве случаев подбор оказывается неудачным, но из сотни адресов несколько окажутся с простыми паролями.
  • Скачайте и установите программу Radmin. Запустите ее, введите адрес компьютера с подобранным паролем. В появившемся окне введите пароль (и логин – если подобрали данные к программе с логином и паролем). Появится синий значок соединения, и несколько секунд спустя вы увидите у себя на экране рабочий стол удаленного компьютера.
  • Порт в компьютерных сетях представляет собой натуральное число, которое записывается в заголовке протокола OSI. Он предназначен для идентификации процесса-получателя пакета в одном хосте.

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

    Как это работает?

    Если программа использует обмен данными через сеть, этот процесс может происходить следующим образом:

    • У ОС запрашивается определенный номер порта. При этом система может как предоставить его программе, так и запретить передачу (это происходит в случаях, если этот номер порта уже используется другим приложением).
    • У ОС запрашивается не конкретизированный номер порта, в любой свободный. Система сама выбирает его и предоставляет программе.
    • IP-адреса хостов получателя и отправителя (необходимы, чтобы между ними был построен маршрут);
    • Номер протокола;
    • Номера обоих портов (получателя и отправителя).

    Если соединение происходит по протоколу TCP, то порт отправителя применяется как ОС получателя для передачи подтверждения о полученных данных, так и процессом получателем для передачи ответа.

    Открытые и закрытые порты

    Со стороны отправителя хост и номер порта выступают в качестве аналога обратного адреса, который указывается на конвертах. Такой номер называют обратным.

    В случаях, когда какой-либо процесс на хосте на постоянной основе использует один и тот же номер порта, такой порт считается открытым. К примеру, программа, связанная с сервером, может все время использовать 80 или 8080 для связи. Когда процесс не может тот считается закрытым.

    Номера портов

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

    Согласно официальным данным, этот порт работает по протоколу TCP и предназначен для использования с HTTP. Неофициально он также используется контейнером сервлетов Tomcat, написанным на языке Java.

    TCP-порт 8080 может использовать определенный протокол для связи, в зависимости от приложения. Протокол представляет собой набор формализованных правил, который объясняет, как данные передаются по сети. Это можно представить в качестве языка, который применяется между компьютерами, чтобы помочь им общаться более эффективно.

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

    Передача данных

    Таким образом, TCP-порт 8080 использует протокол управления передачей. Он является одним из основных протоколов в сетях TCP/IP. В то время как протокол IP имеет дело только с пакетами, TCP позволяет двум хостам устанавливать соединение и обмениваться потоками данных. Он гарантирует их доставку, а также то, что пакеты будут доставлены на порт 8080 в том же порядке, в котором они были отправлены. Гарантированная связь по 8080 - это ключевое различие между TCP и UDP. UDP 8080 не гарантировал бы соединение так же.

    Как открыть порт 8080 в Windows 7?

    Для этого необходимо зайти в меню «Пуск» и найти Панель управления. В ней требуется нажать на подменю «Сеть» и найти в нем «Бранмауэр». Во вкладке «Исключения» найдите пункт «Добавить порт». У вас откроется диалоговое окно, в котором потребуется ввести номер порта. Убедитесь в том, что в настройках указан TCP, после чего выберите ОК.

    Как закрыть порт 8080? Для этого достаточно настроить подключение на другой определенный порт.

    Расширенная настройка прокси-сервера HTTP и TCP

    Протокол HTTP работает поверх протокола TCP, но предоставляет дополнительную информацию о назначении сообщения. По этой причине два прокси настраиваются по-разному.

    HTTP-трафик включает в себя целевой хост и порт для сообщения. Он отправляется по TCP-соединению с конечной точкой TCP, то есть между определенным хостом и портом. Как правило, HTTP-сообщение указывает на ту же конечную точку, что и TCP-соединение. Если вы изменяете конфигурацию клиента для использования прокси-сервера HTTP, соединение выполняется с другим хостом и портом, вместо указанного в URL-адресах HTTP. Это означает, что конечная точка TCP в сообщении отличается от той конечной, к которой она подключена.

    Например, если HTTP-запрос отправлен на страницу http://192.0.2.1:8080/operation, запрос включает в себя «192.0.2.1:8080» в заголовке «Host» HTTP-сообщения, которое отправляется на 8080 порт на хосте 192.0.2.1.

    Однако, если вы настроите HTTP-клиент на использование прокси-сервера, базовое TCP-соединение переходит к конечной точке TCP для него, в то время как сообщения все еще содержат исходную конечную точку.

    Например, если вы настроите клиент на отправку своих сообщений на прокси-сервер по адресу 198281.100.1 порт 3128, а клиент отправит запрос для http://192.0.2.1:8080/operation, сообщение все еще содержит «192.0.2.1: 8080 »в заголовке« Host », а теперь также в поле« Request-Line ». Однако это сообщение теперь отправляется через TCP-соединение по адресу 198.51.100.1:3128. Таким образом, прокси-сервер HTTP может получать сообщения на одном порту (прокси-порт 8080) и может пересылать их нескольким различным службам на основе информации о получателе.

    Как настроить прием подключений через порт 8080?

    Итак, заголовок «Host» был добавлен в HTTP/1.1. Соединения HTTP/1.0 не включает его в себя. По этой причине такие соединения, которые не проходят через прокси, не включают в себя хост и порт для сообщения. Однако информация по HTTP/1.0, отправленная через прокси-сервер, по-прежнему содержит целевой хост и порт в «строке запроса». Поэтому отсутствие заголовка «Host» не вызывает проблемы для прокси.

    Чтобы включить прокси-сервер TCP, вы должны изменить конфигурацию клиента с конечной точки TCP в реальном времени на заменяемую конечную точку. В отличие от HTTP, этот протокол не обеспечивает встроенную возможность использования прокси. То есть, если вы подключаетесь к прокси-серверу через TCP, для передачи информации конечному адресату не предусмотрен какой-либо механизм.

    Как настроить множественное соединение с помощью 8080?

    Единственный способ для прокси-сервера TCP разрешить соединения с несколькими системами (то есть с конечными точками назначения), независимо от того, какой трафик будет отправлен по этим соединениям, - это прослушивание другого порта для каждой из систем. Это позволяет подключать и поддерживать информацию о том, какой из ее номеров портов соответствует каждой конечной точке. Затем клиент настраивается с прокси-портом, соответствующим каждой системе, с которой ему нужно соединиться. для прослушивания и соответствующие им конечные точки настраиваются в операторах в файле конфигурации прокси, RTCP_install_dir / httptcp / registration.xml. В первую очередь, необходимо проверить порт 8080 - если он открыт по умолчанию, дальнейшие настройки будут сделаны за несколько минут.

    В этом примере 198.51.100.1 является IP-адресом прокси-сервера. Любой трафик, отправленный на порт 3333 на прокси-сервер, отправляется на порт 8080 по адресу: www. Example. com:

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

    Взаимодействие между HTTP и TCP

    Чтобы понять, как порты обрабатываются в прокси-серверах HTTP и TCP, предположим, что у вас есть две службы: на 192.0.2.1:8080 и 192.0.2.1:8081, и прокси-сервер, работающий на 198.51.100.1. Если же они отличаются по IP-адресу, а не по номеру порта, этот пример будет таким же, за исключением соответствующего адреса для каждой службы. Если они ожидают HTTP-трафик на один HTTP-прокси-порт, запросы на обе конечные точки TCP могут быть отправлены на него. Когда HTTP видит, что сообщение адресовано 192.0.2.1:8080, прокси перенаправляет сообщение на этот адрес или применяет любые правила, которые он имеет для этой службы. Эта же процедура применяется к 192.0.2.1:8081, используя тот же самый порт.

    Если эти две службы вместо этого ожидают трафик TCP, должны быть открыты два TCP-прокси-порта, определенные двумя элементами в файле конфигурации:

    Конфигурация клиента для первой службы изменяется с «192.0.2.1:8080» на «198.51.100.1:3333», а для второй - с «192.0.2.1:8081» до «198.51.100.1:3334». Клиент отправляет сообщение (пакет TCP) первой службе по первому адресу.

    Прокси-сервер получает его на этом порту (3333), но не знает, какие данные отправляются по этому соединению. Все, что ему известно - это подключение к порту 3333. Поэтому прокси-сервер консультируется с его конфигурацией и видит, что трафик на этот порт должен быть перенаправлен на 192.0.2.1:8080 (или что к нему необходимо применить правило для этой службы). Если вы не можете перенаправить весь свой HTTP-трафик, поскольку конфигурация клиента не поддерживает конфигурацию прокси-сервера HTTP, вы должны использовать обратный HTTP-прокси.

    В нем вместо целевого URL-адреса вы указываете нужный вам. Этот процесс аналогичен процессу настройки прокси-сервера TCP, в котором вы указываете его в качестве конечной точки TCP для сообщения в клиентской системе и создаете правило пересылки.

    Разница заключается в том, что вы добавляете атрибут типа в правило, определяющее HTTP, как в следующем примере: .

    Как идет движение трафика?

    Теперь прокси-сервер настроен на прием только HTTP-трафика на назначенный порт, и может применять более богатую фильтрацию. Например, сервер может отфильтровать трафик на заглушку, которая не имеет определенного пути в своем URL-адресе, или который не использует определенный HTTP-метод, такой как POST. Однако, поскольку заглушка не всегда работает, сервер все еще нуждается в адресате из элемента , чтобы иметь возможность отправлять трафик в систему. Например, предположим, что клиенту необходимо подключиться к службе на 192.0.2.1:8080 и использовать обратный HTTP-прокси на 198.51.100.1:3333.

    Прежде, чем клиент сможет использовать прокси-сервер, конфигурацию клиента для этой службы необходимо изменить с URL-адреса, например http:// 192.0.2.1:8080/ operation, на http:// 198.51.100.1:3333/ operation. Запрос, который отправляется на этот новый URL-адрес, попадает в прокси-сервер.

    Сообщение запроса содержит конечную точку TCP для прокси (198.51.100.1:3333) в заголовке «Хост», а не адрес системы, потому что клиент не знает, что он отправляет перенаправленное сообщение. Эта упрощенная клиентская роль определяет природу такого соединения. Таким образом, прокси использует элементы , чтобы знать, что запрос, поступающий на порт 3333, требует одно из следующих действий: он должен быть перенаправлен в живую систему на 192.0.2.1:8080, а заголовок «Host» в сообщении должен быть обновлен. Для сообщения должны применяться все правила этой службы, например, маршрутизация на заглушку.

    Похожие публикации