Estou tentando gerar certificados usando a função vault pki. Como posso criar um único arquivo chamado ca.crt a partir da saída do comando wget.
$ wget --method=POST --header="X-Vault-Namespace: ns" --header="X-Vault-Token: $VAULT_TOKEN" --body-data='{"common_name": "test.example.com", "ttl": "5m"}' https://127.0.0.1:8200/v1/pki/dev/issuing_ca/issue/dev -q -O - | jq '.data.ca_chain'
Response
[
"-----BEGIN CERTIFICATE-----\nMIIF5jCCA86W6j2PehfjWs3\nR55ogX1Z2jk/dvIIp.......Z067gh7nrDE56fzhyA=\n-----END CERTIFICATE-----",
"-----BEGIN CERTIFICATE-----\nMIIF4DCCA8iNzdTHItwqVl1cTglr6bcry0vckey68u+.......4gR0CRtJ\nCaLcNKCBGi/jn6pekNVvgjBamsM=\n-----END CERTIFICATE-----",
"-----BEGIN CERTIFICATE-----\nMIIFMzCCAxnNDE5MTlaFwumZ8\nHL8n10r0b35LtMT........CxSXIjAZJRE8Fh9jOIm0\n-----END CERTIFICATE-----"
]
$ cat ca.crt
-----BEGIN CERTIFICATE-----
MIIF5jCCA86W6j2PehfjWs3
.
.
-----END CERTIFICATE-----
-----BEGIN CERTIFICATE-----
MIIF5jCCA86W6j2PehfjWs3
.
.
-----END CERTIFICATE-----
-----BEGIN CERTIFICATE-----
nMIIF4DCCA8iNzdTHItwqVl1c
.
.
-----END CERTIFICATE-----
Você precisará gerar a saída raw (
-r
) e combinar a matriz em uma única saída ([]
).Não se esqueça
> ca.crt
de gravar a saída em um arquivo .Pelo comentário do OP, para salvar isso em uma variável antes de gravar em um arquivo:
Não se esqueça das aspas (
""
) em torno das variáveis bash, elas são muito importantes neste caso: