Skip to content

Commit d6ae848

Browse files
docs: document what the certificate commands actually do
The management guide promised that status without a nickname reports aggregate health; it only succeeds when a single certificate is enrolled and otherwise asks which one to report on. It also did not mention that an online verification whose revocation check did not complete is reported as UNKNOWN. The troubleshooting guide gains the inspection commands, which exist as of this change. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
1 parent 518220c commit d6ae848

2 files changed

Lines changed: 23 additions & 1 deletion

File tree

docs/how-to/certificates/manage.md

Lines changed: 13 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -78,7 +78,7 @@ Certificate 'galacticcafe-CA.Machine.a1b2c3d4e5f6':
7878

7979
## Check certificate status
8080

81-
Use `status` to check the health of one certificate or, without a nickname, the overall health of all enrolled certificates. Use `--format json` when integrating with monitoring tools.
81+
Use `status` to check the health of one certificate. The nickname can be omitted only when a single certificate is enrolled; with several enrolled, the command lists their nicknames and asks for one. Use `--format json` when integrating with monitoring tools.
8282

8383
```output
8484
> sudo adsysctl certificate status galacticcafe-CA.Machine.a1b2c3d4e5f6
@@ -119,6 +119,18 @@ Certificate 'galacticcafe-CA.Machine.a1b2c3d4e5f6': PASS
119119
revoked: no
120120
```
121121

122+
With `--online`, a revocation check that did not complete is reported as `UNKNOWN` rather than `PASS`, and the command exits nonzero: the certificate is not known to be revoked, but it is not known to be valid either.
123+
124+
```output
125+
> sudo adsysctl certificate verify galacticcafe-CA.Machine.a1b2c3d4e5f6 --online
126+
Certificate 'galacticcafe-CA.Machine.a1b2c3d4e5f6': UNKNOWN
127+
chain: yes
128+
validity: yes
129+
key matches certificate: yes
130+
revoked: unknown
131+
- could not fetch CRL from http://ca01.galacticcafe.com/crl/galacticcafe-CA.crl: connection refused
132+
```
133+
122134
## Renew a certificate
123135

124136
Use `renew` to force re-enrollment immediately, bypassing the normal renewal window (30 days before expiry, bounded to a third of the certificate lifetime). Renewal generates a fresh private key, so this is also a rekey operation. Use `--all` to renew every enrolled certificate.

docs/how-to/certificates/troubleshoot.md

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,16 @@ With the native LDAP method, certificates enrolled by ADSys are machine-scoped a
3232

3333
The enrollment state at `/var/lib/adsys/certs/state_$(hostname).<object-id>.json` records the CA, template and file paths of every enrolled certificate, and `openssl x509 -noout -text -in <certificate>` inspects the certificate itself.
3434

35+
`adsysctl certificate` reports the same information without reading those files by hand; see {ref}`howto::certificates-manage`. `list`, `status` and `verify` diagnose an enrollment, and `verify --online` additionally attempts a CRL revocation check:
36+
37+
```output
38+
> sudo adsysctl certificate verify galacticcafe-CA.Machine.a1b2c3d4e5f6
39+
Certificate 'galacticcafe-CA.Machine.a1b2c3d4e5f6': PASS
40+
chain: yes
41+
validity: yes
42+
key matches certificate: yes
43+
```
44+
3545
With the legacy CEPCES method, certificates are managed by `certmonger`. While not encouraged, they can be manipulated with the same tool. This could be helpful for debugging purposes.
3646

3747
```output

0 commit comments

Comments
 (0)