Следует сказать, что до появления протоколов TCP/IP при построении разумно больших масштабируемых систем часто использовались различные решения, которые позволяли создать иллюзию легкого доступа к серверу и его близости к отправителю, хотя на самом деле он мог быть расположен далеко и где угодно. К таким системам обращались через так называемые туннели. Этим термином обозначалось специально организованное соединение, особенность которого заключалась в его прохождении через обычно непокорную и труднопроходимую сетевую среду. При этом вход и выход туннеля оказывались в различных местах. Системы туннелирования нетривиальны, их трудно реализовать. В основном это двухточечные линии передачи данных, которые предотвращают утечку данных где-нибудь посередине между отправителем и получателем данных. Их пропускная способность может изменяться в широких пределах, но в действительности она меньше, чем можно было бы ожидать в отсутствие каких-либо экранов или преград вдоль линии передачи.
Протоколы TCP/IP, требуя гораздо меньше централизации и допуская локализованные представления, позволили избежать необходимости применения «универсальных туннелей», предусматривающих сопряжение различных сетей и протоколов, а также правила работы с ними. Но отчасти и сами размеры Интернета не позволяют по-другому проектировать системы туннелирования, а предоставляемых протоколами TCP/IP возможностей вполне достаточно для постепенного уменьшения трафика локальной сети. Протоколы работают вполне прилично, хотя иногда возникают проблемы с безопасностью.
Интернет, математической моделью которого является сильно связанный граф, требует к себе все большего внимания. Выяснилось, что в Интернете трудно обеспечить безопасность циркулирующих в нем данных. В этом смысле Интернет – источник неприятностей. Средства защиты данных, реализацию и использование которых могли позволить себе локальные сети и которые поэтому представляли ограниченный интерес, неожиданно оказались востребованными в глобальных сетях. Востребованные средства защиты данных стали чем-то вроде рискованного вложения капитала, подкармливающего царящее в мире сетей безумие. Ряд присущих протоколам TCP/IP элегантных решений, как, например, способы инициализации сессий, гибкие возможности выбора портов, концепция доверия к администраторам сети, по предположению присутствующая в любых хостах, непосредственно подключенных к сети, начали понемногу разваливаться. Существенно была ослаблена концепция глобальной адресации в результате широкого распространения идеи сетевой трансляции адресов NAT (Network Address Translation), которая скрывает произвольное число внутренних клиентов, располагаемых за сервером / межсетевым экраном сетевого уровня. Сетевую трансляцию адресов NAT можно рассматривать как реакцию на возникшую потребность в эффективном подключении и устранении пустой траты времени на бюрократические проволочки во время получения доступа к пространству IP-адресов.
И неожиданно опять всплыли старые проблемы взаимосвязей и соединений отдельных хостов. Как всегда, старые проблемы извлекли на свет их старые решения. В результате была повторно рождена идея туннелирования.
Но теперь это несколько иное решение, отличающееся от использованного ранее. Больше, чем что-либо другое, туннелирование в XXI веке имеет отношение к виртуализации отсутствия соединения при помощи разумного использования криптографии. В своем развитии идея туннелирования совершила нечто, похожее на рабочий ход маятника. Вначале глобальный сетевой доступ был сильно ограничен, затем он был разрешен повсеместно, потом требования к соединениям, обеспечивающим глобальный доступ, были ужесточены, и наконец дыры в системе защиты были залатаны с помощью систем, спроектированных с достаточно хорошим криптографическим обеспечением. Они были разработаны с помощью тех методов, которым авторы надеются научить читателя в этой главе. Эти методы несовершенны, и о них мало говорят. Иногда они построены на малоизвестных принципах, иногда не вполне пристойны и легитимны, но они работают. Задача авторов состоит в описании средств передачи и получения данных. Для этого в главе описано применение протокола SSH и принципа межсетевого шифрования.
Основные требования к системам туннелирования
Определение соответствующего метода туннелирования между сетями является проблемой, которая далека от тривиальной. Выбор подходящего решения среди широкого диапазона доступных протоколов, пакетов и возможных настроек может превратиться в чрезвычайно сложную задачу, отпугивающую своей запутанностью. Эта глава преследует цель описать некоторые самые современные механизмы, пригодные для установки соединения в любых сетевых архитектурах. Наравне с этим важно понять, что именно делает выбранное решение туннелирования жизнеспособным. Может быть реализовано неисчислимое число способов. Приведенные в главе подсказки помогут читателю узнать, что так или иначе должно быть реализовано в каждом конкретном случае.
Читать дальше
Конец ознакомительного отрывка
Купить книгу