Причины возникновения ошибки
Чаще всего подобное происходит у людей, пользующихся USB-модемом, который требуется подключать вручную, чтобы получить доступ в интернет. Возникает патовая ситуация: включить его невозможно, не войдя в систему, а этому препятствует отсутствие соединения. Такое же бывает, если деактивирована функция автоматического подсоединения к сети Wi-Fi или произошел сбой. И кроме сообщения «Ваш компьютер находится не в сети», нет никаких конкретных советов, как устранить ошибку. Нередко, даже после установления соединения происходит сбой настроек, и система пишет то же самое, тогда приходится производить откат ОС до определенной даты, когда все работало корректно.

Добрый день! Уважаемые читатели лучшего IT блога России. Сегодня я хочу вас познакомить, со всеми службами, которые присутствуют в операционной системе Windows 7, и главное, как их можно все посмотреть. Будут представлены 4 метода, и вы сами сможете подобрать, для себя оптимальный. Внимание: данное действо подразумевает, что Вы имеете хотя бы некоторое представление о том что делаете!
Полное описание служб, а также название и отображаемое имя можно посмотреть и изменить состояние по этому пути: “Мой компьтер” (правой кнопкой мыши, далее ПКМ)-“Управление”-“Службы” или “Пуск” – “Панель управления” – “Администрирование” – “Службы”.
Не все службы необходимы для нормальной работы компьютера. Многие из них попросту не нужны для той или иной конфигурации компьютера. Например если у вас нет принтера то служба очереди печати на совсем не нужна и далее в таком же духе. Ниже приводиться список служб, которые отключены или включены Asus 1101HA c Windows7. Пользователь один (с правами админа), в сеть выхожу через роутер по Wifi либо через прокси сервер.
Почему важно знать, какие порты открыты на компьютере?
Открытый порт на вашем компьютере (если не настроен файервол для запрета входящих соединений) означает, что к вашему компьютеру можно подключиться из вне.
Если ваш компьютер заражён вредоносным программным обеспечением, таким как троян, бэкдор (вирусы, которые позволяют злоумышленнику удалённо подключаться к вашему компьютеру и управлять им), то обычно такой бэкдор открывает порт и прослушивает сеть, в ожидании входящего соединения. Хотя могут быть варианты, например, многие бэкдоры подключаются к компьютеру злоумышленника и ожидают команд — в этом случае правильнее говорить не об открытом порте, а об установленном соединении. Это распространённый способ поведения вредоносного ПО, поскольку в данном случае не требуется, чтобы у жертвы был белый IP (что для домашних компьютеров является редкостью). Поэтому важно проверять открытые порты и установленные сетевые соединения. Конечно, установленное соединение означает наличие открытого порта, но с технической точки зрения это всё-таки разные вещи.
Ещё один пример, когда нужно определить, какая именно служба прослушивает порт: вы пытаетесь установить сетевую службу (веб-сервер Apache или СУБД MySQL), а они не запускаются, так как какая-то другая служба уже заняла их порт, который они используют по умолчанию. В этом случае нужно найти эту службу и отключить её или настроить на работу с другим портом.
Но, как и во многих IT задачах (да и вообще во многих профессиональных сферах), получить данные это только самое начало. Главное — это правильно их истолковать и понять.
Поэтому в этой статье мы рассмотрим, как узнать, какие порты открыты, как проверить, какая служба прослушивает определённый порт, а также научимся правильно понимать вывод команды NETSTAT и аналогичных.
Время от времени пользователям приходится заходить в раздел “Сетевые подключения” для того, чтобы отключить подключения, подключить, изменить их свойства, настройки и т.д., в данном материале рассмотрим какими способами можно попасть в это системное окно в Windows 11 и более ранних версиях.
Это самый простой и быстрый способ попасть в окно с названием “Сетевые подключения”.
1. Нажимаем Пуск и переходим в пункт “Выполнить”. Можно воспользоваться сочетанием “Win+R”.

2. Прописываем команду “ncpa.cpl” и нажимаем Enter.

То же самое можно воспроизвести и с помощью поиска Windows.
1. Кликаем мышкой на значок поиска в панели задач.
2. Пишем ту же команду “ncpa.cpl” и щелкаем по результату.

1. Щелкаем на поиск, вводим “

Панель управления” и кликаем ЛКМ на результат.
2. Далее нас интересует раздел “Сеть и интернет”. В нем нажимаем “Просмотр состояния сети и задач”.

3. Слева жмём “Изменение параметров адаптера”.

1. Нажимаем Пуск и выбираем “Параметры”.

2. Слева жмём на “Сеть и интернет”, а справа “Дополнительные сетевые параметры”. Сюда можно также попасть кликнув ПКМ на значок Wi-Fi в правом углу панели задач и выбрав “Параметры сети и интернета”.
3. Затем нажимаем “Дополнительные параметры сетевого адаптера” в разделе “Связанные параметры”.

Для этого метода придётся воспользоваться командной строкой.
1. Нажимаем Пуск и выбираем “Командная строка”. Либо в поиске Windows вводим “cmd” и кликаем на результат.
rundll32.exe shell32.dll, Control_RunDLL ncpa.cpl

Вот основные способы входа в системное меню “Сетевые подключения”.
На какие открытые порты нужно обращать внимание
Я упоминал, что если на компьютер попала вредоносная программа, которая открыла соединение для связи со злоумышленником, то она будет прослушивать один из портов. В этом случае для TCP состояние подключения будет LISTENING или ESTABLISHED. Протокол UDP является «безстатусным», поэтому для него ничего не пишется, но нужно знать, что через UDP точно также может происходить обмен информацией.
Нужно помнить, что легитимные службы, которые открыты для доступа из вне, могут быть подвергнуты атакам, например, брут-форс пароля или эксплуатация уязвимостей. Что касается вредоносных программ, то они могут использовать любые порты. Поэтому нет готового списка портов, на которые нужно обращать внимание. Любой порт может быть признаком проблемы с безопасностью компьютера.
Нужно проверить, какие именно файлы и службы открыли соединение. Если исполнимый файл, открывший сетевого соединение, размещён в сомнительном месте, в папках, куда обычно не устанавливают программы, то нужно особое внимание обратить на этот файл.
Трояны и бэкдоры могут действовать двумя методами:
- открывать порт и ждать подключения злоумышленника;
- самостоятельно подключаться к удалённой системе злоумышленника.
При втором варианте состояние подключения НЕ будет LISTENING — вредоносную программу можно найти только путём полного анализа всех соединений.
Как правило, службы, которые прослушивают только IP адрес 127.0.0.1, то есть слушающие на петлевых интерфейсах, предназначены для обслуживания каких-либо легитимных программ, запущенных на вашей системе.
Восстановление доступа к учётной записи
- Зажмите Shift и среди кнопок на экране выберите «Перезагрузку».
- При повторном включении появятся инструменты – нам нужна «Командная строка». Окно может открыться не сразу – вероятнее всего, у вас потребуют пароль от аккаунта Microsoft.
- Внутри ищите папку Software, а в ней Microsoft.
- Здесь будет раздел IdentityCRL, содержащий папку StoredIdentities, где находятся данные вашего аккаунта Microsoft — удалите их полностью.
После этого нужно зайти в «Центр обновлений» Windows и установить все update-пакеты, чтобы избежать ошибок с подключением в будущем.
Как заблокировать доступ к портам на компьютере?
Для настройки доступа к портам используйте файервол (в Windows называется Брандмауэр).
Многие антивирусы сейчас имеют файерволы. Настройки для входящих подключений регулируют, к каким службам, прослушивающим порт, разрешено подключаться. Эти правила не подействуют, если какая-либо служба сама инициирует соединение — для таких случаев настраиваются правила для исходящих подключений.
Если какая-то программа кроме системной просит выход в сеть, то вы должны понимать, зачем ей это нужно.
Чтобы открыть «Брандмауэр Защитника Windows» выполните в командной строке:
Чтобы открыть «Монитор брандмауэра Защитника Windows в режиме повышенной безопасности» (правильнее было бы всё-таки сказать «продвинутой безопасности», а не «повышенной»), в командной строке выполните:

Чтобы открыть «Разрешение обмена данных с приложениями в брандмауэре Защитника Windows» выполните:

Службы *. socket
В Linux вместо запуска службы на определённом порту можно настроить сокет для прослушивания порта. Схема работы следующая: сетевая служба (например, это можно настроить для SSH) по умолчанию не запущена и, следовательно, не потребляет системные ресурсы. Тем не менее её порт прослушивается системным процессом, который и без того бы работал. Как только на этот порт (допустим на 22) поступает запрос соединения, системный процесс запускает нужную службу, и она начинает работать как будто бы всегда была включена. После прекращения связи, служба вновь отключается, и порт вновь начинает прослушивать системный процесс.
В этом случае в качестве программы, открывшей порт, не указывается служба, которая фактически будет работать с поступившим соединением.
Например, для SSH netstat будет показывать примерно следующие данные (1/init вместо sshd):
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp6 0 0 :::22 :::* LISTEN 1/init
А ss будет показывать примерно так:
Пример анализа открытых портов
Я начну с анализа открытых портов на Linux. Просто потому, что мне так проще, а затем мы постепенно перейдём изучить открытые порты на Windows.
Пример информации об открытых портах, полученных командой:
sudo ss -tulpn
Пример прослушиваемых портов на Linux:
В выводимых данных имеются следующие поля:
- Netid — протокол udp или tcp
- State — состояние, для протоколов TCP здесь будет LISTEN (поскольку мы явно указали в опциях показать только прослушиваемые порты), а для протоколов UDP здесь будет UNCONN, то есть состояние неизвестно, но, на самом деле, это тоже прослушиваемые порты, которые позволяют подключаться из вне
- Recv-Q — получено
- Send-Q — отправлено
- Local Address:Port — локальный адрес и порт, к которому привязана служба, то есть IP адрес и порт, которые прослушиваются
- Peer Address:Port — удалённый адрес и порт, к которым выполнено соединение.
Рассмотрим, что означает запись 127.0.0.1:9050: она говорит о том, что прослушивается порт 9050. Причём он прослушивается только для IP адреса 127.0.0.1. Адрес 127.0.0.1 относится к так называемым Loopback, то есть это замыкающийся на себя, закольцованный адрес. Сетевой интерфейс с этим адресом называется петлевым. Пакеты, которые отправляются с компьютера на этот адрес, приходят на этот же самый компьютер (точнее говоря, они никуда даже не уходят). Доступ к этому адресу может иметь только служба, работающая на этом же самом компьютере. Отсюда важное следствие: хотя порт 9050 прослушивается, никто другой не может к нему подключиться из любой сети. Это же относится и к адресам из диапазона ::1/128 — это такие же адреса, но уже для IPv6, в IPv6 аналог для 127.0.0.1 это ::1 (тоже часто можно видеть в выводимой информации).
Если прослушиваются какие-либо адреса из локальных
- 10.0.0.0/8
- 172.16.0.0/12
- 192.168.0.0/16
- 127.0.0.0/8
то к таким портам могут подключиться только компьютеры, расположенные в этих самых локальных сетях (если не настроить особым образом маршрутизацию или проброску портов (port forwarding)).
Для вывода прослушиваемых портов и уже установленных сетевых подключений используйте следующую команду:
sudo ss -tupn
Как отключить учётную запись от аккаунта Microsoft
- Включите ПК и нажмите на значок зубчатого колесика.
- Разверните раздел «Изменение параметров компьютера».
- Откройте подраздел «Учётные записи».
- Нажмите кнопку, в подписи к которой предлагается вход с локальной учётной записью.
- Откройте «Проводник» (значок желтой папки на «Панели задач»).
- В списке слева отыщите ярлык «Компьютер» и кликните по нему дополнительной кнопкой.
- Выберите пункт Properties.
- Откройте вкладку «Защита системы».
- Кликните по кнопке «Восстановление».
- Выберите дату, когда все работало нормально.
TCP и UDP
TCP и UDP это протоколы транспортного уровня. Самое главное что вам нужно о них знать: любой из них может использоваться для передачи информации.
Кстати, про протокол TCP вы практически наверняка слышали, по крайней мере должны были встречать запись TCP/IP — эта связка протоколов очень важна для Интернета. Протокол IP отвечает за то, куда отправлять данные, а TCP отвечает за непосредственную передачу данных и проверку их целостности.
Работу протокола TCP можно представить как создание соединения между двумя компьютерами, по этому соединению передаются данные. Внутри этого соединения данные проверяются на предмет повреждения — если какая-то часть повреждена, то она отправляется повторно.
Протокол UDP тоже передаёт данные, но вместо того, чтобы создавать устойчивое соединение, внутри которого данные проверяются на целостность, он только отправляет пакет данных на определённый адрес, при этом не осуществляется контроль, был ли покет доставлен без повреждений и был ли доставлен вообще. По сути это и есть главное отличие между этими протоколами.
Исправление ошибки, возникающей при входе в учётную запись «Ваш компьютер не в сети»

Методика исправления ошибки входа в учетную запись Microsoft.
Как в Windows узнать, какая программа прослушивает порт (с помощью PowerShell)
В этом примере будет получено имя процесса, связанного с каждым открытым портом:

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

Замените «80» в первой строке на порт, который вас интересует.
Чтобы просмотреть идентификатор процесса-владельца используемого порта UDP, запустите команду:
Используйте следующую команду, чтобы отобразить имя процесса, открывшего UDP порт:
Как в Windows узнать, какая программа прослушивает порт (используя CMD)
Открытых для прослушивания портов может оказаться достаточно много и обычно они используются легитимными программами. Поэтому при анализе полученных данных также важно знать, какая именно служба прослушивает определённый порт.
Для поиска службы, можно добавить к команде NETSTAT опцию -b, которая означает показать исполнимый файл, прослушивающий порт:

Также имеется альтернативный способ определения исполнимого файла, привязанного к порту. Для него откройте Командную строку Windows. Для этого нажмите сочетание клавиш Win+x, там выберите Windows PowerShell (Администратор). В открывшемся окне введите:
чтобы переключиться на Windows Console Host (обычную командную строку).
Там запустите команду вида:

Эта команда найдёт службы, которые прослушивают 80 порт. Чтобы найти информацию о другом порте, замените в команде цифру 80 на интересующий вас порт.
Пример вывода в моём случае:
Менять порт в длинной команде не всегда удобно, поэтому рекомендую создать текстовый файл с именем port.bat, в этот файл скопируйте:
Сохраните и закройте этот файл.
Теперь запустите файл командой вида:
Где ПОРТ замените на интересующий вас порт, например, меня интересует порт 80, тогда:
Вновь получаю аналогичный результат.

Если у вас множество портов прослушивает процесс svchost.exe, то чтобы разобраться, какие именно это службы, смотрите статью «Почему svchost.exe прослушивает много портов? Как узнать, какие именно программы открыли порты».
Связанные статьи
Про UDP уже сказано чуть выше, что этот протокол не создаёт соединений в том смысле, как это делает TCP. Поэтому для этого протокола нет никаких состояний соединения — это просто неприменимо к нему. По этой причине в графе Состояние для него никогда не пишется LISTENING. Но значит ли это, что UDP порт не может быть прослушиваемым? Нет! Порт UDP также может быть прослушиваемым и доступным для соединений. В том числе этот порт может использоваться вирусами и злоумышленниками, поэтому эти порты также подлежат исследованию.
Как проверить открытые порты в Windows
В Windows есть команда netstat, которая отображает статистику протокола и текущих сетевых подключений TCP/IP.
Используя команду со следующими ключами, можно посмотреть информацию о всех подключениях и прослушиваемых портах в Windows:

Звёздочка (*) вместо адреса или порта
Мы можем увидеть записи вроде *:80 или даже *:*
Кстати, служба может прослушивать порт в соответствии со следующими правилами:
- может прослушиваться конкретный порт для одного IP адреса
- может прослушиваться конкретный порт для любого IP адреса
Что означает 0. 0 в netstat. Различные виды нотаций в netstat и ss
0.0.0.0 — это самый первый IP адрес. Но он относится к IP специального назначения (как например 127.0.0.1) и выполняет разные функции.
Обозначение 0.0.0.0 может иметь разное значение в зависимости от того, где используется. Когда говорят о прослушиваемых портах, это обозначение в Linux символизирует заполнитель, то есть означает «любой IP адрес».
Чем это отличается от * (звёздочки) или от записи :::, которые также встречаются в выводе рассматриваемых программ? В программе ss IPv6 адрес 0:0:0:0:0:0:0:0 (который является аналогом IPv4 адреса 0.0.0.0) обозначается звёздочкой (*). Следовательно, в ss запись 0.0.0.0:* обозначает «любой IPv4 адрес с любого порта». А обозначение *:* символизирует «любой IPv6 адрес с любого порта».
В программе netstat также используется запись 0.0.0.0:* которая также обозначает «любой IPv4 адрес с любого порта».
Но в netstat для обозначения «любой IPv6 адрес с любого порта» используется :::*
Помните об этих различиях, чтобы не запутаться. А также помните о том, что если показано, что прослушивается протокол tcp6 (IPv6), то одновременно может прослушиваться порт и на tcp (IPv4) — при этом данные в выводимой информации отсутствуют!
В качестве внешнего адреса, когда доступно подключения с любого IP и с любого порта, для TCP протокола пишется 0.0.0.0:0, а для UDP протокола в этих же условиях пишется *:*. Что тоже не особо логично и сбивает с толку. Точнее говоря такое различие в обозначениях вытекает из разницы протоколов TCP и UDP.
Нужно помнить, что некоторые из этих обозначений пересекаются с нотациями из Linux, где они имеют своё собственное значение.
Чтобы чуть облегчить жизнь, я составил такую табличку, которую можно использовать в качестве шпаргалки:
Как с помощью PowerShell проверить открытые порты в Windows
Get-NetTCPConnection — это PowerShell-эквивалент NETSTAT, запуск команды без опций возвращает результат аналогичный netstat (но только по TCP портам и соединениям!).

Чтобы вывести список открытых портов, используйте опцию -State со значением Listen:
Get-NetTcpConnection -State Listen

Командлет Get-NetUDPEndpoint получает текущую статистику для конечной точки UDP. Командлет возвращает свойства конечной точки UDP, например локальные и удалённые порты UDP. Если вы не укажете никаких параметров, командлет получит статистику для всех конечных точек UDP. Get-NetUDPEndpoint запущенный без опций вернёт локальный адрес и локальный порт.

А следующая команда покажет открытые на всех сетевых интерфейсах UDP порты:

Прослушиваемые порты IPv4 и IPv6 адресов в Linux
В Linux у программ netstat и ss имеется особенность вывода информации о прослушиваемых портах, когда прослушиваются одновременно IPv4 и IPv6 адреса — выводится информация только об IPv6 адресе! Возможно это связано с какими-то глубинными особенностями реализации ядра Linux, но в Windows, например, есть чёткое разделение и если служба одновременно прослушивает порт на IPv4 и IPv6 адресах, то информация об этой службе выводится два раза — пример этого почти в самом начале статьи, где мы ищем, какая служба прослушивает 80-й порт и в найденной информации нам дважды показана служба httpd.
IP адрес 0
Кстати, IP адрес 0.0.0.0 довольно интересный, так как используется в разных случаях.
Например, некоторые службы в качестве адреса привязки (bind) позволяют установить 0.0.0.0. Это означает, что служба будет прослушивать порт на всех сетевых интерфейсах данного компьютера, то есть на всех IP адресах. В некоторых службах (например, веб-сервер Apache), просто не нужно указывать никакой определённый IP адрес (в том числе 0.0.0.0) и по умолчанию они будут прослушивать входящие соединения на всех сетевых интерфейсах.
Важно понимать, что 0.0.0.0 и 127.0.0.1 это совершенно разные вещи. Хотя если в Linux пинговать 0.0.0.0, то пинги будут отправляться именно к 127.0.0.1. В Windows попытка пинга 0.0.0.0 вызовет сообщение о сбое передачи данных, то есть о недоступности адреса. Адрес 0.0.0.0 означает «любой IP данного компьютера» и включает в себя в том числе 127.0.0.1.
Адрес 0.0.0.0 обычно означает, что IP адрес ещё не настроен или не присвоен. Такой адрес указывает хост, который обращается к DHCP для получения IP адреса.
Если 0.0.0.0 указан в качестве адреса получателя, то он должен расцениваться как широковещательный адрес 255.255.255.255.
Адрес 0.0.0.0 с маской 0.0.0.0, то есть 0.0.0.0/0 используется для обозначения маршрута по умолчанию (default route).
Этот адрес не является валидным адресом для назначения сетевому интерфейсу, точно также как и вся подсеть 0.0.0.0/8 (то есть любой адрес, начинающийся с 0.).
Если в Linux обратиться к этому адресу, например, набрать в веб браузере адрес http://0.0.0.0, то откроется страница локального веб сервера (если он установлен и запущен). В Windows такой адрес вызовет ошибку о неверном адресе.

Также адрес 0.0.0.0 может использоваться для явного указания, что целевой хост недоступен.
Эта информация приведена просто для справки и для расширения кругозора, а теперь продолжаем с нашими открытыми портами.
Как проверить открытые порты в Linux. Как узнать, какая служба прослушивает порт
Для Linux тоже есть команда netstat, но она, вроде как, теперь считается устаревшей и на её замену рекомендуется команда ss. Показываемая информация у ss и netstat очень похожи. Даже основные опции идентичны.
Итак, для вывода открытых портов TCP и UDP протоколов вместе с показом процессов, которые их прослушивают, используется команда:

Чтобы вывести список установленных соединений для портов TCP и UDP, используйте команду:
Больше опций, а также больше способов найти, какие порты прослушиваются, смотрите в статье «4 способа узнать, какие порты прослушиваются в Linux».
Как посмотреть список всех служб в Windows 7
Чтобы выполнить нашу задачу, мы можем воспользоваться тремя методами
- Оснастка службы
- команда net services
- использование Powershell
- Реестр Windows
Вот как это выглядит в оснастке с графическим интерфейсом.

LISTENING, ESTABLISHED, CLOSE_WAIT и другие состояния
Как вы можете увидеть в выводе команды netstat для протокола TCP доступны разные варианты состояний.
Самые популярные из них это LISTENING — означает, что порт прослушивает запущенное на данном компьютере приложение, что оно готово принять соединение, например, от другого компьютера или от другой службы, запущенной на этом же компьютере. Также применяются термины «открытый порт», «привязка порта».
ESTABLISHED означает уже установленное соединение. Пример такого соединения: веб-браузер инициализировал загрузку страницы сайта и пока данные передаются по этому соединению, у этого соединения статус ESTABLISHED.
Имеются и другие виды состояний, но для наших целей они не очень важны. По большому счёту нас интересует только LISTENING, так как это означает открытые порты на нашем компьютере и возможность подключаться к нему. Также нам важно состояние ESTABLISHED, поскольку оно означает, что данные уже передаются по сетевому соединению.
Вывод списка служб Windows 7, через командную строку
Откройте командную строку и введите:
sc query type= service state= all
В итоге вы получите, через cmd список сервисов вашей ОС.

Чтобы вывести, только не рабочие службы введите:
sc query type= service state= inactive
Для работающих служб, команда будет такой:
sc query type= service state= active
Что означает вывод netstat и ss
Далее мы научимся понимать, что именно выводит netstat. Но для полного понимания нам нужно изучить немного теории — совсем кратко. Я расскажу только о том, что нам действительно понадобиться.
Вывод списка служб Windows 7, через powershell
Чтобы получить список служб в операционной системе Windows 7, через командлеты powershell, то выполните:
Это аналог команд Linux sysv-rc-conf или chkconfig




