step ssh rekey – rekey a SSH certificate using the SSH CA


step ssh rekey ssh-cert ssh-key [–out=file] [–issuer=name] [–password-file=path] [–force] [–ca-url=uri] [–root=path] [–offline] [–ca-config=path]


step ssh rerekey command generates a new SSH Certificate and key using an existing SSH Cerfificate and key pair to authenticate and templatize the request. It writes the new certificate to disk - either overwriting ssh-cert or using new files when the –out=file flag is used.


The ssh certificate to renew.
The ssh certificate private key.


The new key file path. Defaults to overwriting the ssh-cert positional argument.
–provisioner=name, –issuer=name
The provisioner name to use.
The path to the file containing the password to decrypt the one-time token generating key.
Do not ask for a password to encrypt a private key. Sensitive key material will be written to disk unencrypted. This is not recommended. Requires –insecure flag.
-f, –force
Force the overwrite of files without asking.
URI of the targeted Step Certificate Authority.
The path to the PEM file used as the root certificate authority.
Creates a certificate without contacting the certificate authority. Offline mode uses the configuration, certificates, and keys created with step ca init, but can accept a different configuration file using ‘–ca-config`’ flag.
The path to the certificate authority configuration file. Defaults to $STEPPATH/config/ca.json
Certificate (chain) in PEM format to store in the ‘sshpop’ header of a JWT.
Private key path, used to sign a JWT, corresponding to the certificate that will be stored in the ‘sshpop’ header.


Rekey an ssh certificate:

$ step ssh rekey id_ecdsa

Rekey an ssh certificate creating id2_ecdsa,, and

$ step ssh rekey --out id2_ecdsa id_ecdsa