반응형

Ubuntu에 설치

설치 스크립트

curl -fsSL https://apt.releases.hashicorp.com/gpg | sudo apt-key add - \
&& sudo apt-add-repository "deb [arch=amd64] https://apt.releases.hashicorp.com $(lsb_release -cs) main" \
&& sudo apt update \
&& sudo apt install vault

디렉토리 생성

mkdir -p /home/ubuntu/vault/config /home/ubuntu/vault/file

config.hcl 생성

vi /home/ubuntu/vault/config/config.hcl
ui = true
api_addr = "http://192.168.56.11:8200" # vault 서버 주소

listener "tcp" {
    address = "0.0.0.0:8200"
    tls_disable = "true"
}

storage "file" {
    path = "/home/ubuntu/vault/file"
}

실행

vault server -config=/home/ubuntu/vault/config/config.hcl

Docker로 설치

docker-compose.yaml

version: "3.3"
volumes:
  vault_data: { }
services:
  vault:
    image: vault
    container_name: vault
    volumes:
      - ./config:/vault/config
      - vault_data:/vault/file
    ports:
      - "8200:8200"
    cap_add:
      - IPC_LOCK
    command: vault server -config=/vault/config/config.hcl

config.hcl

경로 : ./config/config.hcl

ui = true
api_addr = "http://192.168.56.11:8200" # vault 서버 주소
disable_mlock = true

listener "tcp" {
    address = "0.0.0.0:8200"
    tls_disable = "true"
}

storage "file" {
    path = "/vault/file"
}

실행

docker-compose up -d

Web UI 접속

Web UI 접속

URL : http://192.168.56.11:8200

initialize

  • Key shares : 1
  • Key threshold : 1
  • initialize 클릭

Unseal

Download keys를 눌러 키 정보가 담긴 json 파일 다운로드

json 파일 내용

{
  "keys": [
    "731fc9841ed1f9b5dc2e01448bf5a6b5f8a6704311f9530218e41627eb27279e"
  ],
  "keys_base64": [
    "cx/JhB7R+bXcLgFEi/WmtfimcEMR+VMCGOQWJ+snJ54="
  ],
  "root_token": "hvs.EwyXMoRXoseiVXke0TdXiDYe"
}

Continue to Unseal 버튼 클릭

Unseal Key Portion에 json 파일의 keys 값을 입력

Unseal 버튼 클릭

Sign In

Token에 json 파일의 root_token 값을 입력

Sign In 버튼 클릭

profile 설정(vault cli 명령을 사용하고 싶을 경우)

profile 설정 없이 vault 커맨드 실행할 경우 아래 오류가 발생.

ubuntu@ubuntu:~$ vault status
Error checking seal status: Get "https://127.0.0.1:8200/v1/sys/seal-status": http: server gave HTTP response to HTTPS client

vault 커맨드 실행을 위해 아래처럼 profile 설정을 진행해야함.

vi ~/.profile

아래 내용 하단에 추가 후 저장

export VAULT_ADDR="http://127.0.0.1:8200"
export VAULT_TOKEN="hvs.EwyXMoRXoseiVXke0TdXiDYe"

아래 명령 실행해서 .profile 적용

source ~/.profile

설정 완료 후 vault 커맨드 실행

ubuntu@ubuntu:~$ vault status
Key             Value
---             -----
Seal Type       shamir
Initialized     true
Sealed          false
Total Shares    1
Threshold       1
Version         1.12.2
Build Date      2022-11-23T12:53:46Z
Storage Type    file
Cluster Name    vault-cluster-31869f75
Cluster ID      621950d5-2e26-3dfc-9e7c-92eb1f0900bb
HA Enabled      false

참고

 

반응형

'Development > Vault' 카테고리의 다른 글

[Vault] Spring 연동  (0) 2023.01.14
[Vault] Secret Key 추가  (0) 2023.01.14

+ Recent posts