Take the 2-minute tour ×
Server Fault is a question and answer site for system and network administrators. It's 100% free, no registration required.

I'm looking at building a root-CA for use with something I'm putting together.

Each customer would register their own server with me and I'd sign their cert as the holder of (id).example.com. Each customer would securely download my CA cert and set it as trusted for the example.com and sub-domains only.

How do I set my own CA-cert as applicable for example.com only? My customers are not going to want to trust me to sign (say) paypal.com, just the domain and it's subdomains I made it for. I also don't want to be in a position where someone could force me to sign their dodgy cert.

(I'm looking at openssl at the moment, but any alternatives are fine. If it's just a command line option, it's currently elluding me.)

share|improve this question

2 Answers 2

up vote 4 down vote accepted

The PKI doesn't have a method for restricting Certificate Authorities to sign certificates only in certain areas. Once you trust a CA, you unconditionally trust everything it produces. There is no conditional trust for CA's, just certificates. This does in fact mean that if you trust your Company's CA, you'll also trust a certificate signed by the company CA for mail.google.com. It is for this reason that Extended Validation certificates are becoming all the rage.

Asking customers to trust a CA is a major request. If it's just a few servers that need to trust it is one thing, but asking their entire infrastructure to trust it is one that I'd say most companies will balk at.

share|improve this answer
    
Thanks. I see why I couldn't find the command line option. I wonder if the standards people have plans to add support for domain-limited-CAs down the line. –  billpg Nov 25 '10 at 19:53
1  
@billpg I suspect the methodology for this is, "Get a subordinate CA from a big CA from which you're only allowed to issue certs for subjects that end in example.com." The enforcement is through the contract process, not in the PKI itself. –  sysadmin1138 Nov 25 '10 at 20:02

The name constraint extended attribute can be used to restrict signing with a certificate to a particular domain. This is part of the PKI infrastructure (RFC 5280 - Section 4.2.1.10). How well it is supported in the browsers is another matter entirely.

share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.