Du demandoj decidas, kie apartenas privata ŝlosilo de VPN: ĉu la ŝlosila materialo povas esti kopiita el la gastiganto, kaj ĉu procezo povas uzi ĝin sen iu ĉe la klavaro. La merkatika etikedo de konservejo respondas al neniu. Tunela demono, kiu devas reveni post restartiĝo, bezonas senhoman uzon, kio ekskludas ĉion ligitan al PIN tajpita de homo.

Elektu inter kopiado kaj uzo

Kopiado kaj uzo malsukcesas malsame, do traktu ilin kiel du postulojn, ne unu. Atakanto, kiu povas legi la bajtojn de la ŝlosilo, portas la identecon al alia gastiganto, kaj la origina maŝino tion ne rimarkas. Atakanto, kiu ne povas legi la bajtojn sed atingas la subskriban procezon, ankoraŭ aŭtentigas sin dum tiu aliro daŭras.

Ŝlosilo en dosiero estas triviale kopiebla, kio ankaŭ igas ĝin la plej facila por sekurkopii kaj restarigi. Softvara ŝlosilkonservejo ŝanĝas la API-on, ne la limon: la provizanto rifuzas siajn proprajn eksportajn vokojn, sed la sama administranto-kunteksto, kiu instalis la ŝlosilon, kutime havas aliajn vojojn al la materialo. Neeksportebleco ĉe softvara provizanto estas aserto pri subtenataj operacioj, ne pruvo de aparatara muro. Konsideru ĝin rapidobremso kontraŭ hazarda kopiado, ne protekto kontraŭ iu, kiu jam havas vian seancon.

TPM aŭ inteligenta karto plenumas la subskriban operacion ene de aparataro kaj redonas nur la rezulton. Tio fermas la kopiadan vojon kaj lasas la uzvojon malfermita al ĉio, kio povas peti subskribon.

Agordi la konservejon al la tunela demono

La demono limigas tion pli ol la sekureca politiko. WireGuard prenas base64-an privatan ŝlosilon el dosiero aŭ el enigo de wg set kaj havas neniun vojon al atestila konservejo, do TPM-subtenata interfaca ŝlosilo ne estas konsiderata. OpenVPN kompilita kontraŭ OpenSSL 3 povas ŝargi ŝlosilon per provizanta URI, kaj strongSwan liveras TPM-kromaĵon apud PKCS#11-subteno, sed ambaŭ dependas de tio, kiel kompiliĝis via pakaĵo.

Demono, kiu ne atingas la elektitan konservejon, faras la aparataran limon ornamaĵo. Iu eksportas la ŝlosilon unufoje, lasas ĝin en dosiero, kaj la resto de la dezajno silente funkcias sur tiu kopio.

Renovigo estas la alia duono de la kongruo, kaj tie plej multaj dezajnoj disfalas. Konservejo, kiu funkcias ĉe la unua registriĝo sed postulas konzolan ensaluton por ĉiu reeldono, estas preteririta la unuan fojon, kiam atestilo eksvalidiĝas en maloportuna horo. Testu la reeldonan vojon dum la nuna ŝlosilo ankoraŭ havas monatojn.

Inventaru la ŝlosilon antaŭ movi ĝin

Notu, kio estas la ŝlosilo, antaŭ ol ŝanĝi, kie ĝi loĝas, ĉar migrado, kiu perdas subject alternative names, rompas la tunelon tiel, ke ĝi legeblas kiel enkursiga fuŝo. Elprenu la atestilon, konfirmu, ke la privata ŝlosilo legeblas tie, kie la demono atendas ĝin, kaj kontrolu, ke la paro vere kongruas.

openssl x509 -in vpn.crt -noout -subject -ext subjectAltName
openssl pkey -in vpn.key -check -noout
openssl x509 -in vpn.crt -noout -pubkey | openssl sha256
openssl pkey -in vpn.key -pubout | openssl sha256

La lastaj du resumoj devas esti identaj. Se ne, la demono finas la agordon kaj poste malsukcesas ĉe ĉiu provo kun atestila aŭ subskriba eraro, kiu montras nenie proksime al la vera kaŭzo. La WireGuard-ekvivalento estas pli mallonga, ĉar la publika ŝlosilo deriviĝas rekte el la privata: wg pubkey < /etc/wireguard/wg0.key devas presi la samtulan ŝlosilon, kiun via servilo jam konservas.

Permesoj apartenas al la sama inventaro. stat -c '%a %U:%G' /etc/wireguard/wg0.key devus redoni 600 root:root, kaj io ajn legebla de grupo aŭ de la mondo signifas, ke la ŝlosilo jam estis disponebla al procezoj, kiujn vi neniam intencis.

Kontroli la konservejon kaj la uzvojon

La kontrolo havas tri partojn, kaj la tria estas tiu, kiu estas preterlasita. Konfirmu, ke la ŝlosilo ekzistas en la elektita konservejo, konfirmu, ke la demono ŝargis tiun ŝlosilon kaj ne restintan kopion, kaj poste konfirmu, ke ĝi ankoraŭ startas, kiam la eksportaĵo malaperis.

certutil -store -user My
certutil -csp "Microsoft Platform Crypto Provider" -key -user
certutil -verifykeys -user My
ipsec listcerts

En Windows la unua komando listigas la personan konservejon kaj presas la ŝlosilprovizanton apud ĉiu ero, kaj tie aperas atestilo, kiu ŝajnas aparatare subtenata sed sidas en la softvara provizanto. La dua listigas ŝlosilojn tenatajn de la platforma kriptoprovizanto, do VPN-identeco mankanta tie dum ĝia atestilo ĉeestas signifas, ke la privata duono loĝas aliloke. Sur Linux-pordego, ipsec listcerts raportas, kion ŝargis strongSwan, inkluzive de ŝlosiloj venintaj el la TPM-kromaĵo. Komparu fingrospurojn aŭ haketojn de publikaj ŝlosiloj kun la inventaro anstataŭ fidi la nombron de eroj.

La negativa testo estas tiu, kiu pruvas la dezajnon. Movu la eksportitan ŝlosilon ekster la agordan dosierujon de la demono, restartu la servon kaj legu en la protokolo, kiun identecon ĝi prezentas. Tunelo, kiu tamen leviĝas, uzas la konservejon; malsukcesa starto signifas, ke la dezajno vere kuris sur kopio.

Skribi la renovigon kaj la restarigon

Restarigo tre malsamas inter la du familioj, kaj tiu diferenco apartenas al la dezajna noto, ne al okaza alvoko. Dosiera ŝlosilo povas esti sekurkopiita ĉifrite kaj restarigita, do malsukcesa migrado estas renverseble. Neeksportebla ŝlosilo tute ne povas esti sekurkopiita, kio faras reeldonon kaj reregistriĝon la solan restarigan vojon, kiam la aparato mortas.

Kontrolu la eksvalidiĝon antaŭ ol ĝi fariĝos interrompo: openssl x509 -in vpn.crt -noout -checkend 2592000 finiĝas per ne-nula kodo, kiam la atestilo eksvalidiĝos ene de tridek tagoj, do ĝi rekte eniras monitoran kontrolon. Ĉiusemajna rulo de tiu linio kaptas la renovigon, kiun neniu planis.

Forigo okazas sur la servilo: forigu la samtulon aŭ revoku la serian numeron, poste konfirmu, ke la tunelo malsukcesas, ĉar kliento kun kaŝmemorita seanco povas kaŝi duonfinan revokon dum tempo. La revoko ankaŭ devas atingi la CRL- aŭ OCSP-vojon de la koncentrilo, ne nur la CA-datumbazon. Atestilo estas publika dokumento, kaj la RFC 5280-profilo kovras, kiel ĝi estas validigita; nenio en tiu validigo protektas privatan ŝlosilon kopiitan antaŭ la rotacio.

Skribu la decidon en unu loko: kiu konservejo tenas la ŝlosilon, kiu procezo rajtas uzi ĝin, kiu povas reeldoni ĝin kaj kio estas la restarigo. Tiu paragrafo estas tio, kion demandas revizoroj, kaj tio, kio postvivas personaran ŝanĝon.

Rilataj artikoloj