Вторичное VPN-подключение относится к одному профилю Wi-Fi, а не ко всем
Вторичное VPN-подключение — это UUID, привязанный к одному базовому подключению. Спланируйте, как его унаследуют будущие профили Wi-Fi и что произойдёт, когда этот UUID заменят.
Настройте VPN как вторичное подключение домашней сети Wi-Fi, и всё работает, пока ноутбук не подключится к другой точке доступа и туннель не останется опущенным. Новое подключение — это отдельный объект конфигурации с собственным UUID, и у него нет причин знать о связке, которую вы создали для его предшественника. Ничего не сломалось; связи просто никогда не существовало.
Справочник подключений NetworkManager определяет вторичные как UUID, которые активируются вместе с определённым базовым подключением. Там также отмечено, что обычные профили VPN не реализуют автоматическую активацию так, как это делают базовые подключения. Оба утверждения ведут к одному выводу: связь задаётся для каждого профиля, и кто-то должен создать её для каждого нового.
Что такое вторичное подключение на самом деле
Базовое подключение имеет идентификатор, UUID и список вторичных. Когда оно активируется, менеджер также активирует эти вторичные по порядку, и именно так VPN следует за сетью Wi-Fi без ручного щелчка. Связь хранится на базовом подключении, записанная как строки UUID, а не как имена. Этот выбор представления не случаен; именно он позволяет связи пережить переименование.
Эта деталь с именами важнее, чем кажется. Переименование профиля VPN оставляет его UUID нетронутым, поэтому существующие связи продолжают работать. Удаление старого профиля и импорт нового создают новый UUID, и каждая связь, указывавшая на старый, теперь не указывает ни на что.
Просмотрите существующий список, прежде чем добавлять. Домашний профиль с одним вторичным — это не правило, подходящее любому SSID; это одна строка в одном объекте, и к ней не обратятся, когда активируется другое базовое подключение.
Разместите связь там, где создаются профили
На личной машине сделайте привязку нужного вторичного частью добавления каждого разрешённого профиля Wi-Fi. Это привычка, а не функция, но привычка, которая даёт согласованное состояние, и она требует одной команды или двух визитов в диалог на каждую сеть. Держите короткую заметку о том, какие сети должны нести туннель, потому что список и есть политика.
На управляемых устройствах пусть процесс подготовки создаёт запись Wi-Fi и её VPN-связь за один шаг, и применяйте тот же подход к разрешённым профилям, которые уже существуют. Распространение одного лишь профиля VPN оставляет базовые отношения неопределёнными, и так парк получает туннель, которым пользуется только половина ноутбуков.
Там, где пользователи всё ещё могут создавать профили вне управляемого пути, явно решите, что происходит с этими записями. Предположение, что они унаследуют связь, — не политика; это надежда с сопутствующими затратами на поддержку.
Планируйте изменение идентификатора VPN
Источнику подготовки нужен UUID нужного VPN, а не отображаемое имя, которое кто-то угадал. Когда обслуживание заменяет этот VPN свежеимпортированным объектом, обновите шаблон подготовки и затронутые существующие связи в одном изменении. Переименование — не замена, и отношение к ним как к равнозначным — это то, из-за чего работающее развёртывание ломается неделю спустя.
Храните UUID рядом с причиной его существования. Будущий инженер, нашедший голый UUID в списке вторичных, не сможет сказать, актуален ли он, и, скорее всего, удалит его при уборке.
Активация — не принуждение
Запрос вторичного происходит в момент активации. Он не блокирует приложения в интервале до завершения аутентификации и не останавливает трафик после сбоя туннеля. Это разные свойства, обеспечиваемые разными механизмами, и их смешение создаёт проект, который выглядит строгим в профиле, а на практике снисходителен.
Блокировка прямого трафика — отдельная функция со своей конфигурацией и своими режимами отказа, и она должна учитывать трафик, который должен достичь сети до того, как появится хоть какой-то туннель: пленённые порталы, страницы входа, сама конечная точка. Политика блокировки, которую нельзя выполнить до аутентификации, запирает машину вне именно той сети, которая ей нужна.
Внесите это различие в инструкции, которые пользователи действительно читают. Новая сеть Wi-Fi может запросить туннель; принуждение решает, может ли что-то выйти, когда подключиться не удаётся. Пользователи, которым рассказали только первую половину, сообщат, что проект сломан.
Тестируйте с действительно новым профилем
Используйте одобренную тестовую сеть и только что созданный базовый профиль, а не домашнюю запись, которая уже работает. Наблюдайте активацию базового подключения, запрошенный UUID вторичного и любое приглашение аутентификации по порядку и отмечайте, на каком этапе всё застревает, когда застревает. Секретный агент, становящийся доступным после входа в систему, не обязан присутствовать в каждом контексте запуска, поэтому перезагрузка входит в план тестирования. Затем проверьте нужный ресурс и путь отказа: поднимается ли туннель раньше, чем он понадобится приложению, и что происходит с этим приложением, когда аутентификация не удаётся?
Затем проверьте нужный ресурс и путь отказа: поднимается ли туннель раньше, чем он понадобится приложению, и что происходит с этим приложением, когда туннель не может пройти аутентификацию? Эти два наблюдения и есть критерии приёмки, и ни одно из них не видно в самом профиле.