Cisco ASA til Azure VPN: prefikspar for trafikkveljaren
Skriv ASA-til-Azure-VPN som ein kontrakt: tilkoplingsmodell, eksakte prefikspar, verifisering av veljaren, deretter tilbakerulling. Ein runbook tilpassa utgivinga.
Tunnelen kjem opp, IKE ser sunn ut, og ingenting går gjennom. Det er den vanlege forma på eit ASA-til-Azure-veljarproblem, og difor skriv eg kontrakten før eg rører nokon av konsollane. Kontrakten er fire ting: objekta som identifiserer kvar peer, tilkoplingsmodellen, dei eksakte prefikspara og verifiseringa som beviser kvart par. Tar du feil her, vil kvar seinare kommando feilsøkje ein konfigurasjon du ikkje burde ha bygd. Denne runbooken er rekkjefølgja eg brukar, med kommandoane som viser kva objekt som faktisk er gale.
Skriv ned dei fire objekta før du konfigurerer
Start med ASA-utgivinga og -plattforma, det offentlege endepunktet, Azure VPN-gatewaytypen og -SKUen, og den lokale nettverksgatewayen som representerer sida di. Dei fire namna er vokabularet for alt som følgjer, og kvar av dei har ein annan eigar når noko bryt.
Viss to av dei framleis er gjettingar, stopp. Ei feil prefiksliste på den lokale nettverksgatewayen er ikkje eit tuningproblem.
Vel éin tilkoplingsmodell og slutt å blande malar
Ein crypto map-design og ein tunnel interface-design er ulike konfigurasjonar, og malen for den eine blir ikkje gyldig for den andre ved å redigere peer-adressa. Noter kva du byggjer før du limer inn noko, fordi avviket seinare dukkar opp som eit veljarproblem og ikkje som ein konfigurasjonsfeil. ASA-interoperabilitetsrettleiinga til Microsoft dekkjer begge mønstera og seier kva Azure-gatewaymodell kvar av dei føreset. Viss notata dine ikkje namngjev modellen, har du enno ikkje ein design.
Ein rutbasert Azure-gateway med policybaserte trafikkveljarar er eit spesifikt dokumentert alternativ, ikkje standarden. Viss designet ditt er avhengig av det, må designet seie det, fordi standard rutbasert veljarmodell oppfører seg annleis på Azure-sida.
Versjonsgrenser høyrer også heime i kontrakten. Ein gammal feltrapport om ei grense for krypteringsdomene er eit datapunkt om bestemte utgivingar, ikkje ein permanent eigenskap ved kvar ASA.
List opp prefikspara, ikkje aggregata
Skriv matrisa. A og B lokalt til X og Y i Azure er fire par, og kvart av dei treng dekning eller ei eksplisitt utelukking. Å slå A og B saman til eitt aggregat inkluderer også det som ligg mellom dei, og slik veks designet stille eit hol.
Sjekk kva peerane forhandla fram, ikkje kva du lagra. Lista over lokale og eksterne nettverk på ASAen er intensjon; CHILD SAane er resultatet.
Når eit par manglar, er rettinga vanlegvis ei access-list-linje eller ei veljaroppføring, ikkje ein ny tunnel.
Verifiser med kommandoar som namngjev objektet
På ASAen stadfest IKE-økta, deretter IPsec SAane, deretter veljarparet. Kvar kommando svarar på eit anna spørsmål, og å køyre berre den første er korleis «tunnelen er oppe» blir ein falsk konklusjon. Les utdata for peeren du faktisk konfigurerte, ikkje for SAen som tilfeldigvis er først i lista. Azure-sida svarar på dei same tre spørsmåla frå sitt eige ståstad.
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
Spør deretter Azure om tilkoplingstilstanden med az network vpn-connection show --name <connection> --query connectionStatus. Tilkopla med null byte i databanen er eit veljarproblem, ikkje eit rutingproblem.
Test éin tillaten flyt per par, inspiser kjeldeadressa som blir sett på den andre sida, og prøv éin ressurs som skal avvisast. Berre den siste testen beviser at grensa framleis finst.
Hald krypteringsomfanget skilt frå tilgangsløyvet
Ein brei veljar er ikkje løyve. Viss oppsettet som blir støtta er breiare enn applikasjonspolicyen, hald dei smale tenestene i brannmurreglane og lat krypteringsomfanget stå der det må.
Azure-arbeidslastruter og lokale returruter blir gjennomgått separat. BGP-annonseringar, statisk nettverksomfang og brukardefinerte ruter må alle skildre same bane, og ingen av dei kan fange peer-transporten rekursivt.
Tilbakerulling og beviset på at det verka
Ta vare på førre køyrande konfigurasjon før du endrar veljarar, og kjenn den eine kommandoen som set han tilbake. På ASAen tyder det ein lagra kopi og den tilhøyrande gjenopprettingsbanen, ikkje ei erindring om kva du redigerte. Skriv gjenopprettingskommandoen i endringssaka medan endringa framleis er hypotetisk. Køyr deretter dei same tre sjekkane på nytt: IKE-status, IPsec SA-par, éin tillaten flyt per par.
Viss eit par framleis feilar etter gjenopprettinga, var ikkje endringa årsaka, og du har nettopp spara deg ein andre driftsstans.