multiroot.txt 2.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162
  1. THE MULTIROOTCA PROGRAM
  2. The multirootca program is an authenticated-signer-only server that is
  3. intended to be used as a remote server for cfssl instances. The
  4. scenario it was originally intended for is
  5. + running cfssl as a service on servers to generate keys
  6. + using multirootca as a remote signer to manage the CA keys for
  7. issuing certificates.
  8. The multirootca configuration file is an ini-style configuration file;
  9. various examples can be found in `multirootca/config/testdata`.
  10. [ primary ]
  11. private = file://testdata/server.key
  12. certificate = testdata/server.crt
  13. config = testdata/config.json
  14. nets = 10.0.2.1/24,172.16.3.1/24, 192.168.3.15/32
  15. [ backup ]
  16. private = file://testdata/server.key
  17. certificate = testdata/server.crt
  18. config = testdata/config.json
  19. dbconfig = testdata/db-config.json
  20. This defines two signers, labelled "primary" and "backup". These are
  21. both using the same key, but in practice these keys will be
  22. different. The private key format is described below. The certificate
  23. entry points the certificate PEM file on disk, and the config entry
  24. points to a cfssl configuration file to use for each signer; the
  25. format of this file is described in "cfssl.txt". Optionally, a nets
  26. entry points to a comma-separated list of networks that should be
  27. permitted access to the signer. This list forms a whitelist; if it's
  28. not present, all networks are whitelisted for that signer. A dbconfig
  29. entry points to a certdb configuration file containing database
  30. connection details, see `certdb/README.md`.
  31. SPECIFYING A PRIVATE KEY
  32. Key specification take the form of a URL. There are currently two
  33. supported types of keys:
  34. + private key files: these are specified with the "file://"
  35. protocol. The rest of the URL should specify a path on disk
  36. where the key may be found.
  37. + rofile: these are specified with the "rofile://" protocol. The
  38. path should point to a file that is encrypted using Red October[1].
  39. If this private key type is specified, the following entries must
  40. also be provided:
  41. + ro_server: the hostname:port of the Red October server
  42. + ro_user: the username for the Red October server
  43. + ro_pass: the password for the Red October server
  44. Optionally:
  45. + ro_ca: this can be used to specify a CA roots file to override
  46. the system roots.
  47. [1] https://github.com/cloudflare/redoctober