Skip to content

Configuration file reference

Michal Altair Valasek edited this page Feb 14, 2017 · 7 revisions

The autoacme.exe and aasync.exe utilities will use file autoacme.json in the same folder unless specified otherwise with the /cfg:filename switch. This file contains both the configuration and database of managed hosts.

The file is usually created with autoacme initcfg command, which will guide you trough the process and set most of the values. Some options could be set only by editing the file though.

Example of configuration file

{
  "EmailAddress": "[email protected]",
  "ChallengeFolder": "C:\\InetPub\\wwwroot\\AutoACME",
  "PfxFolder": "C:\\CertStore\\PFX",
  "PfxPassword": "topsecret",
  "PemFolder": null,
  "ServerUri": "https://acme-v01.api.letsencrypt.org/directory",
  "ChallengeVerificationRetryCount": 10,
  "ChallengeVerificationWaitSeconds": 5,
  "RenewDaysBeforeExpiration": 30,
  "PurgeDaysAfterExpiration": 30,
  "AutoSaveConfigBackup": true,
  "Hosts": [
    {
      "CommonName": "www.example.com",
      "SerialNumber": "031E9C90C5205CE217A5E78AFC8A091562E9",
      "Thumbprint": "7D2929188562565F7887E50C634759A0E5939C62",
      "NotBefore": "2017-01-15T18:12:00+01:00",
      "NotAfter": "2017-04-15T19:12:00+02:00"
    },
    {
      "CommonName": "www.example.org",
      "SerialNumber": "033324C4F7E46E89C6BC2680D17C884752A6",
      "Thumbprint": "F79BAB02A73A0F8E7078383E256AD46A64AFC3F7",
      "NotBefore": "2017-01-17T14:50:00+01:00",
      "NotAfter": "2017-04-17T15:50:00+02:00"
    }
  ]
}

Options to be set

EmailAddress

E-mail address used for communication with the certificate authority. Is used by CA for notification about certificate expiration etc.

ChallengeFolder

Folder where the challege files are supposed to be placed. Default C:\InetPub\wwwroot\AutoACME. Please note: when writing JSON, the backslashes are to be doubled for escaping, ie. C:\\InetPub\\wwwroot\\AutoACME.

PfxFolder

Folder where the resulting PFX files are stored. Default C:\CertStore\PFX. If set to null, no PFX files are generated. Typically, Centralized Certificate Store is pointed to this folder. Please note: when writing JSON, the backslashes are to be doubled for escaping, ie. C:\\CertStore\\PFX.

PfxPassword

Password for additional protection of PFX files. Do not use valuable password here, as it's stored in plain text.

PemFolder

Folder where the resulting CRT and PEM files are stored, ie. C:\CertStore\PEM. If set to null, no CRT and PEM files are generated. Option to create CRT and PEM files is intended for server software without PFX support. Please note: when writing JSON, the backslashes are to be doubled for escaping, ie. C:\\CertStore\\PEM.

ServerUri

The URI of the ACME server directory. Default is https://acme-v01.api.letsencrypt.org/directory, which is Let's Encrypt production endpoint.

ChallengeVerificationRetryCount

Number of retries when asking for challenge verification. Default is 10.

ChallengeVerificationWaitSeconds

Number of seconds to wait between the challenge verification attempts. Default is 5 seconds.

RenewDaysBeforeExpiration

Number of days before expiration when certificates are going to be renewed. Default is 30 days.

PurgeDaysAfterExpiration

Number of days after expiration when unrenewed certificates are deleted. Default is 30 days.

AutoSaveConfigBackup

When set to true (default), old version of configuration file is saved with .old suffix (ie. autoacme.json.old).

Hosts collection

You are not supposed to edit this part of file manually. It contains list of hosts managed by AutoACME. The hosts have the following properties:

  • CommonName - the common name (hostname) of certificate.
  • SerialNumber - the certificate serial Number.
  • Thumbprint - SHA-1 thumbprint of the certificate.
  • NotBefore and NotAfter - certificate validity periods.

Values stored in this collection are used to determine when the certificate should be renewed.

Clone this wiki locally