LoginSignup
0
0

More than 5 years have passed since last update.

Vault: 検証用に非 Dev モードでサーバを起動する

Last updated at Posted at 2018-05-16

はじめに

Vault サーバを検証用途で利用目的で簡易的にサーバを立ち上げる Dev モードが容易されていますが、Dev モードでは TLS が無効になっています。それはそれで都合がよいのですが、TLS を利用して検証したいときには不便です。

自己証明書の作成からコンテナを利用して非 Dev モードで Vault サーバを起動する手順を残します。

手順

$ brew install cfssl
$ echo '{"CN":"CA","key":{"algo":"rsa","size":2048}}' | cfssl gencert -initca - | cfssljson -bare ca -
$ echo '{"signing":{"default":{"expiry":"43800h","usages":["signing","key encipherment","server auth","client auth"]}}}' > ca-config.json
$ export ADDRESS=127.0.0.1,localhost
$ export NAME=server
$ echo '{"CN":"'$NAME'","hosts":[""],"key":{"algo":"rsa","size":2048}}' | cfssl gencert -config=ca-config.json -ca=ca.pem -ca-key=ca-key.pem -hostname="$ADDRESS" - | cfssljson -bare $NAME
$ cat <<EOL > config.hcl
storage "inmem" {}

listener "tcp" {
    address = "0.0.0.0:8200"
    tls_cert_file = "/data/server.pem"
    tls_key_file  = "/data/server-key.pem"
}
EOL
$ docker run --name vault -d -p 8200:8200 -v $(pwd):/data --cap-add=IPC_LOCK vault server -config /data/config.hcl
$ export VAULT_CACERT=$(pwd)/ca.pem
$ vault operator init -key-shares=1 -key-threshold=1
$ vault operator unseal $UNSEAL_KEY
$ vault login $ROOT_TOKEN
$ vault kv put secret/password -value=mypassword
$ vault kv get secret/password
$ docker kill vault

参照

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0