Upnp в локальной сети: настройка роутера

Что такое UPnP и почему его нужно отключить? | Портал о системах видеонаблюдения и безопасности

Вы бы предпочли выбрать удобство или безопасность? UPnP помогает быстро подключать устройства к сети – нет необходимости в ручной настройке. Однако он также может позволить хакерам входить в вашу сеть для выполнения вредоносных действий. Стоит узнать, как хакеры используют UPnP и что можно сделать, чтобы защитить себя.

Что такое переадресация портов?

Чтобы понять, что такое UPnP, нужно сначала разобраться, что такое переадресация портов. Она используется для установления прямого подключения между домашним устройством или сервером и удаленным устройством. Например, вы можете подключить ноутбук к видеокамере и следить за ним, пока находитесь вдали.

Как это работает? Все ваши домашние устройства, включая маршрутизатор, вместе создают локальную сеть (LAN). Все, что находится за пределами локальной сети, например, серверы сайта или компьютер вашего друга, расположено в глобальной сети (WAN).

Как правило, никто за пределами вашей локальной сети не может получить доступ к устройствам в вашей сети, если вы не позволите им воспользоваться переадресацией портов.

Что такое UPnP?

Это протокол, который позволяет приложениям и другим устройствам в вашей сети автоматически открывать и закрывать порты для подключения друг к другу

Например, если вы решили подключить принтер ко всем устройствам в доме без UPnP, то вам потребуется сделать это вручную, уделяя внимание каждому отдельному девайсу

Но благодаря UPnP можно автоматизировать этот процесс. UPnP предлагает нулевую конфигурацию, что означает, что ни одно из устройств в вашей сети не нуждается в ручной настройке для обнаружения нового устройства.

С поддержкой UPnP они могут автоматически подключаться к сети, получать IP-адрес, находить другие устройства в сети и подключаться к ним, и это очень удобно.

Для чего используется UPnP?

  • Игры. Подключение Xboxes и других игровых приставок для потоковой передачи онлайн игр;
  • Дистанционное видеонаблюдение. Вы можете использовать UPnP для подключения к домашним камерам, когда находитесь не дома;
  • Цифровые ые помощники;
  • Устройства IOT, такие как интеллектуальное освещение, смарт-замки и т.д.;
  • Потоковая передача мультимедиа;

Почему UPnP небезопасен?

Первоначально предполагалось, что UPnP будет работать только на уровне локальной сети, что означает, что устройства только в вашей сети могут подключаться друг к другу. Однако многие производители маршрутизаторов теперь включают UPnP по умолчанию, что делает их доступными для обнаружения из WAN, а это приводит к многочисленным проблемам безопасности.

UPnP не использует аутентификацию или авторизацию (только некоторые устройства), предполагая, что устройства, пытающиеся подключиться к нему, являются надежными и поступают из вашей локальной сети. Это означает, что хакеры могут найти бэкдоры в вашей сети. Например, они отправят UPnP-запрос на ваш маршрутизатор и он откроет им порт без лишних вопросов.

Как только хакер получит доступ к сети, он сможет:

  • Получить удаленный доступ к другим устройствам, подключенным к той же сети;
  • Установить вредоносное ПО на ваши устройства;
  • Украсть вашу конфиденциальную информацию;
  • Использовать ваш маршрутизатор в качестве прокси-сервера для сокрытия других вредоносных действий в интернете. Они могут использовать его для распространения вредоносных программ, кражи информации о кредитных картах и проведения фишинговых атак или атак типа DDoS. Использование вашего маршрутизатора в качестве прокси означает, что все эти атаки будут выглядеть так, будто они исходят от вас, а не от хакера.

Как защитить себя?

Когда дело доходит до уязвимостей UPnP, есть два варианта, которые вы можете выбрать для собственной защиты.

Во-первых , вы можете включить UPnP – UP, который обеспечивает механизмы аутентификации и авторизации для устройств и приложений UPnP. Однако, этот метод не считается очень надежным, так как многие устройства не поддерживают его и могут предполагать, что другие устройства, подключаемые к вашему маршрутизатору, заслуживают доверия.

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

На видео: Как включить на роутере UPnP?

Безопасно ли использование UPnP

При появлении технологии планировалось, что UPnP будет функционировать на локальном уровне для подключения устройств внутри сети. Но некоторые производители включили опцию в роутерах по умолчанию, что делает устройство доступным из WAN, а это ведет к уязвимости в сфере безопасности. Во время работы UPnP не применяется авторизация или аутентификация. Считается, что все подключаемые устройства имеют высокую степень надежности.

Хакеры пользуются такой уязвимостью и могут найти слабые места в сети. Распространенная ситуация — отправка UPnP запроса на роутер с последующем открытием порта. После подключения к сети злоумышленник получает доступ к другому оборудованию, находящемуся в сети. В дальнейшем он может установить вирус, украсть конфиденциальные сведения или использовать маршрутизатор в роли прокси-сервера. Негативных сценариев много. При этом выявить хакера трудно, ведь, по сути, атаки идут изнутри сети.

Для защиты можно использовать следующие методы:

  1. Активируйте UPnP-UP на роутере, подразумевающий авторизацию и аутентификацию. Минус в том, что такой режим многие устройства не поддерживают.
  2. Отключите опцию вообще. В таком случае придется вносить настройки вручную, но при этом можно быть уверенным в безопасности.

UPnP для роутера — удобная функция, упрощающая процесс настройки портов. Но нужно помнить о рисках и предусмотреть дополнительные способы защиты.

Немного теории

Подключая один или несколько ПК к сети Интернет через DSL, преимущественно используют технологию NAT (преобразование сетевого адреса). NAT позволяет нескольким ПК частной сети пользоваться общим IP-адресом, который обеспечивает выход в сеть. NAT дополнительно защищает частную сеть, хотя это не сетевой экран (firewall).

Пользователь доступа DSL должен понимать, что NAT присутствует только в модеме с возможностью роутера, то есть к модему одновременно можно подключить два и более ПК. В подобном случае все настройки для соединения с интернетом (пароль, логин) прописываются в самом модеме. В случае использования модема без функции роутера функция NAT отсутствует.

Для того чтобы входящее соединение могло беспрепятственно проходить к внутрисетевым службам нужно соответствующее сопоставление портов. Если сопоставление не соответствует или не выполнено, то связь с программой (службой) из сети Интернет станет недоступна. Зачастую в подобном случае прибегают к ручной настройке по сопоставлению портов.

Сопоставлять порты вручную довольно трудоемкое занятие. Это достаточно сложно, требуется определенный опыт и знания. Большинство пользователей не в состоянии справиться с подобной задачей без посторонней помощи специалиста. Они и не предполагают, что становятся «жертвами» NAT. При любой попытке воспользоваться приложением, которое принимает внешний вызов, пользователю не удается осуществить поставленную задачу.

Для решения подобной проблемы был разработан технологический процесс NAT Traversal.

Он позволяет сетевому приложению определять, что оно находиться за устройством NAT, идентифицирует внешний адрес IP, настраивает сопоставление портов. Все это выполняется в автоматическом режиме. Функциональный процесс NAT Traversal опирается на протоколы управления и обнаружения, которые являются неотъемлемой частью Universal Plug and Play. Upnp избавляет пользователя от ручной настройки таблиц сопоставления NAT, не нужно дополнительно устанавливать настройки в роутере. Нужно только активировать возможности UPnP.

Большое количество роутеров и кабельных модемов, которые выпускаются на сегодняшний день, обладают встроенной поддержкой UPnP

Выбирая подобное устройство нужно обращать внимание на наличие функции UPnP. Эта поддержка может в дальнейшем сильно уменьшить вашу головную боль при возникновении проблемы связанной с ручной настройкой роутера. Правильная работа UPnP приложения должна осуществляться как приложением, так и модемом или роутером

Не все приложения имеют поддержку этого технологического процесса. В некоторых модемах UPnP отключен, его нужно включать вручную

Правильная работа UPnP приложения должна осуществляться как приложением, так и модемом или роутером. Не все приложения имеют поддержку этого технологического процесса. В некоторых модемах UPnP отключен, его нужно включать вручную.

Если у вас есть такие приложения, то вам обязательно нужно активировать поддержку, как в самой системе, так и в модеме.

Включить поддержку UPnP в Windows, можно выполнив такие действия:

  1. Нажать меню Пуск, выбрать панель Управления.
  2. В панели управления нажать на ярлык Установка удаление программ и Установка компонентов Windows.
  3. В пункте Компоненты выбрать Сетевые службы. Поставить галочку напротив и нажать Состав.
  4. В диалоговом окне сетевых служб следует поставить галочку напротив Клиент обнаружения и управления устройствами шлюза Интернет. Так же нужно отметить и Пользовательский интерфейс UPnP.
  5. Нажимаем Ок и Далее.

Возможно, потребуется установочный диск Windows.

Подобный процесс установки пригоден для большинства систем Windows XP. Настойки в роутере выполняются согласно его технической документации.

Привет! Очень часто бывает, что после установки роутера отказываются работать такие программы как uTorrent, DC++ и подобные клиенты для P2P сетей. Это происходит по той причине, что программа не может получить файл на компьютер который находится в локальной сети (за роутером) . Но проблема может возникнуть не только с клиентами P2P сетей, но и с онлайн играми, настройкой WEB, или FTP серверов и т. д.

Для того, что бы все работало, необходимо делать перенаправленние портов. Если делать это вручную, то сам процесс немного сложный и непонятный. Нужно присваивать каждому компьютеру статический IP, затем навастривать перенаправленные портов в настройках маршрутизатора.

Есть такая полезная функция, как UPnP

. Это такой себе автоматический переброс портов. В большинстве случаев, достаточно включить UPnP в настройках роутера (если он еще не включен) и все будет работать отлично. Но иногда, без ручного переброса портов не обойтись. Каждый способ имеет свои плюсы и минусы.

Немного теории

Подключая один или несколько ПК к сети Интернет через DSL, преимущественно используют технологию NAT (преобразование сетевого адреса). NAT позволяет нескольким ПК частной сети пользоваться общим IP-адресом, который обеспечивает выход в сеть. NAT дополнительно защищает частную сеть, хотя это не сетевой экран (firewall).

Пользователь доступа DSL должен понимать, что NAT присутствует только в модеме с возможностью роутера, то есть к модему одновременно можно подключить два и более ПК. В подобном случае все настройки для соединения с интернетом (пароль, логин) прописываются в самом модеме. В случае использования модема без функции роутера функция NAT отсутствует.

Для того чтобы входящее соединение могло беспрепятственно проходить к внутрисетевым службам нужно соответствующее сопоставление портов. Если сопоставление не соответствует или не выполнено, то связь с программой (службой) из сети Интернет станет недоступна. Зачастую в подобном случае прибегают к ручной настройке по сопоставлению портов.

Сопоставлять порты вручную довольно трудоемкое занятие. Это достаточно сложно, требуется определенный опыт и знания. Большинство пользователей не в состоянии справиться с подобной задачей без посторонней помощи специалиста. Они и не предполагают, что становятся «жертвами» NAT. При любой попытке воспользоваться приложением, которое принимает внешний вызов, пользователю не удается осуществить поставленную задачу.

Для решения подобной проблемы был разработан технологический процесс NAT Traversal.

Он позволяет сетевому приложению определять, что оно находиться за устройством NAT, идентифицирует внешний адрес IP, настраивает сопоставление портов. Все это выполняется в автоматическом режиме. Функциональный процесс NAT Traversal опирается на протоколы управления и обнаружения, которые являются неотъемлемой частью Universal Plug and Play. Upnp избавляет пользователя от ручной настройки таблиц сопоставления NAT, не нужно дополнительно устанавливать настройки в роутере. Нужно только активировать возможности UPnP.

Большое количество роутеров и кабельных модемов, которые выпускаются на сегодняшний день, обладают встроенной поддержкой UPnP

Выбирая подобное устройство нужно обращать внимание на наличие функции UPnP. Эта поддержка может в дальнейшем сильно уменьшить вашу головную боль при возникновении проблемы связанной с ручной настройкой роутера. Правильная работа UPnP приложения должна осуществляться как приложением, так и модемом или роутером

Не все приложения имеют поддержку этого технологического процесса. В некоторых модемах UPnP отключен, его нужно включать вручную

Правильная работа UPnP приложения должна осуществляться как приложением, так и модемом или роутером. Не все приложения имеют поддержку этого технологического процесса. В некоторых модемах UPnP отключен, его нужно включать вручную.

Если у вас есть такие приложения, то вам обязательно нужно активировать поддержку, как в самой системе, так и в модеме.

Включить поддержку UPnP в Windows, можно выполнив такие действия:

  1. Нажать меню Пуск, выбрать панель Управления.
  2. В панели управления нажать на ярлык Установка удаление программ и Установка компонентов Windows.
  3. В пункте Компоненты выбрать Сетевые службы. Поставить галочку напротив и нажать Состав.
  4. В диалоговом окне сетевых служб следует поставить галочку напротив Клиент обнаружения и управления устройствами шлюза Интернет. Так же нужно отметить и Пользовательский интерфейс UPnP.
  5. Нажимаем Ок и Далее.

Возможно, потребуется установочный диск Windows.

Подобный процесс установки пригоден для большинства систем Windows XP. Настойки в роутере выполняются согласно его технической документации.

Привет! Очень часто бывает, что после установки роутера отказываются работать такие программы как uTorrent, DC++ и подобные клиенты для P2P сетей. Это происходит по той причине, что программа не может получить файл на компьютер который находится в локальной сети (за роутером) . Но проблема может возникнуть не только с клиентами P2P сетей, но и с онлайн играми, настройкой WEB, или FTP серверов и т. д.

Для того, что бы все работало, необходимо делать перенаправленние портов. Если делать это вручную, то сам процесс немного сложный и непонятный. Нужно присваивать каждому компьютеру статический IP, затем навастривать перенаправленные портов в настройках маршрутизатора.

Есть такая полезная функция, как UPnP

. Это такой себе автоматический переброс портов. В большинстве случаев, достаточно включить UPnP в настройках роутера (если он еще не включен) и все будет работать отлично. Но иногда, без ручного переброса портов не обойтись. Каждый способ имеет свои плюсы и минусы.

Как узнать, поддерживает ли роутер IPTV?

Большинство современных роутеров TP-link, D-Link, Zyxel и других производителей обладают встроенной поддержкой технологии IPTV. Однако, порой для нормальной работы маршрутизатора в этом режиме нужна специальная прошивка. В сети существует масса таблиц со списком поддерживаемых роутеров, но информация в них быстро устаревает.

Есть 3 несложных способа:

  • Вводим в google «название роутера IPTV». Скорее всего на форумах уже ответили на вопрос, а может даже предложили специфическую инструкцию к конкретной модели.
  • Изучаем техническую документацию. Для этого подойдет бумажная инструкция или pdf-документ на сайте производителя.

Ищем необходимую настройку в панели администратора. Необходимая информация размещена на корпусе роутера, в том числе IP или доменный адрес для ввода в браузер, а также стандартный логин и пароль. Искомый параметр – IPTV или IGMP. Если есть поддержка одного из параметров, роутер точно работает с IPTV.

Создаем домашний медиа-сервер DLNA

DLNA — технология позволяющая объединять в единую цифровую сеть устройства с целью приема/передачи и просмотра в режиме on-line различного медиа-контента. На практике это выглядит следующим образом, есть компьютер с жестким диском большей емкости на котором хранятся фотографии, фильмы, аудиозаписи и другой медиаконтент.

Что если вы хотите просмотреть один из фильмов не на экране ПК, а на телевизоре с большой диагональю? Или к вам пришли друзья и вы хотите показать фотографии из отпуска либо на большом экране телевизора либо на телефоне, т. к. не хотите заходить в дом. А что если каждый член семьи хочет смотреть свои медиафайлы на своем персональном девайсе (телефоне, планшете)? Проблема решается созданием на базе ПК медиасервера и объединением всех устройств в единую сеть с помощью роутера.

Обращаем ваше внимание, что роутеры поддерживающие стандарт 802.11N (скорость передачи данных до 300Мб/с) не всегда справляются с передачей больших потоковых объемов видео высокого качества по Wi-Fi и на экране телевизора происходят замирания. В таком случае рекомендуем использовать проводное соединение. В качестве программного обеспечения, с помощью которого будет создан медиа-сервер будет использована бесплатная программа «Домашний медиа-сервер UpnP, DLNA, HTTP»

Скачиваем и устанавливаем программу

В качестве программного обеспечения, с помощью которого будет создан медиа-сервер будет использована бесплатная программа «Домашний медиа-сервер UpnP, DLNA, HTTP». Скачиваем и устанавливаем программу.

После завершения установки следует указать, с какого каталога и какой тип контента будет транслироваться в сеть (кнопка «Добавить» на правой панели программы). Выбор осуществляется путем установки зеленых точек напротив соответствующих каталогов и типа контента. Для добавления ресурсов размещенных на сетевых или съемных дисках необходимо поставить флажки в соответствующих графах в нижней части окна.

Далее, следует добавить устройства которые будут работать с сервером. Указываем правильное максимальное разрешение устройства и поддерживаемые форматы воспроизведения.

Если есть необходимость можно добавить программу в автозагрузку и установить службу «Домашний медиа-сервер», это позволит программе запускаться в автоматическом режиме после включения компьютера. Для запуска DLNA-сервера нажимаем кнопку «Запуск» в верхней панели программы, после чего необходимо включить телевизор. Для запуска контента следует нажать на файле правой кнопкой мыши и в контекстном меню выбрать «Воспроизвести на …» вместо трех точек будет ваше устройство (в нашем случае телевизор).

Атаковать с использованием техники session puzzling

Решение

Логические уязвимости — это всегда весело. Они бывают простыми и сложными, но их объединяет одно — необходимость правильно подумать. Вот только есть с ними и небольшая проблема: их как-то не особо типизируют (возможно, как раз-таки потому, что они все такие разнообразные :)). Ну да ладно. Хочу рассказать тебе об интересной технике (или виде уязвимостей, это уж как посмотреть), которую презентовали относительно недавно, пару лет назад. Название ей — session puzzling или session variable overloading (по версии OWASP).

Для начала давай вспомним, как веб-приложения аутентифицируют и авторизуют пользователя (HTTP ведь stateless).

  1. Юзер входит на сайт.
  2. Юзер вводит логин и пароль и отправляет на сервер.
  3. Сервер проверяет эти данные и, если все верно, пускает его во внутреннюю часть, при этом отправляя юзеру cookie в HTTP-ответе.
  4. Когда юзер переходит на какую-то еще страницу, браузер добавляет к запросу куки. Сервер по данной куке понимает, что юзер уже аутентифицирован, и работает в соответствии с этой мыслью.

Все выглядит вполне четко, но здесь пропущен важный момент. Он состоит в том, что сервер хранит у себя информацию о сессии конкретного пользователя. То есть приходит кука от юзера, он берет ее и смотрит (в памяти, в БД — в зависимости от ПО), а что же к ней у него «привязано». Простейший пример: он может хранить имя пользователя в сессии. И по куке получать из сессии имя и точно знать, кто к нему обратился в данный момент.

Вообще, в сессии хранят обычно «временную» информацию, а что-то более-менее постоянное — уже в БД. Например, логично хранить имя юзера в сессии, а вот его «роль» можно хранить в БД и запрашивать только по необходимости. Здесь, на самом деле, многое зависит от конкретного приложения и разработчика ПО.

Например, хранение большого объема данных в сессии может привести к исчерпанию либо памяти веб-сервера (Tomcat), либо свободного места на жестком диске (PHP). С другой стороны, обращения в БД требуют больше времени. Обусловлен выбор обычно производительностью, и о безопасности здесь редко думают (конечно, ведь как можно повлиять на то, что хранится на серверной стороне?).

И вот мы подошли к самой сути данной атаки: в определенных ситуациях мы можем влиять на то, что хранится на сервере. В каких конкретно — это тоже зависит от ситуации. Чаще всего нам нужны несколько различных точек входа в приложения, данные из которых попадают в одну и ту же переменную сессии.

Я приведу классический пример, и все будет ясно. Та же ситуация, что описана выше. Клиент, который может входить в приватную зону на сайте через страницу логина. Сайт, который хранит имя клиента в сессии, а доступ к приватным страницам проверяет по имени пользователя из сессии.

Но добавим к этому страницу с восстановлением пароля, на которой ты должен ввести свое имя (1), а система в ответ задаст секретный вопрос (2), на который ты должен будешь ввести правильный ответ для сброса пароля (3). И, как ты вероятно уже понял, для того чтобы провести по этой последовательности тебя (от 1 до 3), сервер должен также воспользоваться сессией и хранить в ней имя пользователя.

Так вот, атака будет заключаться в том, что, когда мы заходим на страницу восстановления и вводим имя пользователя администратора, сервер в сессии отмечает, что юзер — админ, и выводит для админа секретный вопрос. Все! Мы можем ничего не вводить, а просто перейти на приватный раздел сайта. Сервер посмотрит сессию, увидит, что имя пользователя админа, и даст нам доступ. То есть во время восстановления пароля мы «поставили» необходимое нам значение и дальше пошли бороздить приватные части. Бага здесь и в том, что сайт использует одно имя переменной и при аутентификации, и при восстановлении пароля.

Сначала может показаться, что данный тип уязвимости — редкость. На самом деле это не так. Я лично находил такие в достаточно распространенных продуктах. Вот только не знал тогда, что это так называется.

Кстати, кроме обхода аутентификации, использовать данную технику можно для повышения привилегий или перескока шагов на многошаговых операциях…

Как искать такого типа баги? Фактически какой-то суперметодики для этого нет. Но в качестве начала необходимо выискать входные точки в приложение, имеющие потенциальную возможность влиять на значения в сессионных переменных. А дальше — мозг, руки и тесты, тесты, тесты.

Если заинтересовался или хочешь попробовать на специальном уязвимом приложении — прошу к авторам изначального ресерча.

Ручной переброс портов, или UPnP?

В этой статье я хотел написать только о UPnP. О том как включить эту функцию на роутере и в программах DC++ и uTorrent (о ручной настройке постараюсь написать в отдельной статье) . Но давайте сначала разберемся, что лучше UPnP, или все же стоит настроить переброс вручную.

  • UPnP – это просто, не нужно что-то там прописывать, долго настраивать и т. д. Если вы боитесь что-то натворить в настройках маршрутизатора, то UPnP это то что нужно. Из минусов: может не работать в некоторых программах, серверах, играх. Ну и безопасность, UPnP может перебросить то, что перебрасывать как бы не нужно (но это спорное мнение и оно не должно Вас пугать) .
  • Ручная настройка перенаправления портов требует более серьезных настроек. И этот способ немного неудобен тем, что при появлении новых программ, или каких-то изменениях существующих, придется постоянно настраивать перенаправление. Это не очень удобно.

Включаем UPnP в настройках роутера

Обычно, по умолчанию в настройках роутера сервис UPnP уже включен (в Tp-Link, точно) . Да и программы типа uTorrent даже через роутер работают без дополнительных настроек. А вот с DC++, насколько я заметил, бываю частые проблемы.

Давайте сначала проверим, активна ли функция UPnP в вашем маршрутизаторе.

Зайдите в настройки маршрутизатора. Обычно это адрес http://192.168.1.1, или http://192.168.0.1.

В Tp-Link:

Перейдите на вкладку Forwarding – UPnP (Переадресация – UPnP) . Должен быть статус Enabled (Включено) .

Asus:

Может быть по-разному, но обычно это вкладка Интернет – Подключение и там есть переключатель UPnP.

Эта функция может называться немного по другому. Вкладка WAN – Port Trigger. Пункт Enable Port Trigger должен быть включен.

D-Link:

Переходим вверху на вкладку Advanced, затем слева выбираем Advanced Network и смотрим, стоит ли галочка возле Enable UPnP.

ZyXel:

Пункты меню могут немного отличатся, в зависимости от версии устройства, прошивки и т. п. Если не сможете найти, то напишите в комментария, разберемся :).

Проверяем настройки DC++ и uTorrent

Я покажу, как проверить включена ли функция UPnP в этих программах.

В DC++ зайдите в настройки на вкладку Настройки соединения и посмотрите, отмечен ли пункт Фаэрвол с UPnP (только WinXP+).

В uTorrent переходим в пункт Настройки – Настройки программы. Вкладка Соединение. Смотрим, что бы стояла галочка возле Переадресация UPnP.

Послесловие

Надеюсь, мне удалось немного прояснить ситуацию с перебросом портов. На первый взгляд эта тема кажется непонятной и сложной. Но функция UPnP создана для того, что бы немного упростить этот процесс и облегчить нашу жизнь.

Хотя, как я уже писал, иногда без ручной настройки переброса не обойтись.

Рейтинг
( Пока оценок нет )
Editor
Editor/ автор статьи

Давно интересуюсь темой. Мне нравится писать о том, в чём разбираюсь.

Понравилась статья? Поделиться с друзьями:
Распродажа для Вас
Добавить комментарий

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!: