Большой гайд по тестированию с postman для начинающих

Особенности Postman

Ниже мы перечислим только некоторые из особенностей Postman:

  • Простой в использовании API клиент
  • Функциональный и приятный UI.
  • Может использоваться как для ручного, так и для автоматизированного тестирования API.
  • Поддерживает интеграции с другими инструментами (например, поддерживает Swagger и RAML)
  • Может быть запущен в Windows, Linux, MacOS.
  • Не требует знания языков программирования.
  • Предоставляет возможность легко экспортировать коллекции запросов, наборы тестов. Можно легко обмениваться этими данными с коллегами.
  • Интегрируется с CI/CD инструментами (например, с Jenkins, TeamCity и т.п.)
  • API Posman-a подробно документирован.
  • Позволяет выполнять API автотесты.

Больше информации о Postman можно найти на официальном сайте: https://www.getpostman.com/

Postman — freemium-интсрумент. Но бесплатной версии более, чем достаточно, чтобы проводить базовое тестирование API.

В брандмауэре системы

Важно! Прежде чем продолжить, необходимо проверить документацию по поддержке приложения, чтобы узнать, какие порты и тип протокола потребуется открыть. Кроме того, можно быстро подтвердить, нужно ли открыть порт, временно отключив брандмауэр, и, если приложение работает с отключенным защитником, это означает, что необходимо создать новое правило

  1. Кликнуть по меню «Пуск» и выбрать системные настройки (значок шестеренки). Или просто нажать сочетание клавиш Win+I.
  2. Открыть раздел «Безопасность».
  3. Перейти на вкладку безопасности Windows. Щелкнуть по пункту «Брандмауэр и защита сети».
  4. Выбрать дополнительные настройки.
  5. Кликнуть левой кнопкой по правилам для входящих подключений на левой панели навигации.
  6. В разделе «Действия» на правой панели выбрать параметр «Создать правило».
  7. В новом окне щелкнуть по опции «Порт». Нажать кнопку «Далее».
  8. Установить соответствующий протокол (TCP или UDP) в зависимости от приложения. Обычно это TCP.
  9. В поле «Определенные локальные порты» ввести номер. Если приложение требует открытия нескольких, можно вписать столько, сколько нужно, при условии, что каждый из них будет разделен запятой (4500, 4600, 5000). В случае если нужно указать диапазон портов, используется дефис (3000-3100). Нажать «Далее».
  10. Выбрать параметр «Разрешить подключение». Нажать кнопку «Далее».
  11. Указать тип сети, чтобы применить правило. Обычно этот параметр остается с настройками по умолчанию. Нажать «Далее».
  12. Ввести имя для правила. Кликнуть по «Далее».
  13. Щелкнуть по кнопке «Готово».

Если приложению требуется определенный исходящий порт, можно использовать ту же инструкцию, но на шаге №5 выбрать параметры правил для исходящих сообщений.

Когда пользователь не знает, какой именно порт нужно задействовать, необходимо:

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

Как передавать и получать сырые данные по протоколу UDP

Чтобы не просто выполнить подключение, когда данные вводятся вручную (вводить шестнадцатеричные данные вручную затруднительно для нас), а чтобы подключиться и сразу передать данные, можно использовать команду вида:

cat ФАЙЛ | ncat -u -C IP-АДРЕС ПОРТ

Опция -u означает использовать UDP протокол (по умолчанию используется TCP).

Пример команды, которая отправляет данные из файла hello-camera.bin на удалённый IP 255.255.255.255 на UDP порт 34569:

cat hello-camera.bin | ncat -u -C 255.255.255.255 34569

UDP протокол не дожидается ответа, он разрывает соединение. Для отправки ответа удалённых хост запускает новое UDP соединение, но дело в том, что для его подключения мы должны прослушивать порт. Ответ придёт на UDP порт 34569. Прослушивать порт можно также командой ncat. Для этого используется команда вида:

ncat -u -l IP-АДРЕС ПОРТ

В этой команде опция -u означает использовать UDP протокол (по умолчанию используется TCP). Опция -l означает прослушивать входящие соединения. IP-АДРЕС — это IP сетевого интерфейса на локальной машине, где запущена утилита ncat. ПОРТ — это порт для прослушивания.

IP адрес компьютера, где будет запущена ncat, 192.168.0.88, нужно прослушивать на 34569 порту, тогда команда следующая:

ncat -u -l 192.168.0.88 34569

Кажется, что ничего не происходит, но программа и не завершает работу — она просто ожидает входящее соединение.

Не закрывая это окно терминала, откроем другую консоль и вновь повторяем первую команду:

cat hello-camera.bin | ncat -u -C 255.255.255.255 34569

После этого в первой консоли будет показан полученный ответ:

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

ncat -u -l 192.168.0.88 34569 > response.bin

В результате присланный ответ будет сохранён в файле response.bin.

Установка совместного использования портов

Служба совместного использования портов net. TCP доступна во всех операционных системах, поддерживающих WinFX, но служба не включена по умолчанию. Из соображений безопасности администратор должен вручную включить службу совместного использования Net.TCP перед первым использованием. Служба совместного использования портов Net.TCP предоставляет параметры конфигурации, которые позволяют манипулировать некоторыми характеристиками сетевых сокетов, принадлежащих службе совместного использования портов. Дополнительные сведения см. в разделе инструкции. Включение службы совместного использования портов net. TCP.

Примеры использования

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

Используя нашу услугу «Публикация URL» вы бы могли просматривать этот поток, если бы его вещание осуществлялось средствами протоколов http/https, но здесь вещание может использовать иные протоколы. Для достижения цели просмотра видеопотока вне домашней сети, проброс TCP или UDP портов может решить проблему удаленного доступа.

Важно! Вы должны успешно выполнитиь пинг со страницы «Инструменты» до вашего устройства. Это подтвердит, что правила маршрутизации установлены корректно

Также вы можете осуществить запрос TCP порта со страницы «Инструменты». Это подтвердит, что ваше устройство «слушает» на  указанном вами адресе и порту TCP. Проверить таким же образом доступность порта UDP нельзя.

2. Вы хотите получить доступ к своему домашнему устройству с использованием протоколов RDP или VNC (оба базируются на TCP). Вы могли бы использовать доступ через HTTP или SOCKS5 прокси с авторизацией, но ваше программное обеспечение не может использовать авторизацию в прокси соединениях. В этом случае, вы можете воспользоваться пробросом нужного TCP порта.

3. Ваше устройство (например, GPS навигатор или часы) «умеет» пересылать данные на внешний хост лишь при помощи собственного протокола, не используя при этом HTTP/HTTPS, прокси и прочие стандартные средства коммуникаций.

Во всех этих случаях вы можете попробовать использовать нашу возможность «Проброс TCP порта» из сети Интернет на домашнее устройство.

Сделать это несложно, достаточно заполнить таблицу по примеру, представленному на картинке.

Здесь вы указываете IP адрес устройства в домашней сети и нужный порт TCP этого устройства, а затем нажимаете кнопку «Сохранить». Для этого соединения будет автоматически назначен внешний порт, который будет доступен из Интернет по адресу msk.vpnki.ru:XXXXX  (84.201.157.25:XXXXX)

Приоритетным способом обращения к вашему порту является указание доменного имени msk.vpnki.ru:XXXXX, однако не все приложения могут корректно работать с таким типом указываемого адреса. В этом случае указывайте адрес 84.201.157.25:XXXXX. Однако убедитесь, что именно этот адрес актуален и ведет к msk.vpnki.ru

С 1 декабря 2018 года мы запустили в режиме тестирования функцию «Белый список» для TCP порта, которая разрешает внешние соединения к вашему TCP порту только с определенных IP адресов сети Интернет. Эта функция позволит вам ограничить любителей подключаться к чужим ресурсам. Пока в качестве разрешающего списка вы можете указать одну сеть, размер которой описывается маской. Например,

К порту, указанному в первой строке, доступ будет не ограничен (сеть и маска 0.0.0.0 / 0.0.0.0)

К порту, указанному во второй строке, доступ будет возможен только с адресов сети 87.232.0.0 / 255.255.0.0 (это где-то в Ирландии)

ВАЖНО!

Для поиска неисправностей проверьте что:

1. Туннель установлен

2. Со страницы Инструменты пингуется адрес VPNKI , выданный вашему устройству (172.16.xxx.xxx)

3. Со страницы Инструменты пингуется адрес внутри вашей сети, расположенный за маршрутизатором (например, 192.168.xxx.xxx) на котором расположен ресурс, который вы хотите опубликовать

4. Со страницы Инстрмуенты успешно запрашивается TCP порт устройства внутри вашей сети (например, адрес 192.168.1.10 порт 8080)

Зачем использовать Postman?

Сегодня Postman — супер-популярный инструмент. Им пользуются более 8 миллионов разработчиков и тестировщиков. И вот почему:

  • Бесплатный. Postman — бесплатный инструмент.
  • Простой в использовании. Очень просто начать пользоваться — Postman интуитивно понятный. Уже через несколько минут после скачивания и установки вы сможете отправить ваш первый запрос.
  • Поддерживает разные API. С помощью Postman можно выполнять разные типы запросов к любым API (REST, SOAP, GraphQL (по тестированию GraphQL c помощью Postman у нас есть отдельная статья)
  • Расширяемый. Postman можно настроить под ваши конкретные нужды с помощью Postman API.
  • Интегрируемый. Можно легко интегрировать наборы тестов в ваш любимый CI/CD инструмент с помощью Newman (CLI collection runner — позволяет запускать Postman-коллекции в командной строке)
  • Имеет большое комьюнити. Postman очень популярный и, как следствие, имеет большое комьюнити, которое подскажет ответы на большинство вопросов.

Отправка запроса

Запрос представляет собой простой текстовый документ, структурированный точно так, как определено протоколом связи.

Он состоит из 3 частей:

  • строка запроса
  • заголовок запроса
  • тело запроса

Строка запроса

Строка запроса устанавливается в одну строку:

  • метод HTTP
  • расположение ресурса
  • версия протокола

Пример:

GET / HTTP/1.1

Заголовок запроса

Заголовок запроса представляет собой набор пар field: value которые устанавливают определенные значения.

Есть 2 обязательных поля, одно из которых — «Host , а другое — «Connection , а все остальные поля являются необязательными:

Host: ip-calculator.ru Connection: close

Host указывает доменное имя, на которое мы хотим нацелиться, в то время как Connection всегда close если соединение не должно оставаться открытым.

Некоторые из наиболее часто используемых полей заголовка:

  • Origin
  • Accept
  • Accept-Encoding
  • Cookie
  • Cache-Control
  • Dnt

но существует много других.

Часть заголовка заканчивается пустой строкой.

Тело запроса

Тело запроса является необязательным, не используется в запросах GET, но очень часто используется в запросах POST, а иногда и в других глаголах, и может содержать данные в формате JSON.

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

Полезные приложения для определения статуса вашего порта

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

SolarWinds Free Port Scanner

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

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

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

SolarWinds может поставляться с некоторыми прикрепленными строками, но на самом деле он работает так, как рекламируется, и прост в использовании.

CanYouSeeMe

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

Затем он сообщит вам, заблокирован порт или нет, и затем вам нужно будет выяснить, на уровне ли блокировка компьютера, маршрутизатора или на уровне поставщика услуг.

Ректальное администрирование: Основы для практикующих системных АДминистраторов

Одной из самых популярных и зарекомендовавших себя методологий системного администрирования является так называемое ректальное. Редкий случай сопровождения и обслуживания информационных систем, инфраструктуры организации обходится без его использования. Зачастую без знания данной методологии сисадминам даже бывает сложно найти работу в сфере ИТ, потому что работодатели, особенно всякие аутсорсинговые ИТ фирмы, в основном отдают предпочтение классическим, зарекомендовавшим себя методикам, а не новомодным заграничным веяниям: практикам ITIL, нормальным ITSM и прочей ерунде.

Диагностика разрешения имен (nslookup, dig)

Разобравшись с сетевой связностью и маршрутизацией приходим к следующему этапу — разрешение доменных имен. В большинстве случаев в работе с удаленными сервисами мы не используем IP-адреса, а указываем доменные имена удаленных ресурсов. За перевод символических имен в IP-адреса отвечает служба DNS — это сеть серверов, которые содержат актуальную информацию о соответствии имен и IP в пределах доверенных им доменных зон.

Самый простой способ проверить работает ли разрешение имен — запустить утилиту ping с указанием доменного имени вместо IP-адреса (например, ping ya.ru). Если ответные пакеты от удаленного сервера приходят, значит все работает как надо. В противном случае нужно проверить прописан ли DNS-сервер в сетевых настройках и удается ли получить от него ответ.

Способы выяснения какой DNS-сервер использует наш сервер различаются в зависимости от используемой версии и дистрибутива ОС Linux. Например, если ОС используется Network Manager для управления сетевыми интерфейсами (CentOS, RedHat и др.), может помочь вывод команды nmcli:

Скриншот №7. Команда nmcli

В настройках сетевого интерфейса, в разделе DNS configuration, мы увидим IP-адрес сервера. В Ubuntu 18.04 и выше, использующих Netplan, используем команду systemd-resolve —status:

Скриншот №8. Команда systemd-resolve —status

Используемый сервер также будет указан в настройках интерфейса, в разделе DNS Servers. В более старых версиях Ubuntu потребуется проверить содержимое файлов /etc/resolve.conf и /etc/network/interfaces. Если сервер не указан, воспользуйтесь статьей для ОС Ubuntu 18.04 или CentOS, чтобы скорректировать настройки.

Проверить работу сервиса разрешения имен нам помогут утилиты nslookup или dig. Функционально они почти идентичны: G-вывод утилиты dig содержит больше диагностической информации и гибко регулируется, но это далеко не всегда нужно. Поэтому используйте ту утилиту, которая удобна в конкретной ситуации. Если эти команды недоступны, потребуется доставить пакеты на CentOS/RedHat:

для Debian/Ubuntu:

После успешной установки сделаем тестовые запросы:

Скриншот №9. Тестовые запросы

В разделе Answer Section видим ответ от DNS сервера — IP-адрес для A-записи с доменным именем ya.ru. Разрешение имени работает корректно:

Скриншот №10. Подтверждение корректной работы

Аналогичный запрос утилитой nslookup выдает более компактный вывод, но вся нужная сейчас информация в нем присутствует.

Что же делать, если в ответе отсутствует IP-адрес? Возможно, DNS-сервер недоступен. Для проверки можно отправить тестовый запрос на другой DNS-сервер. Обе утилиты позволяют эти сделать. Направим тестовый запрос на DNS-сервер Google:

Скриншот №11. Отправка тестового запроса 1

Скриншот №12. Отправка тестового запроса 2

Если имена разрешаются публичным DNS-сервером корректно, а установленным по умолчанию в ОС нет, вероятно, есть проблема в работе этого DNS-сервера. Временным решением данной проблемы может быть использование публичного DNS-сервера в качестве сервера для разрешения имен в операционной системе. В том случае, если разрешение имен не работает ни через локальный, ни через публичный DNS сервер — стоит проверить не блокируют ли правила файрвола отправку на удаленный порт 53 TCP/UDP пакетов (именно на этом порту DNS-серверы принимают запросы).

Часто используемые параметры:

  • nslookup имя сервер — разрешить доменное имя, используя альтернативый сервер;
  • nslookup –type=тип имя — получить запись указанного типа для доменного имени (например, nslookup -type=mx ya.ru – получить MX-записи для домена ya.ru);
  • dig @сервер имя — разрешить доменное имя, используя альтернативый сервер;
  • dig имя тип — получить запись указанного типа для доменного имени (например, dig ya.ru mx — получить MX-записи для домена ya.ru).

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

191028
Санкт-Петербург
Литейный пр., д. 26, Лит. А

+7 (812) 403-06-99

700
300

ООО «ИТГЛОБАЛКОМ ЛАБС»

700
300

Что такое порты в Windows

Давайте я попробую по простому объяснить, что такое порт. Представим себе большой микрорайон с большим количеством многоэтажных домов, в каждом из них есть квартиры с жильцами, общим количеством 65 536, каждая квартира имеет свой уникальный, порядковый номер. Теперь представим, что вам необходимо попасть к другу Васе, который живет в 1443 квартире, вы что делаете идете в нужный дом с таким номером квартиры, далее вам нужно заскочить к Марине, которая живет в 80 квартире, а теперь представьте, что вместо вас это ваш компьютер и вместо ваших друзей, это порты. Каждый такой порт уникален и отвечает за ответ пользователю по определенной службе, например,

  • 80 — это http служба, которая отвечает вам при запрашивании страниц сайта
  • 1433 — это порт службы SQL
  • 443 — https зашифрованный вариант http, с использованием SSL сертификатов.

Из выше описанного, порты бывают двух типов:

  1. Жестко забронированные под определенные службы. Это порты которые используются исключительно определенными программами. Диапазон таких портов от 0-1024, но есть и выше, тот же 1433 у SQL или 55777 Vipnet.
  2. Динамические, используемые для повседневных вещей пользователя. Это диапазон после 1024, и используют их, например, в таком контексте: скачиваете файл, ваш компьютер использует один порт, смотрите online фильм, ваш компьютер использует второй порт и так далее. Как только передача данных заканчивается, порт освобождается.

Порты еще очень часто ассоциируют с сокетами, о которых я уже рассказывал, советую посмотреть.

Этап поиска DNS

Браузер запускает поиск DNS, чтобы получить IP-адрес сервера.

Доменное имя — удобный способ для нас, людей, но Интернет организован таким образом, что компьютеры могут искать точное местоположение сервера по его IP-адресу, который представляет собой набор чисел, например 222.324.3.1 (IPv4).

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

В Chrome есть удобный визуализатор DNS-кэша, который вы можете увидеть в

Если там ничего не найдено, браузер использует распознаватель DNS, используя системный вызов gethostbyname POSIX для получения информации о хосте.

gethostbyname

Сначала gethostbyname просматривает локальный файл hosts, который в macOS или Linux находится в /etc/hosts , чтобы проверить, предоставляет ли система информацию локально.

Если это не дает никакой информации о домене, система отправляет запрос на DNS-сервер.

Адрес DNS-сервера сохраняется в системных настройках.

Это 2 популярных DNS-сервера:

  • 8.8.8.8: публичный DNS-сервер Google
  • 1.1.1.1: DNS-сервер CloudFlare

Большинство людей используют DNS-сервер, предоставленный их интернет-провайдером.

Браузер выполняет DNS-запрос по протоколу UDP.

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

DNS-сервер может иметь IP-адрес домена в кэше. Если нет, он спросит корневой DNS-сервер . Это система (состоящая из 13 реальных серверов, распределенных по всей планете), которая управляет всем интернетом.

DNS-сервер не знает адреса каждого доменного имени на планете.

Он знает, где находятся DNS-преобразователи верхнего уровня .

Домен верхнего уровня — это расширение домена: .com , .it , .pizza и так далее.

Как только корневой DNS-сервер получает запрос, он перенаправляет запрос на этот DNS-сервер домена верхнего уровня (TLD).

Скажем, вы ищете ip-calculator.ru. DNS-сервер корневого домена возвращает IP-адрес TLD-сервера .ru.

Теперь наш распознаватель DNS будет кэшировать IP-адрес этого сервера TLD, поэтому ему не нужно будет снова запрашивать его у корневого DNS-сервера.

DNS-сервер TLD будет иметь IP-адреса официальных серверов имен для домена, который мы ищем.

Это DNS-серверы хостинг-провайдера. Их обычно больше 1, чтобы служить резервной копией.

Например:

  • ns1.example.com
  • ns2.example.com
  • ns3.example.com

DNS-распознаватель запускается с первого и пытается запросить IP-адрес домена (также с поддоменом), который вы ищете.

Это основной источник правды для IP-адреса.

Теперь, когда у нас есть IP-адрес, мы можем продолжить наше путешествие.

Что такое протокол TCP?

TCP — это протокол транспортного уровня, предоставляющий транспортировку (передачу) потока данных, с необходимостью предварительного установления соединения, благодаря чему гарантирует уверенность в целостности получаемых данных, также выполняет повторный запрос данных в случае потери данных или искажения. Помимо этого протокол TCP отслеживает дублирование пакетов и в случае обнаружения — уничтожает дублирующиеся пакеты. TCP — это аббревиатура от Transmission Control Protocol (Протокол Управления Передачей) — является обязательным протоколом стандарт TCP/IP, определенный в стандарте RFC 793, «Transmission Control Protocol (TCP)».

В отличие от протокола UDP гарантирует целостность передаваемых данных и подтверждения отправителя о результатах передачи. Используется при передаче файлов, где потеря одного пакета может привести к искажению всего файла.

TCP обеспечивает свою надежность благодаря следующему:

  • Данные от приложения разбиваются на блоки определенного размера, которые будут отправлены.
  • Когда TCP посылает сегмент, он устанавливает таймер, ожидая, что с удаленного конца придет подтверждение на этот сегмент. Если подтверждение не получено по истечении времени, сегмент передается повторно.
  • Когда TCP принимает данные от удаленной стороны соединения, он отправляет подтверждение. Это подтверждение не отправляется немедленно, а обычно задерживается на доли секунды
  • TCP осуществляет расчет контрольной суммы для своего заголовка и данных. Это контрольная сумма, рассчитываемая на концах соединения, целью которой является выявить любое изменение данных в процессе передачи. Если сегмент прибывает с неверной контрольной суммой, TCP отбрасывает его и подтверждение не генерируется. (Ожидается, что отправитель отработает тайм-аут и осуществит повторную передачу.)
  • Так как TCP сегменты передаются в виде IP датаграмм, а IP датаграммы могут прибывать беспорядочно, также беспорядочно могут прибывать и TCP сегменты. После получения данных TCP может по необходимости изменить их последовательность, в результате приложение получает данные в правильном порядке.
  • Так как IP датаграмма может быть продублирована, принимающий TCP должен отбрасывать продублированные данные.
  • TCP осуществляет контроль потока данных. Каждая сторона TCP соединения имеет определенное пространство буфера. TCP на принимающей стороне позволяет удаленной стороне посылать данные только в том случае, если получатель может поместить их в буфер. Это предотвращает от переполнения буферов медленных хостов быстрыми хостами.

Просмотр статуса TCP- и UDP-подключений

Если нас интересует состояние всех протоколов TCP, UDP, ICMP и других в нашей операционной системе, широко используемым инструментом всегда был «netstat», однако этот инструмент был на втором месте благодаря новому «ss». это позволит нам легко и быстро получить большой объем информации. Этот инструмент отвечает за проверку всех открытых или закрытых сокетов на нашем сервере Linux, и мы сможем увидеть статистику этих открытых или закрытых сокетов. Если вы использовали инструмент netstat в прошлом, мы уверены, что вам понравится этот новый инструмент «ss».

Инструмент «ss» уже предустановлен в операционных системах Linux как часть самой системы, как и в случае с «ping», «traceroute» и многими другими инструментами. Если мы открываем консоль как в пользовательском режиме, так и в режиме суперпользователя, мы должны выполнить:

Как только мы выполним этот заказ, мы увидим следующее:

Мы увидим статус соединения (ESTAB), а также полученные и отправленные пакеты, локальный адрес и порт, а также удаленный адрес и используемый порт. Мы собираемся получить большое количество портов, используемых различными программами и службами, которые мы установим в операционной системе.

Если мы хотим видеть статус всех портов (сокетов), мы можем установить следующий порядок:

Если мы хотим видеть только порты, которые «слушают», мы должны ввести следующую команду:

На следующем изображении вы можете увидеть пример портов, которые ГОТОВЫ для приема входящих соединений:

В случае, если мы хотим показать TCP-соединения, нам нужно будет использовать аргумент «-t», а в случае, если мы хотим показать UDP-соединения, нам придется использовать аргумент «-u».

Команда «ss» действительно полезна для отображения всех установленных соединений, а также для прослушивания в нашей операционной системе Linux.

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

Проблемы безопасности, связанные с совместным использованием портов

Хотя служба совместного использования портов Net.TCP предусматривает уровень обработки между приложениями и сетью, приложения, совместно использующие порты, все равно необходимо защищать так, как если бы они непосредственно прослушивали сеть. В частности, в приложениях, совместно использующих порты, необходимо оценивать привилегии процессов, в которых они выполняются. Имеет смысл рассмотреть возможность выполнения приложения от имени встроенной учетной записи Network Service, которая выполняется с минимально необходимым для обмена данными по сети набором привилегий.

Рейтинг
( Пока оценок нет )
Понравилась статья? Поделиться с друзьями:
Все про сервера
Добавить комментарий

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!: