Hvem et Windows-.pbk-fil tilhører (og hvem den ikke tilhører)
En .pbk-fil er en telefonbok som tilhører én profil eller én RRAS-server, ikke et flyttbart VPN-skjema. Les eieren, seksjonen og egenskapen som eksponeres.
Søkeresultater gir deg en .pbk-fil, nøkkelnavnene virker kjente, og det nærliggende grepet er å behandle den som et flyttbart skjema for enhver Windows-VPN. Den er ikke det. Formatet tilhører en eier, og samme nøkkel betyr forskjellige ting ut fra hvilken eier som skrev den. Å lese omfanget først er det som hindrer at en dokumentasjonsøvelse blir en endring uten støtte.
Fire eiere, fire forskjellige lesere
Fire forskjellige eiere skriver filer som ser like ut. Den opprinnelige tilkoblingen per bruker havner i telefonboken til den aktuelle brukeren, mens en tilkobling for alle brukere havner i et lager på maskinnivå som hver konto på verten kan lese. En RRAS-server holder oppringingsoppsettet for sin egen ruterolle, og en tredjepartsklient kan holde et eget format som bare deler filendelsen. Samme endelse, fire lesere, fire sett med regler.
Et sammenfallende visningsnavn gjør ikke to slike oppføringer til den samme, og å kopiere en nøkkel mellom dem forutsetter at en administrator vil respektere noe den aldri har dokumentert. Eieren avgjør også hvem som får endre filen: en profil per bruker er et brukervalg, en profil på maskinnivå er en administrativ avgjørelse, og en oppringingsoppføring på en server er rutingoppsett under egen endringskontroll. Dermed er en eierfeil et rettighetsproblem før det blir et formatproblem.
Fastslå eieren ved å se på komponenten som styrer tilkoblingen, ikke på selve filen. En fil er et artefakt; den styrende komponenten bestemmer hvilke nøkler den leser og når. Å lese artefakten først og administratoren etterpå er måten folk ender med å redigere et felt som ingenting spør om.
Hvor det publiserte formatet slutter å beskrive filen din
I RRAS-administrasjonsprotokollen er telefonboken ren tekst som en administrasjonsklient skriver og rutetjenesten leser, og derfor beskriver MS-RRASM-spesifikasjonen oppringingsinnstillinger for en server og ikke for en skrivebordsprofil. Struktur er den delen en flat lesing ødelegger. En oppføring kan romme flere medieblokker, hver med enhetsblokker som igjen rommer blokker for enkeltnumre. Derfor kan samme nøkkel dukke opp på mer enn ett sted med ulik betydning.
Les en nøkkel sammen med seksjonen og versjonsnotatene, og ikke oversett en verdi fra en likt navngitt avkrysningsboks i et skrivebordsgrensesnitt. Å finne kjente nøkler i dokumentet beviser ikke at det dekker hvert felt i en urelatert opprinnelig profil. Seksjonsreglene er heller ikke tillatelse til å skrive om en skrivebordstelefonbok i serverformatet.
| Owner | What reads the file | What a key means there |
|---|---|---|
| Per-user native connection | The user's own connection manager | A property of that user profile |
| All-user native connection | The machine-wide connection store | A property shared by everyone on the host |
| RRAS demand-dial | The RRAS service, using the documented hierarchy | A field inside a media, device or number section |
| Third-party client | That vendor's own parser | Whatever that vendor documents, if anything |
Tabellen er en lesehjelp og ikke en spesifikasjon: den sier hvilken leser du skal spørre, og leseren sier hva feltet betyr. Når den leseren er en tredjeparts parser, kan det ærlige svaret være at ingenting offentlig dokumenterer feltet i det hele tatt.
Spør Windows, ikke filen
For en opprinnelig tilkobling, spør Windows om profilen i stedet for å lese filen, siden de typede egenskapene er den dokumenterte overflaten og det eneste en støttet endring endrer. De to kommandoene nedenfor leser de to opprinnelige lagrene hver for seg. Hvis profilen ikke finnes i noen av de to lagrene, bruker ikke klienten som styrer den den opprinnelige mekanismen, og ingen opprinnelig cmdlet vil beskrive den.
Get-VpnConnection -Name 'Field Ops'
Get-VpnConnection -AllUserConnection | Select-Object Name, ServerAddress, TunnelType
For utrulling og ikke inspeksjon er den dokumenterte veien en administrert profilinnstilling med et navngitt skjema, ikke en numerisk redigering inne i en tekst- eller binærblob. En profildefinisjon beskriver støttede innstillinger; den leverer ikke sertifikatene og de private nøklene profilen er avhengig av. Registrering er en egen prosess med egen myndighet, og forståelse av en telefonboknøkkel har aldri distribuert en privat nøkkel. Planlegg de to løpene hver for seg, ellers blir den første sertifikatutrullingen den andre hendelsen.
Én egenskap, deretter livsløpet rundt den
En lagret verdi er ikke en anvendt verdi. Etter en godkjent endring, åpne en ny tilkobling og kontroller rutene profilen installerer, resolverretningslinjene den arver, og operasjonen den skulle muliggjøre. Å bruke en økt som allerede var oppe på nytt tester de gamle innstillingene og gir et falskt negativt resultat.
Kopier filen til side før noe arbeid på råfilen, fordi en telefonbok med flere oppføringer er et delt artefakt, og en målrettet redigering som skriver om hele filen har større radius enn endringen. Hold urelaterte oppføringer intakte, og behold den opprinnelige beskyttede konfigurasjonen til den nye er verifisert. Hvis et påkrevd felt ikke er dokumentert for den eieren og versjonen du faktisk har, før det opp som et åpent støttespørsmål. Å finne opp en koding fra en annen maskins fil er måten en fungerende profil blir et feilsøkingsprosjekt uten noe referansepunkt.
Disiplinen er den samme ved hvert steg: navngi eieren, navngi seksjonen, og navngi deretter den støttede operasjonen. Alt annet er en gjetning med en kildehenvisning festet til seg.