Два карыстальнікі аддаленага доступу за адным і тым жа ASA могуць адпраўляць трафік праз адзін і той жа знешні інтэрфейс і атрымліваць цалкам рознае абыходжанне. Адзін ідзе на публічны вэб-сайт, таму пакету патрэбна трансляцыя крыніцы і інтэрнэт-маршрут. Другі ідзе на сервер за тунелем паміж сайтамі, які таксама заканчваецца на гэтым інтэрфейсе, таму пакету патрэбна ідэнтычнасць, адпаведны селектар тунеля і зваротны шлях да пула кліентаў. Дазвол на адзін інтэрфейс — гэта перадумова для абодвух і рашэнне ні для аднаго.

Два плячы, адзін інтэрфейс

Вызначце, якое плячо вы будуеце, перш чым уводзіць правіла NAT, бо правілы не ўзаемазамяняльныя. Плячо A — кліент да інтэрнэту: адрас пула ўваходзіць, трансляваны публічны адрас выходзіць, вяртанне праз той жа інтэрфейс. Плячо B — кліент да прыватнага прэфікса на далёкім баку іншага IPsec-партнёра: адрас пула захоўваецца, зноў шыфруецца і дастаўляецца партнёру, які павінен ведаць, як адказаць пулу.

Што абодвум трэба перш за ўсё — гэта дазвол на адзін інтэрфейс. Без яго ASA адмаўляецца перасылаць пакет праз інтэрфейс, на які ён прыйшоў, і збой выглядае як праблема маршрутызацыі, а не як праблема палітыкі:

same-security-traffic permit intra-interface

Гэты адзіны радок дазваляе схему перасылкі, як апісвае даведнік па NAT у ASA для шляхоў праз адзін інтэрфейс. Ён не дадае маршрут кліента, не аўтарызуе рэсурс, не трансліруе адрас і не ўзгадняе селектар IPsec, таму чакайце дадання яшчэ трох ці чатырох рэчаў пасля яго і не чытайце яго прыняцце як прагрэс.

Плячо A: кліент хоча інтэрнэт

Для выхаду ў інтэрнэт адрас пула павінен перастаць быць прыватным, перш чым пакет пакіне прыладу. У звычайным дызайне PAT правіла трансліруе пул у адрас знешняга інтэрфейса, а стан вяртання аднаўляе кліенцкі паток:

object network VPN_POOL
 subnet 10.80.0.0 255.255.255.0
nat (outside,outside) after-auto source dynamic VPN_POOL interface route-lookup

Затым пацвердзіце, што кліент сапраўды папрасіў ASA несці гэты трафік. Выключэнне з раздзеленага тунеля адпраўляе публічны пункт прызначэння праз уласнае злучэнне тэлефона, якое зусім не дасягае ASA, і ніякае правіла NAT не выправіць пакет, які ніколі не быў адпраўлены. Параўнайце спіс раздзеленага тунеля групавой палітыкі з пунктам прызначэння, які вы тэстуеце.

Астатняе ў плячы звычайнае: прыдатны маршрут па змаўчанні або канкрэтны маршрут з знешняга інтэрфейса, палітыка доступу, якая дазваляе паток, і DNS, які апрацоўваецца згодна з абранай вамі палітыкай рэзалвера. Дадайце route-lookup тут па той жа прычыне, што і ніжэй, бо інтэрфейсы ўваходу і выхаду аднолькавыя.

Плячо B: кліент хоча прыватны сайт

Гэтае плячо збоіць у большай колькасці месцаў, таму пішыце яго па парадку. Спачатку маршрут кліента: прэфікс прызначэння павінен быць у спісе раздзеленага тунеля, інакш кліент не змесціць яго ў тунель. Па-другое, селектар тунеля: крыпта-ACL паміж сайтамі павінен ахопліваць адрас пула да далёкага прэфікса, а не толькі лакальную LAN да далёкага прэфікса. Па-трэцяе, ідэнтычнасць, каб адрас пула не трансліраваўся ў інтэрнэт-PAT па дарозе.

nat (outside,outside) source static VPN_POOL VPN_POOL
    destination static SITE_PREFIX SITE_PREFIX route-lookup

Далёкі бок — гэта частка, якую забываюць тэставаць. Партнёру патрэбен маршрут назад да пула і селектар, які яго ўключае, і яго ўласная палітыка павінна дазваляць адрасы крыніцы, якія ён убачыць. Калі сайт выкарыстоўваецца праз трансляваны выгляд, гэта дапушчальны дызайн, але тады абодва партнёры, абодва селектары і абодва табліцы маршрутаў павінны ўзгадніць трансляваныя адрасы.

Праверце таксама парадак правілаў. Шырокае правіла PAT над правілам ідэнтычнасці трансліруе прыватны абмен яшчэ да таго, як правіла ідэнтычнасці будзе ацэнена, і сімптом — сайтавы тунель без адпаведнага SA, а не памылка NAT.

Тэст, які кажа вам, якое плячо вы пабудавалі

Выкарыстоўвайце ўласную ацэнку шляху ASA замест таго, каб чытаць канфігурацыю і спадзявацца. packet-tracer input outside tcp 10.80.0.25 40000 203.0.113.10 443 detailed паказвае рашэнне NAT, маршрут і вынік ACL для аднаго патоку; паўтарыце з прыватным пунктам прызначэння. Калі фаза NAT перапісвае паток ад прыватнага да прыватнага, вы пабудавалі плячо A для пакета, якому было патрэбна плячо B.

Яшчэ дзве каманды закрываюць прабел. show nat detail друкуе парадак правілаў, якім ішоў packet-tracer, і show crypto ipsec sa паказвае, ці існуе селектар для пары, якую вы чакаеце. Адсутны SA — гэта пытанне канфігурацыі селектара або партнёра, а не тое, што можа выправіць правіла NAT.

Праверце кожнае плячо трафікам, якому яно служыць

Прыміце плячо A звычайным публічным запытам ад кліента, а плячо B — запытам да прыватнага рэсурсу, які сапраўды існуе. Затым паўтарыце кожнае з адхіленым рэсурсам, бо «дазволена» і «дазволена палітыкай доступу» — не аднолькавыя доказы, а ping, які выходзіць з хаба, не правярае ні адзін з кліенцкіх шляхоў.

Трымайце два запісы тэстаў асобна ў заяўцы: адрас крыніцы, пункт прызначэння, правіла NAT, якое супала, і вынік. Калі наступная справаздача скажа «VPN зламаны», гэтая пара за хвіліну скажа вам, якое плячо прасела, і адказ звычайна — маршрут або селектар, а не радок аднаго інтэрфейсу, які ўсе падазраюць першым.

Падобныя артыкулы