私は Hashicorp vault をシークレット ストアとして使用しており、Ubuntu 20.04 の apt リポジトリ経由でインストールしました。
その後、UI にアクセスするためのルート キーを追加し、UI を使用してシークレットを追加または削除できるようになりました。
コマンドラインを使用してシークレットを追加または取得しようとすると、次のエラーが発生します。
jarvis@saki:~$ vault kv get secret/vault
Get "https://127.0.0.1:8200/v1/sys/internal/ui/mounts/secret/vault": http: server gave HTTP response to HTTPS client
私の Vault 構成は次のようになります:
# Full configuration options can be found at https://www.vaultproject.io/docs/configuration
ui = true
#mlock = true
#disable_mlock = true
storage "file" {
path = "/opt/vault/data"
}
#storage "consul" {
# address = "127.0.0.1:8500"
# path = "vault"
#}
# HTTP listener
#listener "tcp" {
# address = "127.0.0.1:8200"
# tls_disable = 1
#}
# HTTPS listener
listener "tcp" {
address = "0.0.0.0:8200"
tls_cert_file = "/opt/vault/tls/tls.crt"
tls_key_file = "/opt/vault/tls/tls.key"
}
# Example AWS KMS auto unseal
#seal "awskms" {
# region = "us-east-1"
# kms_key_id = "REPLACE-ME"
#}
# Example HSM auto unseal
#seal "pkcs11" {
# lib = "/usr/vault/lib/libCryptoki2_64.so"
# slot = "0"
# pin = "AAAA-BBBB-CCCC-DDDD"
# key_label = "vault-hsm-key"
# hmac_key_label = "vault-hsm-hmac-key"
#}
ベストアンサー1
問題を修正しました。例外は複数の類似した問題に共通している可能性がありますが、次のコマンドを実行した後に生成されたルート トークンをエクスポートすることで問題を修正しました。
vault server -dev
出力は次のようになります
...
You may need to set the following environment variable:
$ export VAULT_ADDR='http://127.0.0.1:8200'
The unseal key and root token are displayed below in case you want to
seal/unseal the Vault or re-authenticate.
Unseal Key: 1+yv+v5mz+aSCK67X6slL3ECxb4UDL8ujWZU/ONBpn0=
Root Token: s.XmpNPoi9sRhYtdKHaQhkHP6x
Development mode should NOT be used in production installations!
...
次に、次のコマンドを実行してこれらの変数をエクスポートします。
export VAULT_ADDR='http://127.0.0.1:8200'
export VAULT_TOKEN="s.XmpNPoi9sRhYtdKHaQhkHP6x"
注: 「s.XmpNPoi9sRhYtdKHaQhkHP6x」を、上記のコマンドの出力として受け取ったトークンに置き換えます。
次に、次のコマンドを実行してステータスを確認します。
vault status
繰り返しになりますが、エラー メッセージはさまざまな問題で類似している場合があります。