Результати пошуку видають вам файл .pbk, назви ключів виглядають знайомо, і очевидний крок — вважати його переносною схемою для будь-якого VPN Windows. Але це не так. Формат належить власникові, і той самий ключ означає різне залежно від того, який власник його записав. Саме читання області дії спочатку не дає вправі з документації перетворитися на непідтримуване редагування.

Чотири власники, чотири різні читачі

Чотири різні власники пишуть схожі файли. Власне з'єднання окремого користувача потрапляє до телефонної книги поточного користувача, а з'єднання для всіх користувачів — до сховища рівня машини, яке може читати будь-який обліковий запис на вузлі. Сервер RRAS зберігає конфігурацію з'єднання на вимогу для своєї ролі маршрутизації, а клієнт третьої сторони може зберігати власний формат, який лише ділить розширення. Одне розширення, чотири читачі, чотири набори правил.

Збіжне відображуване ім'я не робить два такі записи одним, а копіювання ключа між ними припускає, що адміністратор поважатиме те, чого він ніколи не документував. Власник також вирішує, хто може змінювати файл: профіль окремого користувача — це вибір користувача, профіль рівня машини — адміністративне рішення, а запис з'єднання на вимогу на сервері — конфігурація маршрутизації під власним контролем змін. Тому помилка власності — це проблема прав, перш ніж вона стане проблемою формату.

Визначайте власника за компонентом, який керує з'єднанням, а не за самим файлом. Файл — це артефакт; керівний компонент визначає, які ключі він читає і коли. Спочатку прочитати артефакт, а потім адміністратора — це шлях, яким люди починають редагувати поле, яке ніщо не опитує.

Де опублікований формат перестає описувати ваш файл

У протоколі керування RRAS телефонна книга — це звичайний текст, який пише клієнт керування і читає служба маршрутизації, тому специфікація MS-RRASM описує параметри з'єднання на вимогу для сервера, а не для профілю робочого столу. Структура — це частина, яку плоске читання знищує. Запис може містити кілька блоків носія, кожен — блоки пристроїв, а ті — блоки окремих номерів. Тому той самий ключ може з'явитися в кількох місцях з різним значенням.

Читайте ключ разом із його розділом і примітками до версії та не переносьте значення з однойменної позначки в інтерфейсі робочого столу. Знаходження знайомих ключів у документі не доводить, що він охоплює кожне поле незв'язаного власного профілю. Правила розділів також не є дозволом переписати телефонну книгу робочого столу у форматі сервера.

OwnerWhat reads the fileWhat a key means there
Per-user native connectionThe user's own connection managerA property of that user profile
All-user native connectionThe machine-wide connection storeA property shared by everyone on the host
RRAS demand-dialThe RRAS service, using the documented hierarchyA field inside a media, device or number section
Third-party clientThat vendor's own parserWhatever that vendor documents, if anything

Таблиця — це допомога для читання, а не специфікація: вона каже, до якого читача звертатися, а читач каже, що означає поле. Коли цей читач — сторонній аналізатор, чесна відповідь може бути такою: ніщо публічне взагалі не документує це поле.

Запитайте Windows, а не файл

Для власного з'єднання просіть у Windows профіль, а не читайте файл, бо типізовані властивості — це документована поверхня і єдине, що змінює підтримувана зміна. Дві команди нижче читають два власні сховища окремо. Якщо профілю немає в жодному з двох сховищ, клієнт, який ним керує, не використовує власний механізм, і жоден власний cmdlet його не опише.

Get-VpnConnection -Name 'Field Ops'
Get-VpnConnection -AllUserConnection | Select-Object Name, ServerAddress, TunnelType

Для розгортання, а не для перевірки, документований шлях — це кероване налаштування профілю з іменованою схемою, а не числове редагування всередині текстового або двійкового блоку. Визначення профілю описує підтримувані налаштування; воно не надає сертифікати й закриті ключі, від яких залежить профіль. Реєстрація — це окремий процес із власними повноваженнями, і розуміння ключа телефонної книги ніколи не розповсюджувало закритий ключ. Плануйте два шляхи окремо, інакше перше розгортання сертифікатів стане другим інцидентом.

Одна властивість, потім життєвий цикл навколо неї

Збережене значення — не застосоване значення. Після схваленої зміни відкрийте нове з'єднання й перевірте маршрути, які встановлює профіль, політику розв'язувача, яку він успадковує, і операцію, яку він мав уможливити. Повторне використання вже піднятої сесії перевіряє старі налаштування й дає хибнонегативний результат.

Скопіюйте файл убік перед будь-якою роботою з необробленим файлом, бо телефонна книга з кількома записами — це спільний артефакт, а точкове редагування, яке переписує весь файл, має більший радіус впливу, ніж сама зміна. Залишайте незв'язані записи недоторканими й зберігайте початкову захищену конфігурацію, доки нова не буде перевірена. Якщо обов'язкове поле не документоване для власника й випуску, які у вас справді є, запишіть це як відкрите питання підтримки. Вигадування кодування з файлу іншої машини — це шлях, яким робочий профіль перетворюється на проєкт зневадження без жодної точки відліку.

Дисципліна однакова на кожному кроці: назвіть власника, назвіть розділ, потім назвіть підтримувану операцію. Усе інше — здогад із приклеєною цитатою.

Схожі статті