Før en Juju-charm blir din VPN: identitet, kontrakt, porter
Fem trinn skiller det en charm faktisk leverer, fra det du antar: fest revisjonen, les konfigurasjonen og behandle deretter eksponering som en brannmurhandling.
Noen finner en charm som hevder å kjøre en VPN, distribuerer den, eksponerer applikasjonen og venter på at en klient skal koble til. Distribusjonen lykkes, porten åpnes, og tunnelen fungerer fortsatt ikke, fordi tre uavhengige løfter ble slått sammen til ett. En charm er en distribusjonsimplementasjon med en bestemt kontrakt. Gå gjennom løftene hver for seg, og hullene viser seg før utrullingen i stedet for etter.
Trinn én: fest artefakten du leser om
Les kandidatens egne metadata: utgiver, kildekodelager, kanal, revisjon, base og arkitektur. Finn deretter ut hvem som vedlikeholder VPN-programvaren i arbeidslasten og hvem som leverer sikkerhetsoppdateringene, fordi det ofte er to forskjellige parter. En uavhengig upstream i en godt vedlikeholdt charm er et støtteproblem som venter på en dårlig uke.
juju info CHARM_NAME rapporterer kanaler, baser og arkitekturer i Juju 3.6, og dokumentasjonen bemerker at et søk etter en bestemt revisjon ikke kan kombineres med disse filtrene. Spør om revisjonen alene i stedet for å bygge en kombinasjon som kommandoen avviser. Les også basen og arkitekturen, siden en kanal kan dekke mer enn én.
Noter den nøyaktige kombinasjonen du gjennomgikk ved siden av distribusjonen. Da er en oppdatering som flytter kanalen en tilsiktet endring med før og etter, ikke en overraskelse på en mandag.
Trinn to: les konfigurasjonen som en kontrakt
Bestem rollen charmen spiller: avslutte ekstern tilgang, bli med i en eksisterende VPN eller noe helt annet. Finn deretter hvordan den dokumenterer klientregistrering, klarerte utstedere, rotasjon av legitimasjon og tilbakekalling. De fire avgjør om du kan drifte det, og en generert klientfil er sensitive utdata, ikke en fil for en sak.
Følg grensesnittene og handlingene som charmen faktisk eksponerer. Ikke anta at det finnes en registreringshandling fordi en annen charm for samme programvare har en.
Spør hva avstemmingen gjør med manuelle endringer. Hvis charmen overskriver en konfigurasjonsfil ved neste oppdatering, har en manuell retting en holdbarhet på én oppgradering. Spør vedlikeholderne hvor denne oppførselen er dokumentert, og behandle stillhet som ukjent.
Trinn tre: skill lytteren fra den videresendte veien
Den ytre lytteren er socketen som godtar tunnelen. Videresending er det som skjer med trafikken inni den, og en returvei er det som lar svar komme tilbake. En charm kan levere det første og overlate de to andre til infrastrukturteamet.
Egress er en tredje del. Hvis tunnelklienter skal nå internett gjennom denne verten, må det finnes en adresserings- eller oversettelsesordning, og den skapes ikke ved å åpne en port. Tildel en eier til den delen før den første klienten kommer.
Trinn fire: eksponering er en brannmurhandling
I Juju 3.6 justerer eksponering av en applikasjon skybrannmurreglene, og som standard tillater den trafikk fra enhver kilde til portene arbeidslasten har åpnet. Kommandoens endpoint- og CIDR-velgere finnes nettopp for at denne standarden kan snevres inn.
Eksponering oppretter ikke VPN-brukere, validerer ikke legitimasjonen deres og installerer ikke videresendingspolicy. Den beviser heller ikke at arbeidslasten lytter på adressen og transporten du forventer, og derfor betyr testen etter eksponering mer enn suksessmeldingen. Kontroller den lyttende socketen på enheten samt skyregelen.
Trinn fem: godta med fire tester
Etter en godkjent distribusjon, registrer en ny klient og bekreft den tiltenkte private tjenesten. Opphev deretter identiteten og bekreft at tilgangen faktisk avsluttes, i stedet for at bare neste pålogging avvises. Gjenta kontrollen fra et nettverk du ikke kontrollerer, og deretter innenfra kontoret, fordi de to veiene svarer på forskjellige spørsmål.
Avslutt med en oppgradering og en gjenoppkobling, fordi det er der avstemming, håndtering av legitimasjon og tjenestegjenstarter samhandler. Hvis dokumentasjonen ikke kan forklare hvem som eier en av disse operasjonene, skriv det ned som et adopsjonshull i stedet for å fylle det med en uvedlikeholdt oppskrift bak samme charmnavn. Et hull som er skrevet ned, er en beslutning; et hull som fylles i stillhet, er et fremtidig avbrudd. Overlever det til den som eier tjenestebeslutningen, med datoen du fant det.