Under de senaste 20 åren har certutil.exe och certreq.exe varit två av de mest pålitliga Windows-verktygen. Dessa verktyg har visat sig vara viktiga för att hantera kryptografiska nycklar och certifikat, särskilt i serversammanhang där säkerhet är avgörande. Det är ingen hemlighet att den grundläggande användningen av dessa verktyg exponerar ett brett spektrum av kraftfulla funktioner.
Utöver deras vanliga funktioner finns det dock en djupare uppsättning avancerade funktioner och mindre kända switchar utformade för administratörer som behöver finjusterad kontroll över certifikatförfrågningar och utfärdande. I den här guiden går vi igenom dessa ofta förbisedda funktioner och avslöjar de dolda switcharna som frigör verktygens fulla potential.
Certutil.exe
Certutil.exe är ett kraftfullt kommandoradsverktyg inbyggt i Windows som används för att hantera, felsöka och validera PKI-komponenter (Public Key Infrastructure). Det används flitigt av PKI-administratörer, säkerhetsingenjörer och systemadministratörer och stöder ett brett spektrum av certifikatrelaterade åtgärder, inklusive hantering och inspektion av certifikatarkiv, verifiering av certifikatkedjor och nyckelpar, kontroll av återkallningsstatus via Certifikatåterkallningslista (CRL) och Online -certifikatstatusprotokoll (OCSP), koda och avkoda filer, hasha filer, konfigurera registerinställningar för certifikatutfärdare (CA), interagera med Active Directory PKI-behållare, konvertera certifikat mellan olika format och felsökning av certifikatregistrering eller förtroendeproblem. På grund av dess omfattande funktionalitet och flexibilitet har certutil.exe blivit ett av de viktigaste verktygen för att arbeta med Microsoft PKI-miljöer.
För att besöka den officiella dokumentationen, följ länken: certutil-dokumentation
Utforskar Certutil
Utöver certifikatåtgärder kan certutil.exe användas för att säkerhetskopiera och återställa CA-komponenter, visa konfigurationsinformation för CA:er och konfigurera certifikattjänster.
Ett beteende som är värt att förstå är att när certutil körs utan några parametrar på en Certifieringsutfärdare (CA) server, visar den information om den lokala CA-konfigurationen. På en maskin som inte är en CA används standardvärdet för motsvarigheten till certutil -dump. Det är viktigt att förstå denna skillnad när man analyserar certutils utdata under felsökning eller logggranskning.

Certutil erbjuder ett brett utbud av switchar, som kan utforskas med hjälp av certutil -? eller certutil -?. Genom att lägga till flaggan -v aktiveras utförlig utdata (certutil -v -?), vilket utökar hjälpvyn med ytterligare kommandon och mer detaljerad användningsinformation.
Du kanske funderar på vilken större skillnad "-v"-omkopplaren skulle kunna göra, så här är utdata från en sträng jämfört mellan säkert -? och certutil -v -?

Vänster sida visar utdata från kommandot "säkert -?”, medan höger sida visar utdata från kommandot “certutil -v -?”. Skillnaden märks omedelbart. Den utförliga utdata är betydligt längre och sträcker sig långt bortom den koncisa lista som returneras av certutil -?. Medan standardhjälpen fokuserar på vanligt förekommande kommandon med korta beskrivningar, utökas utdata avsevärt genom att lägga till växeln -v till ytterligare kommandon och mer detaljerad information. Detta illustrerar tydligt hur mycket funktionalitet i certutil.exe förblir dold om inte utförlig hjälp uttryckligen begärs.
Utforskar dolda switchar i Certutil
Det mest kompletta sättet att utforska allt som certutil erbjuder är med följande flaggkombination:
certutil -v -användning
Detta kombinerar utförlig utdata (-v) med den utökade användningsvyn (-uSAGE), vilket ger den mest detaljerade hjälpen med fullständig syntax och ytterligare kommandon som inte visas i standardhjälpen.
Om du bara behöver listan över dolda switchnamn utan fullständig syntaxdetalj, ger följande kommando en snabbare delmängd:
certutil-användning
Det är värt att notera att båda flaggorna är skiftlägeskänsliga och måste skrivas exakt som visas. Dessutom är de dolda växlarna i både certutil och certreq odokumenterade av en anledning, eftersom de kan bete sig olika mellan Windows-versioner och falla utanför ramen för standardsupport från Microsoft. Av denna anledning är det alltid lämpligt att testa dem i en icke-produktionsmiljö innan de distribueras i ett aktivt eller kritiskt system.
Låt oss analysera skillnaden mellan de två i detalj. Till vänster har vi standarden säkert -? utgång, medan till höger har vi certutil-användning utdata. Jämförelsen markerar tydligt ytterligare dolda växlar, som inte syns i standardhjälpen. Dessa extra alternativ är markerade med grönt i -uSAGE-vyn för bättre identifiering.




Nu när skillnaderna är tydligt synliga, låt oss förstå varje ytterligare kommando som är tillgängligt under certutil -uSAGE i detalj. Följande tabell bryter ner varje dold brytare och dess syfte för bättre tydlighet.
| Parameter | BESKRIVNING |
|---|---|
| -kodhex | Kodar en fil i hexadecimalt format. |
| -getconfig2 | Hämtar standardkonfigurationssträngen för CA via ICertGetConfig-gränssnittet. |
| -getconfig3 | Hämtar CA-konfiguration via ICertConfig-gränssnittet. |
| -CAPropInfo | Visar information om CA-egenskapstyp, såsom datatyper och flaggor för varje egenskap som CA exponerar. Används för avancerad CA-skriptning. |
| -exportPFX | Exporterar ett certifikat och dess privata nyckel till en PFX-fil. |
| -TPMInfo | Visar information om Trusted Platform Module (TPM). Visar TPM-version, tillverkare och funktioner, användbart vid distribution av TPM-baserade nycklar. Används för validering av TPM-baserade nycklar och virtuella smartkort (VSC). |
| -getcert | Öppnar ett användargränssnitt för certifikatval för att välja ett certifikat interaktivt. Den fullständiga syntaxen är certUtil [Alternativ] -getcert [ObjectId | ERA | KRA [CommonName]]. |
| -ds | Visar Active Directory Distinguished Names (DN) för PKI-behållare (AIA, CDP, etc.). Hjälper till att förstå var PKI-objekt lagras i AD. |
| -dsDel | Tar bort en specifik post från en Active Directory PKI-behållare. Använd med extrem försiktighet eftersom det tar bort AD-objekt permanent. |
| -dsCert | Visar certifikat som lagras i Active Directory PKI-behållare. |
| -dsCRL | Visar CRL:er (Certificate Revocation Lists) som lagrats i Active Directory. |
| -dsDeltaCRL | Visar Delta-CRL:er som lagras i Active Directory. Används när en certifikatutfärdare publicerar stegvisa återkallningslistor. |
| -dsMall | Visar certifikatmallattribut från Active Directory. Lägg till -v före det för att helt expandera registreringsflaggor, privata nyckelflaggor, utgivningspolicyer och EKU OID:er. Används för mallgranskning och säkerhetsgranskning. |
| -dsAddTemplate | Lägger till certifikatmallar i Active Directory. Används under CA-installation eller vid publicering av nya mallar. |
| -SetCATemplates | Ställer in eller begränsar listan över mallar som en CA får utfärda. |
| -URL | Verifierar certifikat- och CRL-adresser (Certificate Revocation List) för att säkerställa att de är nåbara och returnerar giltiga data. Hjälper till att felsöka problem med tillgänglighet för kedjan, CRL:erna och OCSP:erna. |
| -SCDump | Dumpar information om smartkortsfiler. Används vid problem med inloggning och provisionering av smartkort. |
| -nyckel | Listar alla kryptografiska nyckelbehållare på maskinen. Visar både CryptoAPI (äldre) och CNG-nyckelbehållare. |
| -delkey | Tar bort en specifik kryptografisk nyckelbehållare från maskinen (permanent). |
| -csplist | Listar alla kryptografiska tjänsteleverantörer (CSP:er) och nyckellagringsleverantörer (KSP:er) som är installerade på maskinen. Användbart för att verifiera tillgängligheten för HSM-/smartkortleverantörer. |
| -csptest | Testar en CSP/KSP genom att ladda den och kontrollera kryptografiska operationer. Används ofta för felsökning av HSM och smartkort. |
| -CNGConfig | Visar CNG-konfiguration (Cryptography Next Generation), såsom registrerade algoritmer, leverantörer och CNG-inställningar. |
| -Klass | Visar COM-registerinformation för certifikatrelaterade COM-klasser. |
| -7f | Kontrollerar ett certifikat för kodningar med längden 0x7f. |
| -getsmtpinfo | Visar SMTP-meddelandeinställningar (e-post) som konfigurerats på CA:n. |
| -setsmtpinfo | Konfigurerar SMTP-aviseringsinställningar på CA, till exempel att ställa in e-postaviseringar för CA-händelser som certifikatutfärdande, utgångsdatum eller fel. |
Obs: Dessa kommandon fungerar på en känslig administrativ nivå. Felaktig användning av växlar som -dsDel, -delkey eller -SetCATemplates kan påverka certifikattjänster, bryta förtroendekedjor eller ta bort kritiska PKI-objekt från Active Directory. Verifiera alltid målet och förstå effekten innan du kör dem i en produktionsmiljö.
Med det sagt, låt oss titta närmare på några av de vanligaste dolda switcharna, de som PKI-administratörer kommer att tycka är mest användbara i den dagliga driften och felsökningen.
-
-csplist och -csptest:
Dessa två fungerar bäst tillsammans. Kör -csplist först för att se alla CSP och KSP som är registrerade på maskinen, använd sedan -csptest för att ladda och verifiera en specifik leverantör. Detta är det snabbaste sättet att diagnostisera problem med HSM eller smartkort: om leverantören inte visas i -csplist är drivrutinen inte registrerad; om den visas men -csptest misslyckas är problemet behörigheter, PIN-kod eller bibliotekssökväg. Varje switch kan också expanderas individuellt för mer information:
certutil -v -csplist -?
certutil -v -csptest -?
-
-dtemplate med -v:
Att lägga till -v före -dstemplate gör en betydande skillnad. Utan det får du mallnamn. Med det får du hela expansionen, inklusive registreringsflaggor, privata nyckelflaggor, utgivningspolicyer och EKU OID:er. Detta är kommandot som ska köras när du granskar mallar för säkerhetsfelkonfigurationer:
certutil -v -dstemplate
certutil -v -dstemplate Webbserver
En annan sak som är värd att veta är att varje dold switch, precis som publika, kan expanderas individuellt. Detta fungerar för alla switchar i -uSAGE-listan:
certutil -URL -?
certutil -v -SCDump -?
Sammantaget ger dessa switchar PKI-administratörer en nivå av insyn och kontroll som helt enkelt inte är tillgänglig via MMC-konsolen eller standardhjälpen för Certutil. Ju mer bekant du är med dem, desto snabbare kommer du att kunna diagnostisera och lösa problem i din PKI-miljö.
Certreq.exe
Certreq.exe är ett kraftfullt kommandoradsverktyg inbyggt i Windows för att hantera hela certifikatregistreringslivscykeln. Medan certutil.exe hanterar certifikatinspektion och administration av certifikatutfärdare, fokuserar certreq.exe på förfrågningssidan: generering, inskick, hämtning och installation. certifikat från en CA.
För att besöka den officiella dokumentationen, följ länken: certreq-dokumentation
Utforskar Certreq
I grund och botten är certreq.exe bryggan mellan en certifikatbegärare och en certifikatutfärdare. Den hanterar varje steg i registreringsarbetsflödet från ett enda kommandoradsgränssnitt, vilket gör den särskilt värdefull i servermiljöer där GUI-baserad registrering inte är tillgänglig eller opraktisk.
Här är vad certreq kan göra och hur varje funktion passar in i verkliga PKI-operationer:
-
Begär ett certifikat från en CA: Med hjälp av en INF-policyfil genererar certreq en certifikatsigneringsförfrågan (CSR) och ett privat nyckelpar. INF-filen definierar ämne, nyckelalgoritm, nyckelstorlek, avsedd användning och eventuella begärda tillägg, vilket ger administratörer exakt kontroll över vad som begärs.
certreq -new request.inf request.csr
-
Skicka en begäran till en CA: När en CSR är klar skickar certreq den direkt till en företags-CA via RPC/DCOM eller till en extern CA via en fil. Flaggan -config anger vilken CA som ska riktas in när flera CA:er finns i miljön.
certreq -submit -config "Servernamn\CA-namn" request.csr issued.cer
-
Hämta ett väntande certifikat: När en certifikatutfärdare kräver godkännande från en chef utfärdas inte certifikatet omedelbart. certreq kan avfråga certifikatutfärdaren och hämta det utfärdade certifikatet när det har godkänts, med hjälp av det begärande-ID som returnerades vid inlämningstillfället.
certreq -retrieve -config "Servernamn\CA-namn" utfärdad.cer
-
Acceptera och installera det utfärdade certifikatet: Efter hämtningen installerar certreq certifikatet i lämplig Windows-certifikatarkiv och länkar det till dess privata nyckel, vilket slutför registreringsprocessen.
certreq -acceptera utfärdat.cer
- Skapa en begäran om korscertifiering eller kvalificerad underordning: För organisationer som bygger PKI-hierarkier kan certreq konstruera korscertifieringsförfrågningar från ett befintligt CA-certifikat. Detta används när man etablerar förtroende mellan två oberoende PKI-hierarkier eller när man skapar en kvalificerad underordnad CA med begränsade namnutrymmen och policybegränsningar.
- Skriv under en begäran om korscertifiering eller kvalificerad underordning: certreq kan också signera en väntande korscertifieringsbegäran med ett befintligt CA-certifikat, vilket slutför förtroendeupprättandet mellan PKI-hierarkier utan att behöva MMC CA-konsolen.
Certreq-kommandoparametrar
| Parameter | BESKRIVNING |
|---|---|
| -överlämna | Skickar en begäran till en certifikatutfärdare |
| -hämta | Hämtar ett svar på en tidigare begäran från en certifikatutfärdare |
| -ny | Skapar en ny begäran från en .inf-fil |
| -acceptera | Accepterar och installerar ett svar på en certifikatförfrågan |
| -politik | Anger policyn för en begäran |
| -tecken | Undertecknar en begäran om korscertifiering eller kvalificerad underordning |
| -skriva in | Registrerar sig för eller förnyar ett certifikat |
| -? | Visar en lista med certreq-syntax, alternativ och beskrivningar |
| -? | Visar hjälp för den angivna parametern |
| -v-? | Visar en utförlig lista över certreq-syntaxen, alternativen och beskrivningarna |
Bland dessa är -submit och -retrieve de vanligaste växlarna för att skicka in en certifikatförfrågan och hämta utfärdade certifikat från certifikatutfärdare via kommandoraden.
Utforska dolda switchar i Certreq
Precis som certutil har certreq sin egen uppsättning dolda brytare, som visas med samma skiftlägeskänsliga parameter -uSAGE:
certreq.exe -användning
Skärmbilderna nedan jämför certreq -?-utdata till vänster med standardutdata certreq -uSAGE till höger. De ytterligare dolda brytarna syns endast till höger.




Med skillnaderna fastställda, låt oss undersöka varje ytterligare kommando som är tillgängligt under certreq -uSAGE i detalj. Följande tabell bryter ner varje dold brytare och dess syfte för bättre tydlighet.
| Dold brytare | Vad den gör |
|---|---|
| -EOBO | Startar guiden Registrera-på-uppdrag-av. Tillåter en registreringsagent att begära certifikat för en annan användares räkning. Kräver att ett certifikat för en registreringsagent konfigureras. |
| -RegistreraX | Registrerar för flera certifikat i en enda operation. Accepterar -Accept user- och -machine-flaggor för att styra målcertifikatarkivet. |
| -Autoregistrering | Startar användargränssnittet för automatisk registrering. Stöder flaggorna -v, -user och -machine. |
| -Begäran | Skapar en anpassad certifikatförfrågan med utökad kontroll över begäraninnehåll. Stöder kontextflaggor för -user och -machine. |
| -ImportPFX | Importerar en PFX-fil direkt till en specificerad kryptografisk leverantör, inklusive hårdvaruleverantörer som HSM:er och smartkort. |
Var och en av dessa kan utökas individuellt för fullständig syntax:
certreq -ImportPFX -?
certreq -Autoregistrering -?
certreq -EOBO -?
Av dessa förtjänar -ImportPFX en närmare titt, särskilt på grund av hur den skiljer sig från sina motsvarigheter i certutil.
-ImportPFX i certreq jämfört med -importPFX i certutil
Av alla dolda switchar är certreq -importPFX och certutil -importPFX särskilt intressanta att undersöka. Även om båda fungerar med PFX-filer, tjänar de olika syften och beter sig helt olika i praktiken.
Den viktigaste skillnaden ligger i hur de riktar sig mot destinationen. certutil -importPFX fungerar mot namngivna Windows-certifikatarkiv och erbjuder en omfattande modifieringslista, inklusive AT_SIGNATURE, AT_KEYEXCHANGE, NoExport, NoChain, NoRoot, Protect, ProtectHigh, Pkcs8, VSM och fler, vilket ger finjusterad kontroll över exakt hur certifikatet och nyckeln importeras.
certutil [alternativ] -importPFX [Certifikatarkivnamn] PFXFile [Modifierare]

certreq -ImportPFX, å andra sidan, riktar sig direkt mot en specifik kryptografisk leverantör, inklusive hårdvaruleverantörer som HSM:er och smartkortläsare. Dess syntax är positionsbaserad snarare än modifieringsbaserad:
certreq -ImportPFX PFXFile [Leverantör [Läsare [ContainerPrefix [Vänligt namn [Flaggor]]]]]

Obs: Alternativet -importPFX i certutil är en fullständigt dokumenterad och stödd växel. Däremot listas inte -ImportPFX i certreq i standardhjälpen och anses vara en odokumenterad eller mindre känd funktion. Använd den senare med försiktighet och validera alltid beteendet i icke-produktionsmiljöer.
I praktiken används certutil -importPFX för import av standardcertifikat från Windows där modifieringskontroll är viktig. Använd certreq -ImportPFX när du importerar direkt till en namngiven hårdvaruleverantör, en HSM KSP eller en specifik smartkortläsare.
Hur kan krypteringskonsulting hjälpa till?
Krypteringskonsulttjänster erbjuder specialiserade tjänster skräddarsydda för att identifiera sårbarheter och minska risker genom att tillhandahålla PKI-tjänsterVår strategiska vägledning anpassar PKI-lösningar till organisationens mål, vilket ökar effektiviteten och minimerar kostnaderna. Genom att samarbeta med Encryption Consulting kan organisationer frigöra den fulla potentialen hos PKI-lösningar, realisera konkreta ekonomiska fördelar samtidigt som de upprätthåller starka säkerhetsåtgärder.
Krypteringskonsulttjänster PKIaaS erbjuder en flexibel och säker PKI-lösning skräddarsydd för dina specifika behov, med fördelar som anpassningsbara alternativ, höga säkerhetsstandarder och en lågriskhanteringsmetod. PKIaaS automatiserar nyckel- och certifikathanteringsuppgifter, vilket minskar driftskostnader och minimerar risken för mänskliga fel. Dessutom förbättrar det nätverkssynligheten genom att kräva certifikat för åtkomst. Det tar hand om att bygga PKI-infrastrukturen för att leda och hantera PKI-miljön (moln/hybrid eller lokalt) i din organisation.
CertSecure-hanterare har en omfattande uppsättning funktioner för livscykelhantering. Från identifiering och inventering till utfärdande, driftsättning, förnyelse, återkallelse och rapportering. CertSecure erbjuder en heltäckande lösning. Intelligent rapportgenerering, aviseringar, automatisering, automatisk driftsättning på servrar och certifikatregistrering lägga till lager av sofistikering, vilket gör den till en mångsidig och intelligent tillgång.
Slutsats
Certutil och Certreq är kraftfulla verktyg för att hantera certifikat i Windows-miljöer. Även om deras grundläggande funktioner är allmänt erkända, avslöjar en fördjupning i deras sofistikerade funktioner och dolda brytare en mängd avancerade möjligheter.
Dessa verktyg erbjuder en viss nivå av insyn och kontroll över certifikathantering det går långt utöver vad MMC-konsolen erbjuder. Serveradministratörer som investerar tid i att förstå certutil och certreqs fulla funktioner, särskilt de dolda switcharna som exponeras genom -uSAGE, kommer att upptäcka att de diagnostiserar och löser PKI-problem betydligt snabbare. Om hantering och säkerhet av din certifikatinfrastruktur kräver djupare expertis finns Encryption Consultings PKI-team här för att hjälpa till.
