Миграция VPN с IOS на ASA: переводите договорённость, а не CLI
Crypto map — это не tunnel-group ASA. Какие части договорённости переносятся, что нужно собрать заново и какие проверки доказывают, что сервис работает.
Конфигурация IOS, которая приходит как образец для миграции на ASA, описывает договорённость, завёрнутую в синтаксис одной платформы. Адреса партнёров, идентичности и защищённые диапазоны — это и есть договорённость. Цепочка из key ring, профиля и crypto map — это то, как IOS её выражает, тогда как ASA выражает тот же замысел через tunnel groups и их атрибуты. Копирование второй части не работает никогда, а копирование только первой оставляет работу наполовину сделанной.
Пройдите пять шагов ниже по порядку и остановитесь там, где две платформы описывают разные вещи, а не разные слова.
Шаг 1: отделите договорённость от синтаксиса
Запишите передачу как требования, с которыми согласны оба администратора. Четыре строки покрывают почти всё: где находится партнёр и какая сторона инициирует, как каждая сторона доказывает свою идентичность, какая защита приемлема и какие приложения должны выжить через туннель. Ни в одной из этих строк нет команды.
Храните исходный текст как доказательство, а не как инструкцию. Строка, которая есть на одной платформе и отсутствует на другой, остаётся различием синтаксиса, пока вы не проверите, можно ли выполнить то же требование иначе.
| Requirement | What must be agreed |
|---|---|
| Peer delivery | Outer endpoint, address family, NAT view, initiating side |
| Authentication | IKE version, expected identities, credential method and delivery |
| Data protection | Permitted suites, protected ranges, intentional translation |
| Application | Routes, return routes, resources beyond the tunnel |
Шаг 2: назовите объекты на каждой платформе
На IOS XE key ring IKEv2 питает профиль IKEv2, и этот профиль подключается через crypto map или профиль IPsec. На ASA tunnel group содержит профиль соединения и его атрибуты IPsec, а crypto map указывает на него, как описывает руководство по профилю соединения . Это разные графы объектов с разным наследованием, поэтому построчное сопоставление даёт конфигурацию, которая разбирается и не подключается.
Стройте целевые объекты из строк требований, а не из исходных строк. Если строки полны, целевая конфигурация — это проектное решение. Если нет, никакой перевод команд не восполнит недостающий замысел.
Шаг 3: переносите идентичность, а не только адреса
Идентичность — та часть, которая ломается тихо. Партнёр, аутентифицирующийся по адресу, ведёт себя иначе, чем тот, что аутентифицируется по субъекту сертификата или FQDN, и две платформы записывают это ожидание в разных местах. Сохраняйте задуманную идентичность и цепочку доверия вместо подмены общим секретом из-за того, что его проще проверить.
Держите общий секрет вне заметок для сравнения и тикетов. Запишите, кто им владеет и как он передаётся по одобренному каналу, и помните, что заглушка из примера в документации — не учётные данные заказчика.
Шаг 4: согласуйте защиту до переключения
Не переносите старые криптографические настройки только потому, что они есть в предоставленном тексте. Согласуйте пересечение наборов, которые оба развёрнутых партнёра поддерживают сейчас, и подтвердите его с другим администратором до окна изменений. Если это пересечение отличается от того, чего ждёт существующий партнёр, это согласованное изменение, а не локальная правка.
Запишите согласованный набор. Два администратора с разными воспоминаниями о телефонном звонке — вот как переключение даёт несовпадение на второй фазе.
Шаг 5: проверяйте сервис, а не синтаксис
Сначала проверьте действующие объекты цели, затем принятую ассоциацию, затем реальный поток приложения и его ответ. Ввод команды без ошибки доказывает синтаксис и ничего больше. Туннель, который поднимается и не несёт трафика, обычно означает, что защищённые диапазоны или обратный маршрут не совпадают с другой стороной, а это проблема строки требований, а не команды. Сравните защищённые диапазоны с обеих сторон, прежде чем снова трогать crypto map.
Запишите, что вы проверили, с какими адресами, с какой стороны. Эта запись превращает невнятное утверждение о том, что VPN поднят, в то, что другой администратор может проверить независимо.
Что вернуть
Отправьте матрицу требований, сводку целевой конфигурации и результаты проверки. Явно укажите, какие исходные настройки вы не перенесли и почему. Этот список полезнее переведённой конфигурации, потому что именно с него начнётся следующее расхождение.
Храните исходный текст вместе с тикетом. Он документирует, что просили, а матрица документирует, о чём договорились.