- Что такое сетевой порт в компьютере и сколько их бывает: отвечает Бородач
- Определение
- Номера портов
- Просмотр открытых и закрытых портов
- Таблица портов
- Открытие и закрытие
- Проброс
- Что такое сетевые порты компьютера ?
- Сетевые порты компьютера: что это такое?
- Что такое порты компьютера: а сколько их?
- Компьютерные порты и сетевая безопасность
Что такое сетевой порт в компьютере и сколько их бывает: отвечает Бородач
Всем привет! В интернете полно статей про сетевые порты, но очень мало где используется нормальный человеческий язык. Именно поэтому я решил написать свою подробную статью по разбору этой темы. Давайте для начала ответим на вопрос – а что же такое сетевой порт в компьютере и информатике в целом.
Определение
Лучше всего расскажу на примере. Представим себе, что у вас есть компьютер, который уже подключен к интернету. У данного компьютера есть свой IP адрес, который определяет его среди множества других сетевых устройств, находящихся в интернет пространстве.
Если кабель от провайдера идёт на компьютер напрямую, то ему присваивается внешний IP адрес. Если же подключение идет через роутер, то внешний IP находится именно у данного интернет-центра. Данный IP нужен для того, чтобы пакеты доходили именно до этого компьютера.
Но тут встаёт небольшая проблема, когда пакет информации доходит, компьютер или сервер не понимает – в каком приложении его открывать?! Вот за данную функцию частично и отвечают порты. Например, пользователь сделал запрос в интернете на определенный сайт. Далее пакет данных доходит до сервера, на котором работает одновременно много системных служб и программ.
В запросе от пользователя также одновременно прописывается информация о порте. Тогда сервер сразу понимает, что запрос был отправлен с целью получения информации о какой-нибудь Web-странице. И сервер отправляет ответ с нужной информацией.
Если говорить грубо, то IP (в нашем примере) – это адрес дома. Но когда почтальон приходит к дому, он не знает в какую квартиру отнести письмо. И вот порт – это и есть номер квартиры. На данный момент существует определенное число портов – 65 535. Вы можете заметить аналогию с многоквартирным домом, по сути в каждом доме есть определенное количество квартир.
Некоторые порты компьютера могут быть открыты или закрыты в зависимости от настроек системы. Также некоторые приложения открывают свои порты или используют смежные. Также не забываем, что для передачи информации по сети используется модель TCP/IP или UDP. Ещё один пример, который сможет более точно объяснить – для чего же нужны сетевые порты на компьютере.
Вася решил завести у себя на компьютере свой Web-сайт. После верстки он все же решил загрузить его на свой компьютер. Конечно, он мог бы арендовать сервер, но он решил сэкономить. Интернет у него подключен напрямую к системному блоку. Теперь вопрос знатокам: при запросе из интернета – как компьютер будет понимать, что нужно отдавать по запросу именно страницы сайта, а не данные общих папок или ответ от какого-нибудь запущенного приложения?
Вот тут и будет вступать в силу порт. В данном случае чаще всего используется номера: 80 или 8080. Именно поэтому Вася должен на своем компьютере открыть локальный порт для своего сайта. Конечно объяснение было немного грубое, и все там обстоит куда сложнее, но моя задача была разъяснить именно суть и назначение порта. Потому что почему-то нигде толкового объяснения нет, а многие оперируют сложными техническими понятиями.
Номера портов
И так товарищ, ты теперь почти просветлел и понял – что же такое порт. Теперь же давайте поговорим про понятие «номер порта». Как я уже и говорил, в каждом компьютере, сервере, маршрутизаторе существует ровно 65 535 портов. Конечно, используются они не все и есть свободные «адреса».
С 0 до 1023-го – это зарезервированные «квартиры» для систем как Windows, так и Linux. Насчет Mac OS сказать не могу, с данной ОС не работал. Далее с 1024 по 49151 идут свободно используемые входы. То есть их могут использовать отдельные приложения, утилиты или даже системные службы. Некоторые программы могут одновременно использовать один и тот же номер.
Остальные порты, можно сказать – находятся в свободном полете и могут использоваться или не использоваться по усмотрению ОС или пользователя. Запоминать тот или иной номер бессмысленно, потому что их очень и очень много. Например, очень часто для игр на домашних роутерах нужно открыть дополнительные номера. Но запоминать, к какой именно игре используется тот или иной номер, смысла нет.
Но со временем за определенными портами закрепились отведенные службы. Вот пример нескольких из них:
- 20, 21: FTP
- 22: SSH
- 23: Telnet
- 25: SMTP
- 43: WHOIS
- 53: DNS
- 67, 68: DHCP
- 80: HTTP (Веб-port)
- 110: POP3
- 113: аутентификация в IRC
- 143: IMAP
- 161: SNMP
- 194: IRC
- 389: LDAP
- 443: HTTPS
- 587: SMTP
- 631: CUPS
Чаще всего обычный пользователь не задумывается о пробросе, открытии или закрытии портов. Этим занимается сама операционная система, а в частности Брандмауер. Также при установке приложений, игр и утилит, которые используют интернет или сетевое подключения, они сами прописывают при инсталляции настройки по использованию тех или иных входных номеров. Некоторые программы используют сразу несколько.
ПРИМЕЧАНИЕ! Портовая конфигурация также есть у роутеров и провайдера.
Просмотр открытых и закрытых портов
Чтобы посмотреть все входные номера, которые используются, заблокированы или ждут своей очереди – можно через консоль. В Windows достаточно зайти в командную строку: для этого нажимаем на кнопки «Win» и «R» и прописываем команду «cmd». Далее нужно будет ввести:
В Kali Linux прописываем другую команду:
less /usr/share/nmap/nmap-services
Для удобства я все же советую использовать удобную программку «Process and port analyzer». Она в более удобном виде выводит все задействованный список портов на данном устройстве. Вы можете посмотреть зарезервированные, свободные и используемые номера.
Таблица портов
Открытие и закрытие
Как я уже и говорил ранее – данную функцию выполняет сама система или установленные программы. Но вы сами можете изменять или добавлять некоторые правила. По сути вам нужно указать сетевой порт, а также приложение или программу, для которой это правило будет действовать. Если же вы будете производить настройку на роутере, то нужно будет указывать IP адрес устройства переадресации.
Для начала вам нужно определиться с тем – какой «вход» вы хотите открыть и для чего. Номер и название приложение вы можете посмотреть в том PDF файле, который я прикрепил выше. Покажу на примере игры World of Warcraft. Будем открывать официально зарезервированный номерной «вход» – 3724. Вообще в играх чаще всего используется именно UDP порт, который работает в потоковой передаче данных. Но вам нужно смотреть именно в столбец с портом: там будет подсказка, какой протокол надо использовать в выбранном приложении (TCP или UDP).
- В Windows нужно открыть меню «Пуск» и перейти в «Панель управления».
- Заходим в «Брандмауэр»
- Слева в окне нажимаем «Правила для входящих подключений». Вы сразу тут увидите очень много правил под каждое установленное приложение.
- В окошке справа выбираем «Создать правило…». Так как мы будем открывать порт для игры, то выбираем вторую галочку.
- Создаем UDP правило и вводим только номер, указанные в том PDF файлике – в моем случае это: 3724 (я показываю на примере игры WOW у вас может быть совершенно другой номер). Вы также можете указать диапазон номеров. Для TCP и UDP лучше создать два правила отдельно.
- Оставляем значение по умолчанию «Разрешить подключение».
ПРИМЕЧАНИЕ! Таким образом вы можете закрыть определенный «вход», выбрав «Блокировать подключение».
- Далее идут правила профилей – можно оставить все. Самое главное, чтобы при подключении к удаленному ресурсу через интернет был включен «Публичный» профиль.
- В самом конце вводим название и описание. В название я советую добавлять номер порта, который вы открыли, чтобы потом его не потерять.
Проброс
Открытие и проброс портов – это разные вещи, хоть некоторые их и путают. Когда вы открываете какой-то «вход», то вы делаете это на конкретном устройстве – например, на своём компьютере. Проброс портов – обычно делается на сетевом шлюзе, который из внешней сети принимает какой-то запрос от пользователя. Далее он или разрешает данный запрос, или запрещает. Чаще всего если порт не проброшен, то идет точный запрет, и пользователь не получит ответа.
Например, у вас дома стоит система видеонаблюдения. Сеть камер, подключенных к видеорегистратору, который в свою очередь привязан к интернету с помощью роутера. Камера кстати может быть вообще одна и подключена напрямую к маршрутизатору.
Чтобы просматривать камеру через интернет, отдыхая на Бали или во Вьетнаме, нужно пробросить порт. После проброса, чтобы попасть на камеру, нужно будет зайти в браузер, ввести внешний IP адрес вместе с проброшенным номером, и тогда можно увидеть изображение с камеры.
По пробросу у нас уже есть отдельные инструкции на сайте:
Если у вас ещё остались вопрос или есть дополнения, то пишите в комментариях.
Что такое сетевые порты компьютера ?
Про сетевые порты компьютера.
В статье доступно описывается, что есть системный порт, зачем он программам нужен, как и какие устройства используют порты для общения в сети, и какое отношение имеют порты к безопасности ваших данных. Статья вводная; о том, как контролировать системные порты, правильно настраивать и сканировать, избегая ошибок и понимая, что происходит, поговорим в другой раз.
Сетевые порты компьютера: что это такое?
Как только компьютеры собираются обменяться информацией по сети, они сразу открывают информационные порталы для обмена. В архитектуре сети общение между двумя ЛЮБЫМИ системами зиждется на пяти непреложных принципах. Так, чтобы данные “перелетели” из точки А в точку Б, должны быть известны:
- IP адрес источника информации
- IP адрес получателя
- протокол, по которому устройства будут общаться
- порт передачи источника
- и порт назначения, используемый транспортным протоколом RFC793
Порт – это некое виртуальное расширение, дополнение к сетевому адресу (как дополнение в цифрах к названию улицы или дому в адресе, по которому вы проживаете). Почтальон придёт на вашу улицу, но письмо не доставит – он не знает кому, ибо номер квартиры ему не известен. Так и информация дойдёт до вашего компьютера по IP , но без надлежащего номера порта информация в компьютер не попадёт. Компьютер просто не поймёт, как обработать её, с помощью какого приложения. Сетевые порты компьютера – это тропинки между сервисами и службами, которые запущены в установленной на компьютере операционной системе и материнскими\сестринскими процессами на компьютерах-хостах, которые находятся порой за тысячи километров от вас.
Кстати, у материнской платы тоже есть порт. Это физические разъёмы, которые, в отличие от описываемых, можно потрогать. Но функцию они выполняют, в сущности, ту же: все порты призваны принимать информацию с других устройств.
Транспортные протоколы (а самые распространённые и используемые это TCP и UDP) лезут на компьютер, используя в сообщении в том числе и номера из общего количества портов. Когда какое-то приложение захочет поговорить с другим устройством, оно напрямую просит локальную ОС открыть канал для передачи. Приложения, которые могут общаться по обоим протоколам (UDP и TCP) могут использовать для этого один и тот же порт, однако это условие необязательно.
Что такое порты компьютера: а сколько их?
В компьютере точное количество портов – 65 535. И ух них есть своя градация. Так, порты с номерами до 1023 Линукс и Unix-подобными ОС считаются за “критически важные” для сетевой деятельности системы, так что для доступа к ним и службам, с ними связанными часто требуются root права. Windows также их считает системными и пристально следит за ними.
Порты от 1024 до 49151 имеют гриф “готовые к регистрации”. Это означает, что данные порты зарезервированы или могут быть зарезервированы за определёнными службами. К счастью или сожалению, они за этими сервисами не закреплены прочными правилами, однако могут дать ключ для распознавания запущенной программы на стороне хоста. Остальные (начиная с 49152) порты не зарегистрированы и используются по усмотрению пользователей ОС и имеют название “динамические” порты. Так что запоминать, какой порт под какую службу “заточен”, часто просто бесполезно (по крайней мере, сегодня; однако ситуация может измениться). Но существует список портов, которые уже “испокон веков” используются конкретными сервисами:
20: FTP данные
21: FTP контроль
22: SSH
23: Telnet Что такое порты компьютера . Хотите полюбоваться на них?
Со списком распространённых портов вы знакомы, однако некоторые сервисы вполне могут использовать порт, по умолчанию назначенный не для них. Или же, что не редкость, открытые порты применяются в качестве лазейки для злоумышленника. Так что, если вы решили самостоятельно менять настройки портов, нужно убедиться, что законопослушные клиент и сервер найдут друг друга. В противном случае стоит позволить Windows заблокировать порт, настроить блокировку в роутере или понадеяться на провайдера, который частенько порты блокирует ещё на излёте, особо клиентуру о том не спрашивая.
Вы можете прямо сейчас посмотреть на своём компьютере, какие порты чем занимаются. Наберите в терминале:
и крутите мышкой до конца. Вот они во всей красе.
В Кали Линукс полезная во всех смыслах nmap тоже может отобразить их список:
Если вы читаете эту статью в Windows, чтобы посмотреть сейчас открытые порты, запустите консоль команд от имени администратора cmd и выполните в ней команду:
Однако более развёрнуто работающие в Windows порты вам откроет небольшая программка с названием Process and port analyzer, которую можно легко скачать в сети. Она просто и доходчиво объяснит, какие порты сейчас открыты и какие программы эти порты слушают. Вот одна из вкладок утилиты:
С помощью программы легко можно проверить местонахождение этого процесса в системе и определиться, насколько он безопасен.
Компьютерные порты и сетевая безопасность
Программы, и службы, которые здесь описаны, позволяют вам увидеть порты, открытые именно в вашей ОС (Windows и Linux) для каких-то уже работающих на компьютере программ. Однако помните, что в системе передачи информации между вашим компьютером и далёким веб-сервером где-то в Голландии, стоит ещё немало устройств, которые фильтруют трафик более серьёзно, в том числе контролируя порты (кстати, в том числе и находящийся в вашей же комнате роутер). Не ваши, конечно. Но именно этим серверам решать, попадут ли какие-то данные в вашу Windows. Прикладывает к этому руку и ваш провайдер, которому вы платите деньги за выход в сеть, блокируя порты в целях безопасности или для недопущения излишней сетевой активности (а вдруг вы захотите настроить у себя дома собственный веб-сервер? – не получится).
Зачем это делается? Позвольте продолжить аналогию с домами и улицами. Представьте, что вы решили купить гараж для авто ( компьютера ) в близлежащем кооперативе. Первое, что нужно сделать – защитить и усилить невозможность в помещение проникнуть: поставить хорошие двери и установить надёжные замки ( закрыть порты ). Но что ещё можно сделать? Кто-то ставит сигнализацию ( специальные сетевые сканеры для проверки состояния портов ). Накопить денег и установить дополнительный забор с воротами ( роутер со встроенным фаерволлом ), чтобы внутри можно было парковать и мотоцикл ( планшет ) . А чтобы газоны не испоганили грузовики, со своей стороны правление ( провайдер ) установило автоматический шлагбаум ( сетевые анти- DDOS фильтры ): всё вроде бы открыто, но чужой не проедет. И так далее…
Однако, если вы всё-таки собираетесь узнать, как виден ваш компьютер из глобальной сети (например, злоумышленникам, пытающимся проверить вас на прочность), описанные здесь способы совершенно не подходят. Разовьём эту тему в следующих статьях.