Skip to content

[Bug]: X5C provisioner is not enabled #2132

@hydratlas

Description

@hydratlas

Steps to Reproduce

sudo apt-get install -y podman &&
if ! id "step-ca" &>/dev/null; then
  sudo useradd --system --no-create-home --user-group --shell /usr/sbin/nologin "step-ca"
fi &&
STEPCA_CONTAINER_DATAPATH="/home/step" &&
PROVISIONER_PASSWORD_FILENAME="provisioner-password" &&
PASSWORD_FILENAME="password" &&
sudo install -o "root" -g "step-ca" -m 775 -d "/opt/step-ca" &&
sudo install -o "step-ca" -g "step-ca" -m 700 -d "/opt/step-ca/secrets" &&
OUT_FILEPATH="/opt/step-ca/secrets/${PROVISIONER_PASSWORD_FILENAME}" &&
sudo -u "step-ca" openssl rand -base64 -out "${OUT_FILEPATH}" 32 &&
sudo chmod 600 "${OUT_FILEPATH}" &&
sudo chown "step-ca:step-ca" "${OUT_FILEPATH}" &&
OUT_FILEPATH="/opt/step-ca/secrets/${PASSWORD_FILENAME}" &&
sudo -u "step-ca" openssl rand -base64 -out "${OUT_FILEPATH}" 32 &&
sudo chmod 600 "${OUT_FILEPATH}" &&
sudo chown "step-ca:step-ca" "${OUT_FILEPATH}" &&
sudo podman run \
  --user "$(id -u step-ca):$(id -g step-ca)" \
  --interactive --tty \
  --userns=keep-id \
  --volume "/opt/step-ca:${STEPCA_CONTAINER_DATAPATH}:Z" \
  docker.io/smallstep/step-ca \
    step ca init \
    --deployment-type="standalone" \
    --name="Private $(hostname)" \
    --dns="$(hostname -A | tr ' ' '\n' | grep -F '.' | paste -sd ',' -),localhost" \
    --address=":8443" \
    --password-file="${STEPCA_CONTAINER_DATAPATH}/secrets/${PASSWORD_FILENAME}" \
    --provisioner="admin" \
    --provisioner-password-file="${STEPCA_CONTAINER_DATAPATH}/secrets/${PROVISIONER_PASSWORD_FILENAME}" \
    --acme \
    --ssh \
    --remote-management &&
sudo podman run \
  --user "$(id -u step-ca):$(id -g step-ca)" \
  --interactive --tty \
  --userns=keep-id \
  --volume "/opt/step-ca:${STEPCA_CONTAINER_DATAPATH}:Z" \
  docker.io/smallstep/step-ca \
    step ca provisioner add x5c-provisioner \
      --type=X5C \
      --x5c-roots "${STEPCA_CONTAINER_DATAPATH}/certs/root_ca.crt" &&
sudo podman run \
  --user "$(id -u step-ca):$(id -g step-ca)" \
  --interactive --tty \
  --userns=keep-id \
  --volume "/opt/step-ca:${STEPCA_CONTAINER_DATAPATH}:Z" \
  docker.io/smallstep/step-ca \
    step version &&
sudo tee "/etc/containers/systemd/step-ca.container" << EOS > /dev/null &&
[Container]
Image=docker.io/smallstep/step-ca
ContainerName=step-ca
AutoUpdate=registry
LogDriver=journald

PublishPort=8443:8443
Volume=/opt/step-ca:${STEPCA_CONTAINER_DATAPATH}:Z
User=$(id -u step-ca)
Group=$(id -g step-ca)
UserNS=keep-id

[Service]
Restart=on-failure

[Install]
WantedBy=multi-user.target
EOS
sudo systemctl daemon-reload &&
sudo systemctl start step-ca.service &&
wget --no-check-certificate -O - https://localhost:8443/provisioners

Your Environment

  • OS - Ubuntu 24.04
  • step-ca Version - Smallstep CLI/0.28.2 (linux/amd64) Release Date: 2024-11-20 19:14 UTC

Expected Behavior

The information displayed at https://localhost:8443/provisioners includes X5C provisioner.

Actual Behavior

The information displayed at https://localhost:8443/provisioners does not include X5C provisioner.

Additional Context

{"provisioners":[{"type":"ACME","name":"acme","options":{"x509":{},"ssh":{}}},{"type":"SSHPOP","name":"sshpop","claims":{"enableSSHCA":true,"disableRenewal":false,"allowRenewalAfterExpiry":false,"disableSmallstepExtensions":false}},{"type":"JWK","name":"admin","key":{"use":"sig","kty":"EC","kid":"kw9de20b1cQCYgdX8-y6LbUyTD1CrISEVcSG06fDsVk","crv":"P-256","alg":"ES256","x":"v5V2DvuKzCxZYtc9TOxRo8bXsCLCpiD2HtX_rTNsVTc","y":"-uSWMw4PjC34uGOTmdynql4356CkzMBxXJXx9D2PmyY"},"encryptedKey":"eyJhbGciOiJQQkVTMi1IUzI1NitBMTI4S1ciLCJjdHkiOiJqd2sranNvbiIsImVuYyI6IkEyNTZHQ00iLCJwMmMiOjYwMDAwMCwicDJzIjoiN0ZPam9HNWdnbnRsZU9sUlhBUVhPQSJ9.BcB3UY2Im1-3SD4rLR-fWipi2rZuGStT8NkgFnuMLc-V2rLnLck7rQ.uMadBxpjeepySQ5_.zQvKbCFiXc1I8STCrwmp1QaI8yU9w7WchupH2pYOoqvQu9Tc-kjtpe0RS2WKf9y7rHuAVEb8zkh43cPtsE3WFrrU9dCmbJ-ivkyCa3kxe-dk1v8fZRzNadIDog6152bPyxULQnIeA0nsUcUurlJ-T4NgS9O49zJjOZTkYYcoxmOJhZ5dsqIFtExradMKMzOJTUm5GgQ-By0FZ9OEvcLmxQWe534Tiyqra67Vr1vZY7Ay0Pg-Udf4EVHhqACP-KtieIBim5HVtJ5BIOWxuc410FuQeuG7EYEnfEaeEswNUn_nkoqaq5iaeioQlGvr9fEI1AeBEQg_sM8gem77Jxo.vojOeMfR3x1xUcG4afoPCA","claims":{"enableSSHCA":true,"disableRenewal":false,"allowRenewalAfterExpiry":false,"disableSmallstepExtensions":false},"options":{"x509":{},"ssh":{}}}],"nextCursor":""}

Contributing

Vote on this issue by adding a 👍 reaction.
To contribute a fix for this issue, leave a comment (and link to your pull request, if you've opened one already).

Metadata

Metadata

Assignees

Labels

needs triageWaiting for discussion / prioritization by team

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions