Может кто-нибудь объяснить, когда и как часто используются все порты Windows RPC? «Основные», которые я понимаю:
- Порт 135
- Порт 137
- Порт 139
- Порты более высокого уровня, которые публикуются в "каталоге" портов 135
Затем я услышал, что порт 145 вошел в смесь, чтобы «улучшить ситуацию» с помощью NBT / TCP, но я не уверен, как это согласуется с последовательностью клиента Windows, инициирующего действие RPC.
Может ли кто-нибудь помочь мне исправить мое понимание портов RPC раз и навсегда?
Ответы:
Эта статья TechNet фантастическая , я рекомендую вам добавить ее в закладки. В нем перечислены порты, используемые различными службами Windows, и он довольно подробный.
В версиях Windows, предшествующих Vista / 2008, NetBIOS использовался для службы «RPC Locator», которая управляла базой данных службы имен RPC. Но в Vista / 2008 и более поздних версиях служба RPC Locator больше не нужна или не нужна. Это рудимент С этого момента я буду говорить только о MSRPC на Vista / 2008 +.
Порты 137, 138 и 139 предназначены для NetBIOS и не требуются для функциональности MSRPC.
Все порты, используемые RPC, следующие:
Другие приложения, такие как Remote Desktop Gateway, будут использовать RPC через HTTP-прокси и использовать порт 443 и т. Д.
Хотя в статье, на которую я ссылался выше, перечислены порты NetBIOS, они являются устаревшими и не требуются для RPC, при условии, что вы можете получить разрешение имен с помощью других средств (DNS), и что сама удаленная служба не зависит от NetBIOS.
Порт 145 является поддельным. Это не используется ни для чего. Везде, где вы слышали, что это «делает вещи лучше», это неправильно.
Базовый MSRPC использует порты 135 и динамический диапазон с высоким номером. Этот динамический диапазон с высокими номерами - это порты 1024-5000 в XP / 2003 и ниже и 49152-65535 в Vista / 2008 и выше. Вы также можете назвать эти порты эфемерными портами.
Вы можете определить пользовательский диапазон портов, если хотите, например:
И / или
TCP-порт 135 является преобразователем конечной точки MSRPC. Вы можете привязать этот порт на удаленном компьютере анонимно и перечислить все службы (конечные точки), доступные на этом компьютере, или вы можете запросить, на каком порту работает конкретная служба, если вы знаете, что ищете.
Позвольте мне показать вам пример запроса RPC Enpoint Mapper:
Вы заметите, что если вы выполните этот запрос на локальном компьютере, вы найдете гораздо больше конечных точек, чем если бы вы выполняли запрос с удаленного компьютера. Это связано с тем, что многие конечные точки RPC не предоставляются удаленно и используются только для локального межпроцессного взаимодействия.
Дополнительная информация: http://technet.microsoft.com/en-us/library/cc738291(v=WS.10).aspx
А также: https://www.myotherpcisacloud.com/post/2014/02/16/verifying-rpc-network-connectivity-like-a-boss.aspx
источник