
Комментарии 21
надеюсь, что данная статья внесла ясность в этот вопрос.
Как по мне, никакой ясности она не внесла.
Что такое VPN? Это когда между клиентом (тем, кто обращается) и узлом назначения (тот, к кому обращается) находится два сервера. Серверы могут быть как отдельными устройствами, так и программным обеспечением на клиенте и/или узле назначения. Эти 2 сервера устанавливают между собой канал обмена (он может быть как постоянным, так и устанавливаемым по запросу, т.е. по факту необходимости передать трафик). Первый, получив трафик от клиента, запаковывает его неким предопределённым образом и отправляет в этот установленный канал, второй, получив этот трафик, его распаковывает и направляет узлу назначения. Ответный трафик идёт по той же технологии в обратном направлении.
Что такое proxy? Это когда между клиентом и узлом назначения находится один сервер. Он точно так же может быть и отдельным устройством, и программным обеспечением. Этот сервер, получив трафик от клиента, трансформирует его так, чтобы извне это выглядело, будто трафик отправлен не клиентом, а прокси-сервером. То есть с точки зрения узла назначения, к нему обращается не клиент, а сам прокси-сервер. Соответственно ответный трафик подвергается обратному преобразованию. Либо всё с точностью до наоборот - клиент обращается к прокси-серверу, думая, что он и есть узел назначения, а прокси обеспечивает обмен с сервером назначения (reverse proxy).
надеюсь, что данная статья внесла ясность в этот вопрос.
Как по мне, никакой ясности она не внесла.
Что такое VPN? Это когда между клиентом (тем, кто обращается) и узлом назначения (тот, к кому обращается) находится два сервера. Серверы могут быть как отдельными устройствами, так и программным обеспечением на клиенте и/или узле назначения. Эти 2 сервера устанавливают между собой канал обмена (он может быть как постоянным, так и устанавливаемым по запросу, т.е. по факту необходимости передать трафик). Первый, получив трафик от клиента, запаковывает его неким предопределённым образом и отправляет в этот установленный канал, второй, получив этот трафик, его распаковывает и направляет узлу назначения. Ответный трафик идёт по той же технологии в обратном направлении.
Что такое proxy? Это когда между клиентом и узлом назначения находится один сервер. Он точно так же может быть и отдельным устройством, и программным обеспечением. Этот сервер, получив трафик от клиента, трансформирует его так, чтобы извне это выглядело, будто трафик отправлен не клиентом, а прокси-сервером. То есть с точки зрения узла назначения, к нему обращается не клиент, а сам прокси-сервер. Соответственно ответный трафик подвергается обратному преобразованию. Либо всё с точностью до наоборот - клиент обращается к прокси-серверу, думая, что он и есть узел назначения, а прокси обеспечивает обмен с сервером назначения (reverse proxy).
Здравствуйте, с вашим комментарием даже не спорю, всё верно расписано и понятно. По сути, целью данной статьи ставил не техническое описание как именно работают эти технологии, а в нахождении чётких формулировок, что чем является, и по этим формулировкам формирование тезиса, что это не одно и то же с примерами. На самом деле думал что из формулировок и моих комментариев в статье примерно выльется общее понимание различий (по сути Ваш комментарий), что при углублении в технологию уже будет ассоциированно с практическими кейсами. Спасибо.
На самом деле думал что из формулировок и моих комментариев в статье примерно выльется общее понимание различий (по сути Ваш комментарий)
Ну настолько примерно, что почти невероятно...
Например, обычный NAT-роутер (вот та самая коробушка, которую у вас поставил провайдер для доступа к Интернету) - это по сути самый что ни на есть прокси. А из вашей статьи это ну никак не следует.
Шифрование и VPN - не связаны, нигде и никак. Как в старой рекламе - "Ты можешь, но не обязана...". VPN может прекрасно инкапсулировать, не шифруя, и от этого не перестанет быть VPN. Возьмите передачу клиентского трафика для конкретного VLANID через транковый канал между коммутаторами - ну чистый VPN, все же признаки налицо.
А если VPN шифрует, да ещё не дай боже по ГОСТу, то какой тут, скажите на милость, L3? Берите выше, и хорошо так выше...
Создание интерфейса для VPN - вот тоже не догма. Просто так проще и удобнее запрограммировать, но по факту именно интерфейс - не нужен, можно просто напрямую слать дальнему узлу в рамках обычной маршрутизации.
Прокси - так он и вовсе может быть полной эмуляции. То есть почти что RDP, с небольшим таким "недо-".
А уж кэширующий прокси - так и просто обыденность. И когда вы через него запросите веб-страницу, он может загрузить используемые на странице картинки и скрипты ещё до того, как ваш браузер озаботится их попросить...
Например, обычный NAT-роутер (вот та самая коробушка, которую у вас поставил провайдер для доступа к Интернету) - это по сути самый что ни на есть прокси. А из вашей статьи это ну никак не следует.
Как не следует если дано определение:
Прокси - сервер, который обрабатывает запросы своих клиентов, перенаправляя эти запросы на другие серверы.
Что не бьётся я не понимаю, объясните, пожалуйста.
То есть как - что не бьётся? Где в этой схеме, позвольте узнать, запрос клиента к серверу? Клиент просто шлёт трафик в соответствии со своей таблицей маршрутизации в дефолтный шлюз, и всё. У меня как-то язык не поворачивается назвать это запросом. А у провайдера, сто пудов, есть ещё и свой NAT-маршрутизатор, который в такой схеме тоже прокси - так клиент о его существовании и вовсе не знает, и соответственно запросов к нему слать ну просто не в состоянии.
Понял, спасибо за разъяснение. У нас с вами немного не совпали языки которыми мы выражаемся, вот и всё. Выразился я действительно не совсем аккуратно, но боюсь, что рассуждения на терминологическом уровне ни к чему не приведут, так как, по моему мнению, всегда можно найти места где применяется один термин, а где другой, а это уже попахивает пустым холиваром.
боюсь, что рассуждения на терминологическом уровне ни к чему не приведут, так как, по моему мнению, всегда можно найти места где применяется один термин, а где другой
Вот сейчас совсем не понял. Ваша статья - она же как раз про всё вот это. И вдруг вы же говорите, что всё это бесполезно, и на результат рассчитывать не приходится? Не, не понимаю...
Задачей статьи ставил найти какие-то задокументированные определения и на основе них выявить различие в сути этих технологий.
По сути оспаривать одними определения задача довольно неблагодарная и бесполезная, на то они и определения. Определения можно либо использовать либо нет и время рассудит что было удобным, а что нет.
По сути выбор определения это и есть отдача человеком предпочтения той или иной группе лиц, поэтому и пометил статью как мнение.
Комментарий относился к вопросу трафик и запрос, я использовал чистый перевод, чтобы не искажать первоисточник, пометил как цитату, возможно это не очень удачное решение.
Суть к тому что если мы будем рассуждать так дальше то можно пойти к тому, а что такое запрос, а что такое трафик и дальше в лес. Обычно такие рассуждения ни к чему не приводят.
В статье я попытался объяснить своё мнение по поводу использования этих терминов, подкрепив их ссылками на официальные источники, не более того.
Ааа, вот оно чё... ну тогда вы просто выбрали имхо ну очень неблагодарную тему. Мало того, что именно задокументированные определения весьма часто далеки от реалий, так реалии ж ещё и изменяются - в отличие от прибитых к стенке определений. Плюс балл за смелость, однозначно.
между клиентом и узлом назначения находится два сервера
Это неверно! 20 лет назад я делал тоннели ВПН между разнесенным офисами компании в городе (на базе openvpn). В некоторых случаях тоннель создаётся непосредственно между двумя узлами, без посредников. Причем нет разделения клиента/сервера. Это тоннель - в нем две дырки и два направления. Режим дуплекс.
В некоторых случаях тоннель создаётся непосредственно между двумя узлами, без посредников.
Вы невнимательно читали. То, что клиент и/или сервер - программные и работают непосредственно на узле, который обменивается трафиком, вовсе не означает, что ни клиента, ни сервера вообще нет.
Вы невнимательно читали
Это не я невнимательно читал. Это вы недостаточно изучали базу (РТФМ).
Клиент/сервер не может быть там, где нет ни клиента, ни сервера. Где по-вашему сервер в сети DirectConnect? То же самое про OpenVPN в симметричном режиме.
непосредственно на узле, который обменивается трафиком
Вы мешаете в кучу разные утверждения - это не имеет отношения к архитектуре "Клиент/сервер". Разберитесь с кашей в голове.
Насчёт программности - не показатель. Ведь основной сетевой стек в ОС тоже программный (как правило). Это не выделяет его в отдельные сущности. По сути же с т.з. ОС ВПН создаёт сетевое устройство, которое ничем не отличается от железной сетевухи или модема. Хотя понятие VPN последнее время было расширено/размыто.
Поддержу комментатора, почему интересно когда на телефоне горит значок ВПН это не ВПН? То что ВПН изначально придумали для доступа к частной сети, а теперь используют для хождения в интернет из другой точки, что схематично напоминает прокси, не делает из него прокси.
Вообще все чаще начал замечать среди контент мейкеров такую дрянь, как намеренное спорное заявление дабы в комментариях холивар развести. В данном случае вроде не похоже, хотя и очень даже допускаю что так и есть.
Здравствуйте, не совсем понял заявление про VPN на телефоне. Если говорить про условный WG, то это ВПН , однако, например, если вы его используете для доступа к другим узлам через этот узел, согласно определению из NIST, это ещё и прокси. Одно другому не противоречит.
Однако, если вы используете Proxy в TUN режиме, то это именно Proxy в TUN режиме, потому что оборачивает пакеты в TCP, UDP и тп.
Значит ли по ГОСТу , что ovpn tap на L2 это не VPN? А если интерфейс не создаётся, а обрабатывается политикой в ядре ос, то это также не считается vpn? Ну по ГОСТу я имею в виду.Просто если есть закон, то использовать ipsec с обменом ключами не подойдёт, т.к. он не соответствует ГОСТу
Здравствуйте, начну с более простого. По поводу создания интерфейсов ничего не сказано в госте, это просто было моя вольная интерпретация, не знаю почему так сказал, сейчас исправлю, в определении ничего про интерфейсы не сказано, только про сетевой туннель.
По поводу L2VPN, с этим вопросом сложнее, если чисто технически то L2VPN не противоречит ГОСТу, так как он покрывает сетевой уровень, весь вопрос к словам "через существующую сетевую инфраструктуру", зачастую сетевая инфраструктура есть, однако, если её нет, то L2VPN на удивление не считается VPN. Опять же нормативка позволяет зачастую разночтение.
Главное отличие прокси и ВПН, которое упускают: прокси симплексный, тоннель дуплексный (как дорожный тоннель с двусторонним движением)
Поэтому, если вас устраивает, что к вам с другого конца туннеля ходят в вашу частную сеть или на ваш личный гаджет как к себе домой - используйте впн, если приватность вам важна, ваш выбор - прокси.
А те, кто рекламирует ВПН до неизвестного левого сегмента сети ради вашей безопасности - они совершенно некомпетентны.
Прокси, от слова проксимальный - ближайший. То есть узел логически более близкий к вам в отношении других узлов. Что просто означает, что он посредник, через него идут запросы. То же самое с прокси в программировании - это делегат, посредник.
если вас устраивает, что к вам с другого конца туннеля ходят в вашу частную сеть или на ваш личный гаджет как к себе домой - используйте впн
Ну это как раз не самая большая проблема. Фильтрацию-то ещё никто не отменял. Собственно, прокси односторонний именно потому, что в обратном направлении он пропустит только трафик уже поднятой сессии. Но если прокси не пропустит инициативный обратный трафик потому, что не знает, куда и кому его следует направить (если нет port mapping или там DMZ), то в случае ВПН просто явно задаётся запрет пакетов на установление сессии в "обратном" направлении. А что не получится общаться, к примеру, с активным FTP, так это не самая большая проблема. Да и исключения тоже никто не отменял.
как раз не самая большая проблема
по-моему настройки по умолчанию в фаерволе для ВПН в Линуксах открывают всё
он пропустит только трафик уже поднятой сессии
Насколько я себе представляю, он односторонний просто по дизайну. По меньшей мере в случае с HTTP-Proxy. Думаю, socks тоже пропускает только то, что предусмотрено протоколом.
Proxy и VPN. В чём смысл этих понятий и чем они отличаются