Manage Certificates using MMC (Windows): How to Generate a CSR

Follow SSLREPO latest news

Manage Certificates using MMC (Windows): How to Generate a CSR

Effectively managing digital certificates is paramount for security and trust in the Windows environment. A core task within this is generating a Certificate Signing Request (CSR), the first step towards obtaining an SSL/TLS certificate from a Certificate Authority (CA). This guide details how to manage certificates using MMC (Windows) and specifically walks you through the process to generate a CSR using the Certificates snap-in.

While tools like IIS Manager offer ways to generate CSRs, using the MMC Certificates snap-in provides a more direct and sometimes more flexible approach, especially when dealing with specific key requirements or non-web server certificate needs.

Key Takeaways

  • MMC is Central: The Certificates snap-in for MMC (mmc.exe) is a primary tool for comprehensive certificate management on Windows, including CSR generation.
  • Use “Computer Account”: Always add the Certificates snap-in for the “Computer account” (Local Computer) when managing server certificates or generating CSRs for them.
  • CSR Generation Path: The process typically involves navigating to Personal > Certificates, then All Tasks > Advanced Operations > Create Custom Request....
  • Key Information Needed: You’ll need to provide accurate details like the Common Name (domain), Organization, Locality, State, Country, and potentially Subject Alternative Names (SANs).
  • Private Key Security: Generating a CSR also creates a corresponding private key on the server. This key must be kept secure and is essential for installing the certificate later.
  • Output: The process results in a .req file containing the encoded CSR text, which you submit to your chosen Certificate Authority.

Understanding the Certificate Signing Request (CSR)

A CSR is a block of encrypted text containing information that identifies the entity requesting the certificate (e.g., your website or organization) and its public key. When you want to buy an SSL certificate, you generate a CSR on your server and send it to a Certificate Authority (CA). The CA uses the information in the CSR to verify your identity and create the actual SSL certificate. The corresponding private key, generated alongside the CSR, remains securely on your server and must match the public key in the issued certificate.

Accessing the Certificates MMC Snap-in (Local Computer)

Before you can generate a CSR, you need to open the correct management console:

  1. Open MMC: Press Win + R, type mmc, and press Enter. You may need administrator privileges.
  2. Add Snap-in: Go to File > Add/Remove Snap-in... (or press Ctrl + M).
  3. Select Certificates: Find “Certificates” in the “Available snap-ins” list, select it, and click “Add >”.
  4. Choose Computer Account: Critically, select “Computer account” in the pop-up window and click “Next”.
  5. Select Local Computer: Ensure “Local computer: (the computer this console is running on)” is selected and click “Finish”.
  6. Confirm: Click “OK”. You should now see “Certificates (Local Computer)” in the console tree.

How to Generate a CSR using MMC

Follow these steps carefully within the MMC console you just configured:

  1. Navigate: Expand Certificates (Local Computer), then expand Personal.
  2. Initiate Custom Request: Right-click on the Certificates folder under Personal, then navigate to All Tasks > Advanced Operations > Create Custom Request....
  3. Before You Begin: Click “Next” on the Certificate Enrollment wizard’s welcome screen.
  4. Select Certificate Enrollment Policy: Choose “Proceed without enrollment policy” and click “Next”.
  5. Custom Request Template:
    • For Template, select “(No template) CNG key” (newer, recommended) or “(No template) Legacy key” if required for specific compatibility.
    • For Request format, ensure “PKCS #10” is selected.
    • Click “Next”.
  6. Certificate Information: This is the most critical step. Click the dropdown arrow next to “Details” and then click the “Properties” button.
  7. Certificate Properties:
    • General Tab: Optionally enter a “Friendly name” (e.g., mydomain.com CSR) and a description.
    • Subject Tab: This is where you enter the identity information. Under “Subject name”, select the type from the dropdown, enter the value, and click “Add >”. Repeat for all required fields:
      • Common Name (CN): Your primary fully qualified domain name (e.g., www.yourdomain.com or yourdomain.com). This must be accurate.
      • Organization (O): Your legally registered company name.
      • Organizational Unit (OU): Your department (e.g., IT, Web Security).
      • Locality (L): Your city.
      • State or province (S): Your state or province (do not abbreviate).
      • Country (C): Your two-letter country code (e.g., US, GB, CA).
    • Subject Tab (Alternative Names): If your certificate needs to cover multiple domains (SAN certificate), under “Alternative name”, select “DNS” from the dropdown, enter the additional domain name (e.g., mail.yourdomain.com, blog.yourdomain.com), and click “Add >”. Repeat for all required SANs. Include the base domain (e.g., yourdomain.com) if the CN is www.yourdomain.com and you need both covered.
    • Private Key Tab:
      • Expand “Key options“. Set the “Key size” – 2048 bits is the current minimum standard, 4096 offers more security but might impact performance slightly. ^^[Cybersecurity Best Practices Report, 2025]^^
      • Check “Make private key exportable” ONLY if you know you will need to move this certificate (with its key) to another server later. For security, it’s often better to leave this unchecked and generate a new CSR on the new server if needed.
      • Expand “Key type” and ensure “Key exchange” is typically selected.
    • Click “Apply” and then “OK”.
  8. Save the CSR: Click “Next” on the Certificate Information screen. You will be prompted to specify a file name and location to save the CSR.
    • Choose a location (e.g., your Desktop).
    • Enter a file name (e.g., mydomain_csr.req).
    • Select “Base 64” as the file format.
    • Click “Finish”.

You now have a .req file containing your CSR. Open this file with a text editor (like Notepad), and copy the entire contents (including the -----BEGIN CERTIFICATE REQUEST----- and -----END CERTIFICATE REQUEST----- lines) to submit to your chosen Certificate Authority (like SSLRepo).

After Generating the CSR

  • Secure the Private Key: The corresponding private key has been generated and stored securely within the Windows certificate store. Do not delete the pending request entry in MMC until the certificate is issued and installed.
  • Submit the CSR: Provide the copied Base 64 CSR text to your CA during the SSL certificate ordering process.
  • Await Issuance: The CA will validate your request and, upon approval, issue your SSL certificate files.

Wrapping It Up

Learning to manage certificates using MMC (Windows), including knowing how to generate a CSR, puts you in control of a crucial aspect of server security. By carefully following the steps in the Certificate Enrollment wizard and providing accurate information, you create the necessary request to obtain the SSL/TLS certificate needed to secure your services. Remember to safeguard the associated private key that remains on your server.

Ready to turn that CSR into a trusted SSL certificate? Explore the options and competitive pricing at SSLRepo.

Frequently Asked Questions (FAQ)

Q1: Why use MMC to generate a CSR instead of IIS?
A: MMC offers a more granular approach, direct access to CNG/Legacy key options, and works independently of IIS, making it suitable for generating CSRs for various purposes beyond just web hosting.

Q2: What is the most important information in a CSR?
A: The Common Name (CN) is critical as it must match the exact domain name you intend to secure. Organization details are used for OV/EV validation, and Subject Alternative Names (SANs) are essential for multi-domain coverage.

Q3: What happens to the private key when I generate a CSR using MMC?
A: The private key is automatically generated and stored securely within the Windows certificate store, associated with the pending request. It does not leave your server.

Q4: What format should I save the CSR file in?
A: Save the CSR file in Base 64 format. This creates a text file (.req) with the standard encoded block needed by CAs.

Q5: Can I generate a CSR for a wildcard certificate using MMC?
A: Yes. When entering the Common Name (CN), use the wildcard format (e.g., *.yourdomain.com).

Q6: Where do I submit the generated CSR file?
A: You copy the text content from the .req file (including the BEGIN/END lines) and paste it into the order form provided by your Certificate Authority (CA), such as SSLRepo, when purchasing your SSL certificate.

Scroll to Top