Где номер порта, указанный в результате этой команды?

Я провожу простое сканирование портов в своей системе и не знаю, запутался я или нет.

После запуска lsof -i и мои результаты:

COMMAND    PID   USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
firefox-e 8008 legion   43u  IPv4  96999      0t0  TCP KryptL0c:44376->ec2-34-212-188-196.us-west-2.compute.amazonaws.com:https (ESTABLISHED)
firefox-e 8008 legion   67u  IPv4  84170      0t0  TCP KryptL0c:52778->ord37s09-in-f10.1e100.net:https (ESTABLISHED)
firefox-e 8008 legion   94u  IPv4  93549      0t0  TCP KryptL0c:56526->ord37s35-in-f1.1e100.net:https (ESTABLISHED)
firefox-e 8008 legion   98u  IPv4  89869      0t0  TCP KryptL0c:47874->ec2-52-86-133-10.compute-1.amazonaws.com:https (ESTABLISHED)
firefox-e 8008 legion  126u  IPv4  98838      0t0  TCP KryptL0c:40792->ord38s28-in-f10.1e100.net:https (ESTABLISHED)
firefox-e 8008 legion  131u  IPv4  98839      0t0  TCP KryptL0c:41878->ord38s01-in-f10.1e100.net:https (ESTABLISHED)
firefox-e 8008 legion  133u  IPv4  88016      0t0  TCP KryptL0c:44998->server-99-84-167-136.ord52.r.cloudfront.net:https (ESTABLISHED)
firefox-e 8008 legion  176u  IPv4  88018      0t0  TCP KryptL0c:51574->ord37s18-in-f2.1e100.net:https (ESTABLISHED)
firefox-e 8008 legion  179u  IPv4  86297      0t0  TCP KryptL0c:46752->142.250.123.157:https (ESTABLISHED)
firefox-e 8008 legion  184u  IPv4  84401      0t0  TCP KryptL0c:40262->ord38s08-in-f2.1e100.net:https (ESTABLISHED)
firefox-e 8008 legion  187u  IPv4  92092      0t0  TCP KryptL0c:38700->ord38s28-in-f1.1e100.net:https (ESTABLISHED)
firefox-e 8008 legion  193u  IPv4  89558      0t0  TCP KryptL0c:40714->ord37s09-in-f2.1e100.net:https (ESTABLISHED)
firefox-e 8008 legion  199u  IPv4  90795      0t0  TCP KryptL0c:47760->136.144.59.88:https (ESTABLISHED)
firefox-e 8008 legion  201u  IPv4  90789      0t0  TCP KryptL0c:40586->server-99-84-253-65.ord50.r.cloudfront.net:https (ESTABLISHED)
firefox-e 8008 legion  210u  IPv4  90803      0t0  TCP KryptL0c:41732->lga15s49-in-f4.1e100.net:https (ESTABLISHED)
firefox-e 8008 legion  214u  IPv4  90805      0t0  TCP KryptL0c:45540->rio01s25-in-f3.1e100.net:https (ESTABLISHED)
firefox-e 8008 legion  221u  IPv4  97886      0t0  TCP KryptL0c:41752->ord37s07-in-f14.1e100.net:https (ESTABLISHED)
firefox-e 8008 legion  301u  IPv4  92423      0t0  TCP KryptL0c:59832->ord38s04-in-f2.1e100.net:https (ESTABLISHED)

В первой строке порт 44376, верно?

Если это правильно и эти службы установлены в моей системе, почему, когда я запускаю сканирование портов с помощью nmap -p 1-65535 xxx.xxx.x.xxx У меня нет открытых портов?

2 ответа
2

В первой строке порт 44376, верно?

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

Здесь, поскольку локальный порт имеет высокий уровень (> 40 000), а удаленный порт — 443 (HTTPS), мы можем с высокой степенью уверенности сделать вывод, что это исходящее соединение с некоторой службой HTTPS в Интернете.

Я предполагаю, что вы используете macOS или BSD.

Рассмотрим следующие примеры реальных слушателей ( -P так что порты не разрешаются в «известные имена портов»):

$ lsof -i udp -P
…
syncthing 16758 fuzzy    7u  IPv6 0xd2b0d06f6f1a443d      0t0  UDP *:22000
…
$ lsof -i tcp -P
…
syncthing 16758 fuzzy   17u  IPv6 0xd2b0d06f70a57bfd      0t0  TCP *:22000 (LISTEN)
…

Как видите, их легко отличить друг от друга: у них нет удаленных конечных точек. Поскольку на TCP существует правильное состояние «Прослушивание», оно также явно указано. С UDP все не так просто.

Если бы я запустил протокол NMAP для TCP-порта 22000, он сообщил бы, что он открыт.

    KryptL0c:44376->ec2-34-212-188-196.us-west-2.compute.amazonaws.com:https
    

    В этом случае мы можем сделать вывод что точки подключения от клиентского хоста: источник порта KryptL0c:44376 к -> хост сервера назначения: порт ec2-34-212-188-196.us-west-2.compute.amazonaws.com:https, потому что https — это известный сервис.

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

    Кроме того, общие номера служебных портов преобразуются в такие имена, как https (это порт 443) с использованием файла / etc / services, и часто может не отображаться в виде чисел в таких выводах.

    • 1

      Стрелка всегда слева направо, от локального к удаленному, это все. Вы не можете легко определить, какая сторона инициировала соединение, потому что после установления TCP-соединения два конца становятся одноранговыми. Даже наличие или отсутствие локального процесса, прослушивающего данный порт, не может быть твердым ключом к разгадке, потому что порт мог или не мог прослушиваться во время установления соединения. Когда локальный порт высокий (52778) и удаленный порт хорошо известен (https) то почти наверняка он исходящий. Это единственная подсказка. Сама стрелка говорит ничего такого .

      — Камил Мациоровски
      22 часов назад

    Добавить комментарий

    Ваш адрес email не будет опубликован. Обязательные поля помечены *