Hvad openssl dhparam -check bekræfter, og hvad den ikke fanger
En bestået parameterkontrol er ikke en sikkerhedsrevision. Se, hvad den beviser om din DH-fil, hvordan du læser gruppestørrelsen, og hvordan du undgår at generere igen.
At bestå dhparam -check føles som en dom over din VPNs Diffie-Hellman-opsætning. Det er det ikke. Kommandoen sammenligner én parameterfil med den aritmetik, den hævder at opfylde, og den siger intet om, hvorvidt gruppestørrelsen passer til din politik, eller om tunnelen overhovedet indlæser filen. At læse den som en sikkerhedsrevision er den antagelse, der er værd at rette først.
En parameterfil indeholder et primtal og en generator. Gyldighed er en egenskab ved de tal, mens styrke er en vurdering af din trusselsmodel og dine parter, og de to kan ikke byttes om.
Hvad gyldighedskontrollen faktisk bekræfter
Kør kontrollen på den fil, du har, og læs svaret. openssl dhparam -in dh.pem -check -noout udfører parameterkontrollerne og undertrykker det kodede output. En meddelelse om, at parametrene ser fine ud, betyder, at værdierne er strukturelt konsistente; det betyder ikke, at en kort gruppe er acceptabel i dit miljø.
Generering uden -dsaparam giver sikre primtal, hvor (p-1)/2 også er primtal, og derfor tager det så lang tid. DSA-stil-vejen bygger parametre hurtigere og konverterer dem til DH-form, og OpenSSL-manualen knytter ekstra krav om friske nøgler til at bruge dem. Ingen af konstruktionerne er en sessionshemmelighed: filen er offentligt konfigurationsmateriale, ikke certifikatets private nøgle og ikke kontrolkanalens delte hemmelighed.
Læs størrelse og generator, før du vurderer filen
Et gyldighedsresultat betyder mere, når du ved, hvad der blev valideret. Udskriv parametrene med openssl dhparam -in dh.pem -text -noout, og notér derefter primtalslængden og generatorværdien.
Sammenlign den længde med en skriftlig politik frem for med en vane. Hvis dit krav er en godkendt navngivet gruppe fra et moderne TLS-stak, kan en håndgenereret fil være det helt forkerte artefakt. Skriv begge tal i ændringsloggen, så den næste anmelder ikke skal udlede dem igen.
Gør ikke en inspektion til en ny generering
Fejltilstanden her er en kommando, der ligner en kontrol og opfører sig som en generator. At tilføje en bitlængde, som i openssl dhparam -check 2048, beder om nye parametre, og inputfilen ignoreres. En generatorindstilling kan gøre det samme. Hvis du kun ville inspicere, så giv -in og -check og intet, der beskriver en størrelse.
At skrive output over den oprindelige sti fortjener samme mistanke, fordi manualen advarer om, at filoutput ikke er atomart. Et nedbrud midt i skrivningen efterlader en afkortet parameterfil og en tjeneste, der ikke starter.
Tilpas gruppen til protokollen, ikke til en trend
Størrelsespolitik er en beslutning, værktøjet ikke kan læse for dig. En endelig-felt-gruppe på 2048 bit er et almindeligt gulv, og større grupper koster håndtrykstid, så vælg det tal, din egen baseline nævner, og skriv det ned. Meget brugte grupper er ikke svage, fordi de er offentlige; ukendthed tilføjer intet her.
Hvor stakken understøtter godkendte navngivne grupper, følg den dokumenterede ordning i stedet for at generere usædvanlige parametre for at få dem til at se unikke ud. En navngivet gruppe er noget, en part kan genkende, og en anmelder kan slå op, hvilket er mere værd end en speciallavet fil, ingen kan klassificere.
Bekræft, at VPN’et overhovedet indlæser filen
En korrekt parameterfil, som ingen proces læser, ændrer intet. I OpenVPN er serverdirektivet dh med en sti, og installationer, der bygger på ECDH eller TLS 1.3-nøgleudveksling, kan i stedet sætte dh none. Kontrollér den kørende konfiguration frem for en skabelon, og bekræft derefter, at klienter og parter forhandler samme konstruktion.
Luk kredsen med de beviser, du faktisk har brug for: den gruppe, tunnelen forhandlede, parameterlængden i filen og den politiklinje, den længde opfylder. En bestået kontrol hører til på listen som en enkelt post. At behandle den som hele svaret er, hvordan en kort gruppe overlever en revision, der skulle have fanget den.