...
As there are two different types of certificates, there are two individual tasks to setup a client.
- Host Certificate
- Client Certificate
If one would like to use only one certificate, execute the corresponding tasksubtask.
Configuration paths
There are two different options to tell the ssh daemon about the certificate: 'user based'
(recommended) or 'global'
'user based'
: The certificate is valid for one specific user on the client.Code Block language bash SSH_CERTIFICATES=$HOME/.ssh/netdef SSH_CONFIG=$HOME/.ssh/config SSH_KNOWNHOSTS=$HOME/.ssh/known_hosts
'global
': The certificate is valid for each user on the client.Code Block language bash SSH_CERTIFICATES=/etc/ssh/netdef SSH_CONFIG=/etc/ssh/ssh_config SSH_KNOWNHOSTS=/etc/ssh/ssh_known_hosts
2
...
Step 1 - Setup cert-authority
To setup the host certificate the public key of the CA authority is needed. There are three public keys called 'yubikey1.pub'
, 'yubikey2.pub'
and 'yubikey3.pub'
.
Add the following line to '
$SSH_KNOWNHOSTS'
where 'yubikeyX.pub'
must be replaced with the public key stored in 'yubikeyX.pub'
.
Code Block | ||
---|---|---|
| ||
@cert-authority *.netdef.org `yubikey1.pub`
@cert-authority *.netdef.org `yubikey2.pub`
@cert-authority *.netdef.org `yubikey3.pub` |
...
- Client Certificate
Step 1 - Sign client's public key
...