Configuring CRL - dogtagpki/pki GitHub Wiki

CRL Configuration Parameters

ca.crl.pageSize=100

ca.crl.MasterCRL.enable=true
ca.crl.MasterCRL.class=com.netscape.ca.CRLIssuingPoint
ca.crl.MasterCRL.description=CA's complete Certificate Revocation List

# Enable CRL generation
ca.crl.MasterCRL.enableCRLUpdates=true

# Generate full CRL every <value> delta(s).
ca.crl.MasterCRL.updateSchema=1

# Extend next update time in full CRLs
ca.crl.MasterCRL.extendedNextUpdate=true

# Every time a certificate is revoked or released from hold
ca.crl.MasterCRL.alwaysUpdate=false

# Update CRL at
ca.crl.MasterCRL.enableDailyUpdates=true
ca.crl.MasterCRL.dailyUpdates=1:00

# Update CRL every <value> minutes
ca.crl.MasterCRL.enableUpdateInterval=true
ca.crl.MasterCRL.autoUpdateInterval=240

# Next update grace period <value> minutes
ca.crl.MasterCRL.nextUpdateGracePeriod=0

# Enable CRL cache:
ca.crl.MasterCRL.enableCRLCache=true

# Save cache every <value> minutes
ca.crl.MasterCRL.cacheUpdateInterval=15

# Enable cache recovery:
ca.crl.MasterCRL.enableCacheRecovery=true

# Enable CRL cache testing:
ca.crl.MasterCRL.enableCacheTesting=false

# Revocation list signing algorithm:
ca.crl.MasterCRL.signingAlgorithm=SHA256withRSA

# Allow extensions for CRLs v2:
ca.crl.MasterCRL.allowExtensions=true

# Include expired certificates
ca.crl.MasterCRL.includeExpiredCerts=false

# CA certificates only
ca.crl.MasterCRL.caCertsOnly=false

# Certificates issued according to profiles:
ca.crl.MasterCRL.profileCertsOnly=false

ca.crl.MasterCRL.unexpectedExceptionWaitTime=30
ca.crl.MasterCRL.unexpectedExceptionLoopMax=10
ca.crl.MasterCRL.minUpdateInterval=0
ca.crl.MasterCRL.publishOnStart=false
ca.crl.MasterCRL.saveMemory=false

By default CRL will be generated even if there’s no revoked certificate:

ca.crl.MasterCRL.noCRLIfNoRevokedCert=false

Default CRL Configuration Parameters

CRL in primary CA is enabled by default with the following parameters:

ca.crl.MasterCRL.enable=true
ca.crl.MasterCRL.description=CA's complete Certificate Revocation List
ca.crl.MasterCRL.class=com.netscape.ca.CRLIssuingPoint

ca.crl.MasterCRL.allowExtensions=true
ca.crl.MasterCRL.caCertsOnly=false

ca.crl.MasterCRL.enableCRLUpdates=true
ca.crl.MasterCRL.alwaysUpdate=false
ca.crl.MasterCRL.enableUpdateInterval=true
ca.crl.MasterCRL.autoUpdateInterval=240
ca.crl.MasterCRL.enableDailyUpdates=true
ca.crl.MasterCRL.dailyUpdates=1:00
ca.crl.MasterCRL.extendedNextUpdate=true

ca.crl.MasterCRL.enableCRLCache=true
ca.crl.MasterCRL.cacheUpdateInterval=15
ca.crl.MasterCRL.enableCacheRecovery=true
ca.crl.MasterCRL.enableCacheTesting=false

CRL in CA replica is disabled by default with the following parameters:

ca.crl.MasterCRL.enable=true
ca.crl.MasterCRL.description=CA's complete Certificate Revocation List
ca.crl.MasterCRL.class=com.netscape.ca.CRLIssuingPoint

ca.crl.MasterCRL.allowExtensions=true
ca.crl.MasterCRL.caCertsOnly=false

ca.crl.MasterCRL.enableCRLUpdates=false
ca.crl.MasterCRL.alwaysUpdate=false
ca.crl.MasterCRL.enableUpdateInterval=true
ca.crl.MasterCRL.autoUpdateInterval=240
ca.crl.MasterCRL.enableDailyUpdates=true
ca.crl.MasterCRL.dailyUpdates=1:00
ca.crl.MasterCRL.extendedNextUpdate=true

ca.crl.MasterCRL.enableCRLCache=false
ca.crl.MasterCRL.cacheUpdateInterval=15
ca.crl.MasterCRL.enableCacheRecovery=true
ca.crl.MasterCRL.enableCacheTesting=false

ca.certStatusUpdateInterval=0
ca.listenToCloneModifications=false

Enabling CRL

To enable CRL:

$ pki-server ca-config-set ca.crl.MasterCRL.enable true
$ pki-server ca-config-set ca.crl.MasterCRL.enableCRLCache true
$ pki-server ca-config-set ca.crl.MasterCRL.enableCRLUpdates true
$ pki-server ca-config-set ca.transitRecordPageSize 200
$ pki-server ca-config-set ca.transitMaxRecords 1000000
$ pki-server ca-config-set ca.certStatusUpdateInterval 600

To enable delta CRL:

$ pki-server ca-config-set ca.crl.MasterCRL.extension.DeltaCRLIndicator.enable true

The server must be restarted.

Disabling CRL

To disable CRL:

$ pki-server ca-config-set ca-config-set ca.certStatusUpdateInterval 0
$ pki-server ca-config-set ca-config-set ca.listenToCloneModifications false
$ pki-server ca-config-set ca-config-set ca.crl.MasterCRL.enableCRLCache false
$ pki-server ca-config-set ca-config-set ca.crl.MasterCRL.enableCRLUpdates false

The server must be restarted.

Configuring CRL Number

To change the CRL number, execute the following command:

$ ldapmodify -x -D "cn=Directory Manager" -w Secret.123 << EOF
dn: cn=MasterCRL,ou=crlIssuingPoints,ou=ca,dc=ca,dc=pki,dc=dc=example,dc=com
changetype: modify
replace: crlNumber
crlNumber: <CRL number>
EOF

Then restart the server.

Configuring CRL Update Frequency

See Configuring CRL Update Frequency.

Configuring CRL Extensions

See Configuring CRL Extensions.

See Also

⚠️ **GitHub.com Fallback** ⚠️