Private Link змяняе месца, куды прыходзіць злучэнне, а не тое, як злучэнне называецца. Для Azure SQL Database гэта розніца і ёсць увесь дызайн: лагічны сервер захоўвае сваё імя, а прыватная канцавая точка падае сеткавы запіс, у які гэтае імя развязаваецца. Замена імя IP-адрасам — гэта адзінае змяненне, якое ламае TLS, уліковыя даныя і інструменты адначасова. Два радкі злучэння могуць выглядаць эквівалентнымі і паводзіць сябе зусім па-рознаму.

Захавайце orders-db.database.windows.net і дайце кліенту прыватны адказ для яго.

Імя і адрас маюць розныя задачы

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

Метадычныя ўказанні Microsoft для Azure SQL патрабуюць ад кліентаў звычайнае імя сервера. Прамы IP, як і імя з прэфіксам privatelink, не з'яўляецца ўзаемазамяняльнай мэтай уваходу. Інструменты, якія прымаюць IP, прымуць яго, а потым праваляць на TLS або на аўтэнтыфікацыі, што хавае сапраўдную памылку. Гэтыя збоі чытаюцца як праблемы з уліковымі данымі, пакуль не паглядзіш на імя хоста ў паведамленні.

Што прыватная зона насамрэч змяняе

Прыватная зона DNS запісвае адзін адрас для сервера ўнутры прасторы імёнаў privatelink, і зона злучана з віртуальнай сеткай, якая павінна яе выкарыстоўваць. Развязанне перамяшчаецца; радок злучэння — не. Форма ніжэй — ілюстрацыя, а не запіс для ўстаўкі ў публічную зону.

Application name:        orders-db.database.windows.net
Private DNS zone:        privatelink.database.windows.net
Resolved private entry:  the approved private endpoint address

Падтрымлівайце гэты запіс і яго сувязь з зонай як інфраструктуру, з уласнікам і датай перагляду.

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

Кліентам па-за Azure патрэбны шлях у гэтую зону

VPN-кліент знаходзіцца па-за развязвальнікам Azure, таму прыватная зона павінна быць дасягальнай з гібрыднага шляху. Пераадрасатар Azure DNS або Azure DNS Private Resolver можа абслугоўваць запыты, якія прыходзяць праз гэтую сетку. Метадычныя ўказанні Microsoft — пераадрасоўваць адпаведную публічную зону службы праз такую схему, а не меркаваць, што кліенты запытваюць імя privatelink напрамкі. Кліенты, якія не могуць развязаць прыватны адказ, ціха вяртаюцца да публічнага.

Трымайце абсяг пераадрасацыі наўмысным, бо замена публічнай зоны, якая выкарыстоўваецца, ламае імёны, якіх няма ў замене.

Забяспечвайце ў парадку, які захоўвае ідэнтычнасць нязменнай

У крокаў асобныя ўласнікі: стварыць і ўзгадніць канцавую точку, забяспечыць маршрут VPN, інтэграваць прыватны DNS, затым наладзіць кліента са звычайным імем сервера. Выкананне DNS да маршруту дае тайм-аўты, якія выглядаюць як збоі DNS. Выкананне кліента апошнім трымае адну зменную ў руху за раз. У кожнага кроку ёсць назіраны вынік, таму ні адзін не даводзіцца правяраць здагадкай.

Падключаная іконка VPN сама па сабе не выбірае прыватнае прызначэнне.

Што прыватная канцавая точка не выключае

Стварэнне прыватнай канцавой точки не выключае аўтаматычна публічны доступ да лагічнага сервера. Гэта асобнае рашэнне аб разгортванні, і яно належыць пасля таго, як пацверджана праца мэтавых прыватных кліентаў. Захавайце шлях аднаўлення і ўлічыце праграмы, якія ўсё яшчэ карыстаюцца публічным уваходам. Выключэнне публічнага доступу першым — гэта спосаб, якім працуючая служба ператвараецца ў збой з ахайным аўдытарскім следам.

Праверце таксама, якую палітыку злучэнняў выкарыстоўвае сервер.

Redirect накіроўвае кліента на порт на вузле пасля першапачатковага злучэння з шлюзам, што змяняе тое, што павінна дазваляць сетка кліента. Proxy трымае трафік на шлюзе. Паспяховы TCP-рукапоціск на адным порце — гэта не ўвесь працэс уваходу.

Гэта Azure SQL Database, а не SQL Managed Instance, у якой свая мадэль злучэнняў і няма эквівалентнай гісторыі прыватнай канцавой точки. У абодвух выпадках трымайце тры рэчы падпісанымі асобна: імя, сеткавы запіс і ўліковыя даныя. Змяненне таго, куды ідзе злучэнне, не павінна ніколі змяняць тое, з якой службай, на думку кліента, ён размаўляе.

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