Pag-access sa VPN para sa service account: sertipiko o pinagsamang login
Ihambing ang sertipiko ng makina sa nakaimbak na password para sa walang-bantay na pag-access sa VPN, at ilagay ang tunay na hangganan ng pahintulot sa patakarang tumatakbo pagkatapos ng login.
Sakop ng dalawang disenyo ang halos lahat ng walang-bantay na setup ng VPN: pinagsamang login ng tao na itinatago sa isang script, o sertipiko ng makina na nakatali sa host. Nabigo sila sa magkaibang lugar, at mas mahalaga iyon kaysa bilis ng setup. Ang nakaimbak na password ay nasisira kapag binago ito ng may-ari o umalis siya; ang sertipiko ay nasisira kapag nag-expire ito o kapag muling itinayo ang host nang walang susi. Tatlong kundisyon ang nagpapasya kung aling gastos ang kaya mong dalhin, at wala sa mga disenyo ang naglilimita ng anuman hangga't hindi ginagawa iyon ng patakaran sa awtorisasyon.
Magsimula sa gawain, hindi sa account
Tinutukoy ng gawain ang hangganan: aling mga destinasyon, aling mga serbisyo, anong oras, gaano katagal tatakbo ang isang sesyon. Kalahati lamang ng hangganang iyon ang ruta ng tunnel. Ang gateway ang nagpapasya kung pinapayagan ang sesyon; ang resource sa likod nito ang nagpapasya kung ano ang magagawa ng sesyon. Isulat muna ang listahan, na may pinangalanang may-ari, dahil kailangang tuparin ito ng dalawang disenyo ng pagkakakilanlan.
Paghiwalayin ang authentication at authorization habang isinusulat ito. Sinasagot ng authentication kung sino ang kumokonekta; sinasagot ng authorization kung saan makakarating ang sesyon pagkatapos. Dinadala ng RADIUS ang ikalawang bahagi bilang mga attribute tulad ng Filter-Id, Framed-IP-Address, Session-Timeout at Class, at ikinakabit ito ng gateway kapag nagtagumpay ang login. Ang disenyong nagpapalit ng login at hinahayaang ganoon ang authorization ay walang nilimitahan.
Pinagsamang login ng tao: ang password ang nagiging hangganan
Ang muling paggamit ng account ng tao ang pinakamabilis na landas at ang pinakamabilis tumanda. Password ang kredensyal, kaya napupunta ito sa script, sa environment file at sa configuration ng scheduler, at bawat kopya ay kailangang i-rotate. Kapag binago ito ng may-ari sa isang Biyernes, nabigo ang trabaho sa susunod na pagtakbo at walang nanonood.
Ang MFA ang lugar kung saan karaniwang gumuguho ang disenyong ito. Hindi makasagot ang script sa push prompt, kaya inaalis ang account sa patakaran, at iyon mismo ang account na pipiliin ng umaatake. Dumarami ang mga exception, bypass para sa pinagkakatiwalaang lokasyon at exemption bawat account, at wala sa mga ito ang nakikita ng susunod na taong magbabasa ng mga setting ng tenant.
Ang attribution ang isa pang gastos. Ang bawat sesyon sa log ng gateway ay may parehong username, kaya hindi matukoy ang night sync mula sa trabaho ng taong sumulat nito, at ang pagbawi ng trabaho ay pagbawi sa taong iyon.
Sertipiko ng makina: pagkakakilanlang nakatali sa host
Binabago ng sertipiko ang tanong mula sa alam ng account tungo sa kung ano ang host. Sa EAP-TLS nagpapakita ang kliyente ng sertipiko at pinapatunayan ang pagmamay-ari ng katugmang pribadong susi; ipinapa-map ng policy server ang subject o computer account sa isang grupo at inilalapat ang patakaran ng grupong iyon. Walang prompt, walang pinagsamang lihim na nakaupo sa text file.
Ang hangganang nililikha nito ay mas makitid kaysa inaasahan ng mga tao. Pinatutunayan ng sertipiko ang host, hindi ang gawain, at sinumang may root o lokal na admin na karapatan ay magagamit ang susi sa host na iyon. Itago ang susi kung saan ito pinoprotektahan ng platform: hindi mailuluwas sa Windows certificate store, sinusuportahan ng TPM kung pinapayagan ng profile, o file na 0600 na pagmamay-ari ng root sa Linux. Ang pagka-compromise ng host ay pagkaka-compromise ng kredensyal.
Ang pag-expire ang paulit-ulit na kabiguan. Ang sertipikong mag-e-expire sa isang Linggo ay nagpapahinto sa trabaho sa Linggo, at karaniwang nag-uulat ang gateway ng pangkalahatang error sa authentication sa halip na pangalanan ang petsa. Suriin ang mga petsa mula sa host ng trabaho bilang bahagi ng runbook:
openssl x509 -in client.pem -noout -subject -issuer -dates
ipsec listcerts
Kailangan ng pagbawi ng landas na sinusuri ng gateway. Binabasa ng OpenVPN ang CRL sa pamamagitan ng crl-verify na opsyon, at umaasa ang strongSwan sa CRL o OCSP ayon sa kung paano itinayo ang profile ng koneksyon. Kung wala sa dalawa ang nakakabit, ang pag-alis ng host ay nangangahulugang paghihintay na mag-expire ang sertipiko.
Tatlong kundisyong nagpapasya sa pagitan nila
Gawin ang paghahambing laban sa platform na mayroon ka, hindi laban sa isang reference na disenyo.
Unang kundisyon: kaya bang awtorisahin ng gateway ang pagkakakilanlan ng makina? Kung ipinapa-map lamang nito ang RADIUS username sa isang directory user, pinatutunayan ng sertipiko ang host at pagkatapos ay natigil sa authorization. Ikalawang kundisyon: kailangan ba ng trabaho ng access sa resource na tanging user account ang nagdadala, tulad ng naka-map na share o lisensya bawat upuan? Kung gayon, hindi makapapalit ang pagkakakilanlan ng makina, at ang tapat na sagot ay dedikadong user account na may limitadong patakaran. Ikatlong kundisyon: sino ang makapag-rotate ng kredensyal nang walang tao sa loop? Ginagawang mura ng automated enrollment ang pagpapanatili ng mga sertipiko; ang password na alam ng isang tao ay hindi.
| Constraint | Machine certificate | Dedicated user account with stored secret |
|---|---|---|
| Unattended login | Private key proof, no prompt | Only if the account is exempted from MFA |
| Resource expects a user identity | Works only when the resource accepts computer accounts | Matches the access a person would have |
| Rotation | Re-enrollment, often automated | Secret change plus redeploy of every copy |
| Revocation speed | Tied to CRL or OCSP refresh | Disable the account, immediate |
Basahin ang talahanayan bilang listahan ng gastos, hindi bilang ranking. Ang hanay ng nakaimbak na lihim ay nananalo sa bilis ng pagbawi at sa pagiging compatible sa mga resource na umuunawa lamang sa user account; ang hanay ng sertipiko ay nananalo sa rotation at sa hindi pagpapahina ng MFA para gumana ang script.
Ilagay ang hangganan sa patakaran, pagkatapos ng authentication
Anuman ang pagkakakilanlang piliin mo, ang hangganan ng pahintulot ay pag-aari ng patakarang tumatakbo pagkatapos ng authentication. Sa NPS, sinusuri ang mga network policy nang sunud-sunod at ang unang patakarang tumutugma sa lahat ng kundisyon ang naglalapat ng mga setting nito, kaya ang malawak na patakarang inilagay sa itaas ng makitid ang nagpapasya sa resulta, anuman ang ipakita ng kliyente. Dinodokumento ng Microsoft ang modelo ng kundisyon at setting sa pangkalahatang-tanaw ng NPS policy.
Bigyan ang trabaho ng sariling grupo o kundisyon ng patakaran, batay sa isang bagay na dinadala ng pagkakakilanlan ng makina: template ng sertipiko, identifier ng tumatawag na istasyon, o address mula sa dedikadong pool. Pagkatapos ay hangganan ang sesyon gamit ang mga attribute: Filter-Id para sa papel na ipinapa-map ng gateway, maikling Session-Timeout upang muling mag-authenticate ang natigil na trabaho sa halip na panatilihin ang sesyon nang ilang araw, at Framed-IP-Address mula sa pool na pinoprotektahan mo ng firewall sa kabilang panig. Nananatiling hiwalay ang authorization ng application: ang tunnel patungo sa database server ay hindi pahintulot na magbasa ng talahanayan sa loob nito.
Tiyakin ang mga pagtanggi, pagkatapos ay planuhin ang pag-alis
Ang pag-access na gumagana ay walang pinapatunayan tungkol sa pinakamaliit na pribilehiyo. Sa halip, subukan ang mga pagtanggi: kumonekta gamit ang pagkakakilanlan ng trabaho at abutin ang isang destinasyong wala sa listahan, magbukas ng pangalawang sabay na sesyon kung isa lamang ang dapat payagan ng gateway, at ulitin ang login pagkatapos bawiin ang kredensyal.
Pagkatapos ay tiyakin ang parehong sesyon sa dalawang lugar. Ipinapakita ng log ng gateway ang pagkakakilanlang nag-authenticate; ipinapakita ng log ng policy server kung aling patakaran ang tumugma at aling mga attribute ang ibinalik. Sa OpenVPN, itinatala ng server ang common name ng sertipiko, at ipinapasa ng ipsec statusall sa strongSwan ang naitatag na tunnel kasama ang pagkakakilanlang ginagamit. Kung hindi magkasundo ang dalawang log tungkol sa pagkakakilanlan, tumutugma ang patakaran sa ibang bagay kaysa sa inaakala mo.
Bahagi ng disenyo ang pag-alis, hindi ng cleanup sprint. Isulat ang lahat ng dapat burahin (sertipiko o account, membership sa grupo, network policy, entry sa pool, firewall rule sa target) at takbuhin ito nang isang beses habang madaling itayong muli ang trabaho.
Kung nagsisimula ka ngayon, magtrabaho sa ganitong pagkakasunod-sunod: isulat ang listahan ng resource, piliin ang pagkakakilanlan gamit ang tatlong kundisyon, ilagay ang hangganan sa patakaran, at magsanay ng isang pagtanggi bago maging live ang trabaho.