Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Next revision
Previous revision
sw:vault [2023/06/30 09:13]
tomas created
sw:vault [2024/05/09 13:58] (current)
tomas
Line 1: Line 1:
 ====== HashiCorp Vault ====== ====== HashiCorp Vault ======
 +
 +
 +==== URL ====
 +https://SERVER.cz:8200/ui/vault/storage/raft ... ukáže seznam nodá a který je aktivní\\
 +/v1/sys/health ... stav o zdraví služby\\
  
  
 ==== CLI ==== ==== CLI ====
 +**[[https://developer.hashicorp.com/vault/docs/commands|Proměnné prostředí]]**
 +VAULT_TOKEN ... token pro autorizaci\\
 +VAULT_SKIP_VERIFY ... ignoruje nevalidní certifikát\\
 +VAULT_ADDR=https://aaa.bbb.ccc ... nastavení URL pro vault server\\
 +
 +== systém ==
 +vault secret list ... seznam včech secret enginu\\
 +vault list auth/token/accessors ... seznam všech tokenů\\
 +vault list identity/entity/id ... seznam entit\\
 +vault list identity/entity/id ... seznam entit\\
 +vault list identity/entity-alias/id ... seznam entit\\
 +vault auth list ... seznam authentikačních mechanizmů\\
 +vault auth enable -path="userpass-test" userpass ... povolí authentifikaci userpass\\
 +vault login -method=userpass user=tomas ... přihlášení pomocí userpass\\
 +vault policy list ... seznam policy\\
 +vault policy read aaa ... ukáže definici policy aaa\\
 +vault token capabilities secret/data/training_test ... informace o možnostech tokenu na daný objekt\\
 +vault write -format=json identity/entity name="bob-smith" policies="base" metadata=organization="ACME Inc."  metadata=team="QA" ... vatvoří entitu\\
 +vault write identity/entity-alias name="bob" canonical_id=$(cat entity_id.txt)  mount_accessor=$(cat accessor_test.txt)  custom_metadata=account="Tester Account" ... vytvoří entity alias\\
 +
  
- vault kv get -field config aaa/bbb/ccc ... vratí hodnotu pro klíc config v cestě aaa/bbb/ccc \\+== Práce se secretama a hodnotama == 
 +vault kv delete aaa/bbb/ccc ... smaže hodnoty pro secret\\ 
 +vault kv get -field config aaa/bbb/ccc ... vratí hodnotu pro klíc config v cestě aaa/bbb/ccc \\
 vault kv get -format=json  ... výstup ve formě json\\ vault kv get -format=json  ... výstup ve formě json\\
 +vault kv list java/list ... seznam secretů/složek\\
 +vault kv metadata get java/list ... získá informace o složce včetně metadat\\
 +vault kv metadata delete java/aaa ... smaže secret (složku)\\
 +vault auth list ... seznam policy?\\
 +vault read auth/token/lookup-self ... informace o tokenu\\
 +vault read sys/policy\\
  
 +== Práce s Vault službou ==
 +VAULT_TOKEN=aaa vault operator step-down ... tento node přestane být hlavní node\\
 +vault status -tls-skip-verify ... vypíše status služby, nekontroluje certifikáty\\
 +vault operator unseal ... odblokuje node z maintenance modu\\
 +vault operator rekey -init -key-shares=5  -key-treshold=3 ... vydá nonce kód nutný pro rotaci unseal hesel a root hesla\\
 +vault operator rekey -nonce=aaaaa ... spustí se tolikrát, kolik je treshold, zadají je unikátní klíče a poté se vygenerují nové unseal klíče a operation nonce klíč pro generování root klíče\\
 +vault operator generate-root ... zadají se 3 unseal klíče a vygeneruje se nový root klíč\\
  
 +== Vault v Dockeru, backup/restore ==
 +docker volume create vault-volume\\
 +%%docker run --rm -it --name vault_local --cap-add=IPC_LOCK -e VAULT_ADDR='http://0.0.0.0:8200' -e 'VAULT_LOCAL_CONFIG={"storage": {"raft": {"path": "/vault/"}}, "listener": [{"tcp": { "address": "0.0.0.0:8200", "tls_disable": true}}], "default_lease_ttl": "168h", "max_lease_ttl": "720h", "ui": true, "cluster_addr": "http://127.0.0.1:8201", "api_addr": "http://0.0.0.0:8200"}' -p 8200:8200 -v vault-volume:/vault hashicorp/vault:1.14.10 server%%\\
 +docker cp vault-snap/vault-raft-2023-11-24-14-45-00.snapshot vault_local:/tmp\\
 +docker exec -it vault_local /bin/sh\\
 +vault status\\
 +vault operator init\\
 +vault operator unseal -tls-skip-verify\\
 +vault login\\
 +vault operator raft snapshot restore -force /tmp/vault-raft-2023-10-09-23-45-00.snapshot\\
 +vault operator unseal -tls-skip-verify\\