Тунелът се вдига, IKE изглежда здрав, а през него нищо не минава. Това е обичайната форма на проблем със селекторите ASA към Azure и затова пиша договора, преди да докосна която и да е от двете конзоли. Договорът е четири неща: обектите, които идентифицират всеки партньор, моделът на свързване, точните двойки префикси и проверката, която доказва всяка двойка. Сбъркайте тези и всяка следваща команда дебъгва конфигурация, която не е трябвало да изграждате. Този runbook е редът, който използвам, заедно с командите, които показват кой обект всъщност е грешен.

Запишете четирите обекта, преди да конфигурирате

Започнете с изданието и платформата на ASA, публичната крайна точка, типа и SKU на Azure VPN gateway и локалния мрежов шлюз, който представлява вашата страна. Тези четири имена са речникът за всичко следващо и всяко има различен собственик, когато нещо се счупи.

Ако две от тях все още са догадки, спрете. Грешен списък с префикси в локалния мрежов шлюз не е проблем с настройката.

Изберете един модел на свързване и спрете да смесвате шаблони

Дизайнът с crypto map и дизайнът с tunnel interface са различни конфигурации и шаблонът за единия не става валиден за другия чрез редактиране на адреса на партньора. Отбележете кой изграждате, преди да поставите нещо, защото несъответствието по-късно се проявява като проблем със селекторите, а не като конфигурационна грешка. Ръководството на Microsoft за съвместимост на ASA покрива и двата модела и посочва кой модел на Azure gateway предполага всеки. Ако бележките ви не назовават модела, още нямате дизайн.

Базиран на маршрути Azure gateway със селектори на трафик, базирани на политики, е конкретна документирана опция, а не по подразбиране. Ако дизайнът ви зависи от нея, дизайнът трябва да го казва, защото моделът на селекторите по подразбиране, базиран на маршрути, се държи различно от страната на Azure.

Ограниченията на версиите също принадлежат на договора. Стар полеви доклад за таван на домейните за криптиране е данна за конкретни издания, а не постоянно свойство на всяка ASA.

Избройте двойките префикси, не агрегатите

Напишете матрицата. Локални A и B към Azure X и Y са четири двойки и всяка от тях се нуждае или от покритие, или от изрично изключване. Събирането на A и B в един агрегат включва и всичко между тях и така дизайнът тихо се сдобива с дупка.

Проверете за какво са се договорили партньорите, а не какво сте запазили. Списъкът с локални и отдалечени мрежи на ASA е намерение; CHILD SA са резултатът.

Когато липсва двойка, поправката обикновено е ред в access-list или запис в селектора, а не нов тунел.

Проверявайте с команди, които назовават обекта

На ASA потвърдете IKE сесията, после IPsec SA, после двойките селектори. Всяка команда отговаря на различен въпрос и пускането само на първата е начинът, по който твърдението, че тунелът е вдигнат, се превръща в грешен извод. Четете изхода за партньора, който наистина сте конфигурирали, а не за онзи SA, който случайно е пръв в списъка. Страната на Azure отговаря на същите три въпроса от своя гледна точка.

show crypto ikev2 sa detailed
show crypto ipsec sa peer 203.0.113.10
show run access-list AZURE-SELECTORS
packet-tracer input inside icmp 10.1.10.10 8 0 10.2.20.20 detailed

След това попитайте Azure за състоянието на връзката с az network vpn-connection show --name <connection> --query connectionStatus. Connected с нула байта по пътя на данните е проблем със селекторите, а не проблем с маршрутизацията.

Тествайте един разрешен поток на двойка, прегледайте адреса на източника, видим от другата страна, и опитайте един ресурс, който трябва да бъде отказан. Този последен тест е единственият, който доказва, че границата още съществува.

Дръжте обхвата на криптиране отделно от разрешението за достъп

Широкият селектор не е разрешение. Ако поддържаното оформление е по-широко от политиката на приложението, запазете тесните услуги в правилата на защитната стена и оставете обхвата на криптиране там, където трябва да бъде.

Маршрутите на работните натоварвания в Azure и обратните маршрути в локалната мрежа се преглеждат отделно. BGP анонсите, статичният обхват на мрежата и дефинираните от потребителя маршрути трябва да описват един и същ път и никой от тях не може рекурсивно да улавя транспорта на партньора.

Връщане назад и доказателството, че е проработило

Запазете предишната работеща конфигурация, преди да промените селекторите, и знайте единствената команда, която я връща. На ASA това означава запазено копие и съответния път за възстановяване, а не спомен за това, което сте редактирали. Напишете командата за възстановяване в заявката за промяна, докато промяната е още хипотетична. След това изпълнете отново същите три проверки: състояние на IKE, двойки IPsec SA, един разрешен поток на двойка.

Ако двойка все още се проваля след възстановяването, промяната не е била причината и току-що се спасихте от втори срив.

Подобни статии