зачем нужно открывать порты
Сетевые порты компьютера и их назначение, как открыть порт или закрыть?
Когда пакет достигает цели, протокол транспортного уровня (в нашем случае TCP/IP), принимает дейтаграмму, считывает номер порта из соответствующего поля и передает эту информацию программе (или протоколу), которая начинает работу с полученными данными.
Всем основным приложениям в Интернет присвоены определенные номера портов, которые называют «хорошо известными портами». Например, стандартный порт WEB — сервера идет под номером 80, прокси-сервер может иметь номер 8080, FTP сервер работает с портом 21 или 20.
Кратко перечислю хорошо известные номера портов в разрезе сервисов:
Когда трафик перенаправляется другой системе, TCP/IP использует комбинацию IP адреса и определенного порта. Такая связка называется «Сокет». К примеру, из Интернета или локальной сети можно получить доступ к папке фтп-сервера, указав через двоеточие IP- адрес и порт: 192.168.0.3:21.
Хорошо известные номера портов не являются чем-то жестко регламентируемым. Их можно менять своему усмотрению. В этом случае в настройках программы прописывается нужный порт, а при обращении к нему через браузер его так же нужно указывать в адресной строке. Это необходимо делать для проверки на открытость или закрытость того или иного порта.
Что такое динамические порты FTP
Поскольку обычно запросы идут на сервер от клиента (а не наоборот), то хорошо известные номера портов актуальны для серверов. Они «слушают» через порты своих клиентов, которым эти номера не нужны. На время связи программа- клиент (или операционная система) использует свой временный номер порта, или некий диапазон номеров. IANA задает номера от 1 до 1023. А временные номера начинаются с 1024 и выше. Программа FTP- клиент работает таким же образом — у нее указан свой временный диапазон, по которому она пытается «достучаться» до нужного сервера.
Когда мы настраиваем FTP — сервер, мы прописываем 21 порт для передачи данных. Но, программа, которая непосредственно руководит сервером, должна не только передавать данные, а еще давать доступ к данным пользователями этого сервера. С помощью такого же диапазона временных (или динамических) портов. Через эти порты она «слушает»пользователей ФТП сервера и устанавливает соединения. Диапазон динамических портов FTP задается при настройке соответствующей программы:
В Windows Server 2012-2016 можно задать произвольный диапазон портов прямо в операционной системе, не пользуясь сторонними программами. Диапазон номеров задается от 1024 до 65535, это ограничение транспортного протокола.
Как проверить порты на роутере
Здесь речь идет о возможности доступа к вашему компьютеру из Интернет. К примеру, у вас дома есть сеть из нескольких компьютеров. Внутри сети доступ к ним существует. А из интернета доступа к ним нет, хотя интернет у вас дома есть. Некоторые «поднимают» у себя дома игровой сервер, чтобы с друзьями играть по сети. В этом случае нужен доступ к серверу из Интернет, что и осуществляется форвардингом портов.
Открытые порты могут угрожать безопасности компьютера. Если вашему компьютеру присвоен внешний IP адрес, то такая проверка актуальна для Вас. Проверить можно с помощью многочисленных онлайн сервисов. Вводите свой внешний IP и готово:
Нормальной (с точки зрения безопасности) ситуацией считается когда все порты на роутере закрыты. Если адрес присвоен роутеру, то проверять нужно каждый компьютер. На роутере по умолчанию обычно включен файрвол и защита от dos-атак и тогда проверка вам ничего не покажет. В этом случае вам нужно зайти на свой роутер и посмотреть список открытых портов в разделе «Виртуальный сервер» или «Переадресация»:
У меня для фтп включено вот такое правило. Подробнее, как открывать порты на маршрутизаторе я рассказываю тут.
Как проверить открыт порт на компьютере Win 10, или нет
Даже если порт открыт на маршрутизаторе, его можно закрыть на целевом компьютере. И тогда доступа через эту лазейку через интернет не будет. Различные вирусы так же используют в своей работе порты. Если вы видите некий открытый порт у себя, нужно найти программу, которая его использует. Если не находите — тогда нужно проводить антивирусную проверку. Я пользуюсь отечественными бесплатными утилитами — касперский и доктор веб.
Получаем список открытых портов на компьютере сети
Для того, чтобы получить список портов, нужно сначала запустить командную строку (обязательно от имени администратора) :
Будет выведен список сокетов, а так же приложений, которые идентифицированы с ними в данный момент. Можно увидеть и адреса внешних ресурсов, которые обмениваются данными с портами:
Порты компьютера и файрвол
Файрвол (или брандмауэер) это фильтр, который закрывает порты кроме хорошо известных, и тех которые используются установленными программами. Впрочем, и эти порты можно легко закрывать и снова открывать вручную. Данное программное обеспечение идет в составе операционных систем. Дополнительно его можно активировать в антивирусной программе, а так же на роутере.
Каждая из них на своем уровне отсеивает ненужные запросы, в результате чего обмена данными по этим портам не происходит. Безопасность системы в целом становится надежнее. В Windows брандмауэр можно найти в «Панели управления».
Если при входе файрвол у вас выглядит так как у меня — он отключен. Если что-то не работает (например, никак не настроить FTP) то можно отключить его, чтобы убедится что это именно брандамауэр блокирует ваши соединения.
Включить брандмауэр можно нажатием на одноименную ссылку в левой части окна. При этом не делайте максимальной блокировки портов:
У антивирусов свой файрвол, можно использовать и его. Но, это по началу может доставить неудобства, потому что программу надо обучать. При каждом соединении она будет спрашивать у вас разрешения на соединения и прописывать правила. Так как порты временные тоже будут, то процесс обучения растягивается надолго. Поэтому учится открывать порты мы будем на классическом виндовом брандмауэре.
Как открыть порты в брандмауэре Windows 10(49, 50, 4955, 25655)
Чтобы снять фильтры со всех портов — отключаем файрвол насовсем. Если нужна тонкая настройка — тогда будем настраивать каждый порт опционально. Заходим далее в «Дополнительные параметры»:
Затем нам нужно будет настроить правила для входящих и исходящих подключений. Все наглядно — зеленый цвет «разрешено», красный цвет — «запрещено».
Чтобы создать правило — нажимаем правой кнопкой мыши на «входящих подключениях» и создаем нужное нам. Обратите внимание — если у вас есть программа, использующая временные динамические порты — можно указать ее, а не номер порта. Для асов предусмотрены настраиваемые правила — можно настроить фильтр в сочетании со службами и программами.
Мы будем настраивать порт, поэтому выбираем «Для порта» и жмем «Далее».
Выбираем протокол TCP (в случае необходимости можно аналогичные настройки сделать и на UDP протокол).Через запятую указываем нужные порты. Можно через дефис указать диапазон портов, если в этом есть нужда. Далее, переходим к настройкам безопасности подключения.
Безопасное подключение требует проверки подлинности и выбирается, только если используется защищенное соединение. Поэтому выбираем верхний пункт. Далее, мы выбираем все доступные типы сетей на нашем компьютере:
Не забываем указать имя нашего правила, чтобы потом было легко его найти. На этом настройка брандмауэра для входящих подключений завершена.
В списке правил мы теперь видим наше, и в случае необходимости можно его отключить или удалить. Порты закроются.
Для полноценного обмена данными следует сделать такие же настройки правил для исходящих подключений. Если вы планируете через эти порты настроить доступ из интернета — нужно пробросить эти порты на роутере. А на сегодня информации достаточно, удачи!
Риски открытия портов маршрутизатора для игры в онлайн и как этого избежать
В некоторых случаях для правильной работы программы или игры требуется, чтобы на маршрутизаторе были открыты определенные порты, чтобы они были доступны из Интернета. Однако по возможности рекомендуется держать порты закрытыми. Киберпреступники сканируют порты на предмет уязвимостей и способов проведения атак. Случается так, что иногда, чтобы использовать программу или играть в сети, нам нужно открыть порты. Здесь мы объясним, насколько опасно открывать порты маршрутизатора для игры в сети, а также, в случае, если мы должны это сделать, как мы должны это делать.
Когда мы говорим о транспортном уровне модели TCP / IP, мы должны иметь в виду два типа протоколов: TCP и UDP. Оба могут использоваться при открытии портов.
Как открывать порты и зачем их открывать?
Первое, что нам нужно сделать, чтобы открыть порты маршрутизатора для игры, или что нам нужно, это узнать IP-адрес нашего маршрутизатора. Мы сделаем это с помощью окна командной строки, набрав эту команду:
Затем появится экран, на котором Шлюз по умолчанию это IP нашего роутера.
Затем мы записываем его в интернет-браузере и вводим свой логин и пароль для входа в конфигурацию роутера. Затем мы ищем раздел, который обычно называется NAT, виртуальный сервер или перенаправление портов.
Опасно ли открывать порты роутера для игры?
В этом смысле, открывая порты маршрутизатора для игр или программ, мы должны убедиться, что диапазон как можно меньше. Чем меньше возможностей атаковать мы даем киберпреступникам, тем в большей безопасности мы будем.
Вот еще опасные порты TCP и UDP и как мы можем защитить себя. Эти порты, которые мы вам показали, являются самыми простыми и первыми, которые проверяет киберпреступник. Поэтому, если мы заблокируем все, кроме тех, которые используются и нужны нам, у нас будет очень защищенная система. Помните, что если у нас есть открытый порт, это может быть первым шагом к вторжению.
Проверить открытые порты онлайн
Далее пора проверить открытые порты на вашем роутере. Для этого воспользуемся сайтом теста скорости. Там у них естьтест порта чтобы быстро и легко проверить это онлайн.
После загрузки сети мы помещаем наш общедоступный IP-адрес и устанавливаем порт или порты, которые хотим проверить. Этот инструмент позволяет вам проверять диапазоны портов, а также порты, разделенные запятыми. Наконец, вот мои результаты, в которых вы можете видеть, что порты 21, 22 и 23, о которых мы говорили ранее, закрыты, что является хорошей новостью.
Все о портах. И как правильно открыть порты
С недавнего времени участились случаи с вопросами, когда необходимо открыть порт на своем маршрутизаторе для игры или какой либо программы. Данная статья дополнит основную статью про порты, и прояснит ситуацию.
Все уже давно используют имитаторы LAN (локальной сети), после того, как некоторые провайдеры в начале нового десятилетия, отключи всех своих абонентов от локальной сети, оставив им только подключение по каналу «Интернет».
Именно с того момента и пошла популяризация имитаторов, так как без них, с соседом невозможно было по-играть в какую-нибудь игрушку. И с того момента вопрос про «открытие портов» становился более популярным, и многие «псевдо-сис.админы» пытались выложить актуальное руководство как открыть порты на своем железе. Но не все знают что да как это сделать правильно.
Именно по «Белому» IP и стоит открывать порты на своем оборудовании. Что бы получить свой «Белый» IP необходимо обратить к своему провайдеру, и после этого, он назначит IP на Вас. Данная услуга везде является платной, и в зависимости от региона может составлять от 50 рублей/месяц.
Допустим, мы купили реальный IP у своего провайдера, и теперь необходимо приступить к настройке. Разберемся с настройками на 4-х популярных моделях роутеров (ASUS/TP-Link/D-Link/Zyxel):
Примечание: настройка производилась на оборудовании ASUS RT-N12 C1 с микропрограммой 3.0.0.4.260 (черный интерфейс)
Не открывайте порты в мир — вас поломают (риски)
Снова и снова, после проведения аудита, на мои рекомендации спрятать порты за white-list’ом встречаюсь со стеной непонимания. Даже очень крутые админы/DevOps’ы спрашивают: «Зачем. «
Предлагаю рассмотреть риски в порядке убывания вероятности наступления и ущерба.
Ошибка конфигурации
Наиболее типичная и опасная ситуация. Как это бывает. Разработчику надо быстро проверить гипотезу, он поднимает временный сервер с mysql/redis/mongodb/elastic. Пароль, конечно, сложный, он везде его использует. Открывает сервис в мир — ему удобно со своего ПК гуём коннектиться без этих ваших VPN. А синтаксис iptables вспоминать лень, все равно сервер временный. Еще пару дней разработки — получилось отлично, можно показывать заказчику. Заказчику нравится, переделывать некогда, запускаем в ПРОД!
Пример намеренно утрированный с целью пройтись по всем граблям:
А в /etc/rsyslog.d/10-iptables.conf
:msg,contains,»[FW — » /var/log/iptables.log
& stop
DDoS по IP
Если злоумышленник знает ваш IP, он может на несколько часов или суток заддосить ваш сервер. Далеко не у всех лоукост-хостингов есть защита от DDoS и ваш сервер просто отключат от сети. Если вы спрятали сервер за CDN, не забудьте сменить IP, иначе хакер его нагуглит и будет DDoS’ить ваш сервер в обход CDN (очень популярная ошибка).
Уязвимости сервисов
Во всем популярном ПО рано или поздно находят ошибки, даже в самых оттестированных и самых критичных. В среде ИБэшников, есть такая полу-шутка — безопасность инфраструктуры можно смело оценивать по времени последнего обновления. Если ваша инфраструктура богата торчащими в мир портами, а вы ее не обновляли год, то любой безопасник вам не глядя скажет, что вы дырявы, и скорее всего, уже взломаны.
Так же стоит упомянуть, что все известные уязвимости, когда-то были неизвестными. Вот представьте хакера, который нашел такую уязвимость, и просканировал весь интернет за 7 минут на ее наличие… Вот и новая вирусная эпидемия ) Надо обновляться, но это может навредить проду, скажете вы. И будете правы, если пакеты ставятся не из официальных репозиториев ОС. Из опыта, обновления из официального репозитория крайне редко ломают прод.
Брутфорс
Как описал выше, есть база с полу миллиардом паролей, которые удобно набирать с клавиатуры. Другими словами, если вы не сгенерировали пароль, а набрали на клавиатуре рядом расположенные символы, будьте уверены* — вас сбрутят.
Уязвимости стека ядра.
Бывает**** и такое, что даже не важно какой именно сервис открывает порт, когда уязвим сам сетевой стек ядра. То есть абсолютно любой tcp/udp-сокет на системе двухлетней давности подвержен уязвимости приводящий к DDoS.
Усиление DDoS-атак
Напрямую ущерба не принесет, но может забить ваш канал, поднять нагрузку на систему, ваш IP попадет в какой-нибудь black-list*****, а вам прилетит абуза от хостера.
Неужели вам нужны все эти риски? Добавьте ваш домашний и рабочий IP в white-list. Даже если он динамический — залогиньтесь через админку хостера, через веб-консоль, и просто добавьте еще один.
Я 15 лет занимаюсь построением и защитой IT-инфраструктуры. Выработал правило, которое всем настоятельно рекомендую — ни один порт не должен торчать в мир без white-list’a.
Например, наиболее защищенный web-сервер*** — это тот, у которого открыты 80 и 443 только для CDN/WAF. А сервисные порты (ssh, netdata, bacula, phpmyadmin) должны быть как минимум за white-list’ом, а еще лучше за VPN. Иначе вы рискуете быть скомпрометированным.
У меня все. Держите свои порты закрытыми!
Как и зачем открывать компьютерные порты?
В прошлый раз мы рассказали о том, что такое компьютерные порты. По сути, установленным на компьютере программам, которые используют Интернет, для нормальной работы нужен не только сам доступ в Сеть, но и открытые порты.
Как и другим программам, которые отправляют и принимают информацию из Сети, порты нужны для работы сетевым играм. Неважно, играете в Counter Strike, World of Tanks или «Доту»: все эти игры многопользовательские, а значит, им нужны порты для взаимодействия с другими игроками. Порты постоянно используют и другие популярные программы, например, Skype, Viber или μTorrent.
Примерно так можно описать ситуацию, когда порты вашего компьютера закрыты. Ваши программы, связанные с Сетью, отправляют информацию, но в ответ ничего не приходит. Конечно, при этом они не могут полностью выполнять свои функции. В играх это проявляется сообщениями об ошибке соединения, задержками в работе (лагами). Так, например, в World of Tanks может появляться сообщение «Destination Unreachable».
Чтобы понять, что при этом происходит и как с этим бороться, нужно понимать, как компьютер может быть соединен с Интернетом. Возможны три различных варианта: прямое подключение к Интернету, подключение через роутер и подключение с использованием трансляции сетевых адресов (NAT). Сейчас мы расскажем о каждом из этих случаев подробнее.
Прямое подключение.
При таком подключении ваш компьютер можно сравнить с частным домом. Этот дом стоит сам по себе, у него есть 65536 постоянно открытых дверей и свой отдельный адрес – название улицы и номер дома. При этом вы можете выйти из любой из дверей и пойти куда угодно. Точно так же кто угодно, зная название улицы и номер дома, может прийти к вам и зайти в любую из дверей. Вы либо ваши гости это и есть пакеты информации, передаваемой между вашим компьютером и Интернетом. Как вы уже догадались, все порты при таком подключении открыты, а информация может свободно передаваться в обоих направлениях.
Правда, такая ситуация это лишь идеальный случай. Почти всегда для защиты информации применяются межсетевые экраны – брандмауэры или Firewall’ы. О том, что это такое, мы уже писали. Если рассматривать его как часть нашего частного дома, то Firewall это сторож, который следит за тем, чтобы двери были закрыты, а войти и выйти могли только те, у кого есть пропуск. О том, как настроить Firewall для того, чтобы открывались те или иные порты, мы расскажем в отдельной статье.
Подключение через роутер.
Внешне домашний роутер представляет собой небольшую коробочку. По сути это тоже компьютер, задача которого сводится к получению доступа в Интернет и распределению его сразу на несколько устройств – компьютер, ноутбук, планшет или смартфон. Таким образом, если при подключении к Сети напрямую наш компьютер можно сравнить с частным домом, то при подключении к роутеру он является квартирой в многоквартирном доме. Вы можете легко выйти из квартиры через любую дверь (а их у нас, как вы уже могли догадаться, 65536) и пойти куда угодно. Но если кто-то хочет прийти к вам в гости, то теперь он должен знать не только название улицы и номер дома, но и номер квартиры. В подъезде при этом сидит строгий швейцар, который спросит у любого гостя, куда тот направляется, выяснит, ждут ли его, и лишь после этого впустит гостей.
Как видите, чтобы гости без лишних проблем попали к вам в квартиру, нужно объяснить это швейцару, то есть, настроить роутер. О тонкостях настройки роутеров различных производителей мы расскажем в отдельной статье.
Подключение с использованием NAT.
Таким образом, если ваш провайдер использует NAT, то вы не сможете открыть порт при всем желании. Об этом мы подготовили отдельную статью.