+
+Global
+++++++
+
+The ``global`` section contains options that affect the behavior of
+the ``cam`` tool itself. You can usually leave this out altogether.
+
+Available options:
+
+``root_dir``
+ This is where the CA private data will be stored. If you leave this
+ parameter empty, or if you don't define a ``global`` section at all,
+ this will default to the directory containing the configuration file.
+
+
+Certification Authority
++++++++++++++++++++++++
+
+The ``ca`` section specifies parameters for the Certification
+Authority. Some of these are mandatory as they uniquely identify each
+CA.
+
+The following parameters specify options of the CA certificate itself.
+They are only used once, at CA initialization time (when running ``cam
+init``). Subsequent changes to these options will be ignored.
+
+``cn``
+ Value of the Common Name (CN) field in the X509 Subject.
+
+``org``
+ Value of the Organization (O) field in the X509 Subject.
+
+``country``
+ Value of the Country (C) field in the X509 Subject.
+
+``email``
+ Contact email, added to the X509 CA certificate.
+
+``days``
+ Number of days that the CA certificate will be valid for (default:
+ 3650, or 10 years).
+
+``crl_url``
+ Public URL where the CA Certificate Revocation List will be
+ accessible (optional).
+
+Other options:
+
+``default_days``
+ Number of days that a new certificate will be valid for (default: 365).
+
+``bits``
+ Size of the RSA key for the CA certificate, and also default key
+ size for all newly created certificates (default: 2048).
+
+``signature_algorithm``
+ Digest algorithm to use for CA signatures (default: sha256).
+
+
+Certificates
+++++++++++++
+
+Every other section defines options for a certificate. Some of these
+options can be left unset, in which case a default value will be
+provided by the ``ca`` section. ``cn`` must be always specified.
+
+The following options are available:
+
+``days``
+ Number of days that this certificate will be valid for. If unset,
+ will use ``ca.default_days``.
+
+``cn``
+ Common Name (CN) for the X509 Subject.
+
+``ou``
+ Organizational Unit (OU) for the X509 Subject (optional).
+
+``alt_names``
+ Space-separated list of alternate names for this certificate. These
+ will be encoded as DNS entries in the certificate's X509v3 Subject
+ Alternative Name field.
+
+
+Usage
+-----
+
+Once you have created a configuration file, initialize the CA by
+running::
+
+ $ cam --config=my.config init
+
+This will create the CA certificate and private key, and it will ask
+you to set a passphrase for the key. Pick something secure.
+
+Once this is done, you will be able to generate the certificates
+described in the configuration using the ``cam gen`` command. For
+example, if the configuration defines a certificate with a tag of
+``web``::
+
+ $ cam --config=my.config gen web
+
+The tool will ask you for the CA passphrase, and it will create a
+certificate and a private key in the CA private data directory. You
+can obtain their path with::