和我一起学vault
1.安装配置
wget -O - https://apt.releases.hashicorp.com/gpg | sudo gpg --dearmor -o /usr/share/keyrings/hashicorp-archive-keyring.gpg
echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/hashicorp-archive-keyring.gpg] https://apt.releases.hashicorp.com $(grep -oP '(?<=UBUNTU_CODENAME=).*' /etc/os-release || lsb_release -cs) main" | sudo tee /etc/apt/sources.list.d/hashicorp.list
sudo apt update && sudo apt install vault
# /etc/vault.d/vault.hcl
ui = true
# vault后端支持: 1.文件存储 2.consul的配置中心
storage "file" {
path = "/opt/vault/data"
}
listener "tcp" {
address = "0.0.0.0:8200"
tls_cert_file = "/opt/vault/tls/tls.crt"
tls_key_file = "/opt/vault/tls/tls.key"
}
这里使用vault的默认配置。默认情况下,Vault会在8200端口开启UI界面,首次打开页面需要进行初始化,需要设置Shamir密钥共享的参数。(1.master主密钥的分片数量 2.解封阈值) 设置成功后,Vault将生成root令牌以及关于master密钥的全部分片,随后只需要输入设置阈值的数量的分片密钥即可以解封数据,开启系统。

如上图所示,在Vault中,原始数据使用数据加密密钥DEK进行加密存储,数据加密密钥使用主密钥加密保存(密码学中的信封加密)。 主密钥仅存在于内存中,一旦Vault重启,主密钥即消失,只能通过Shamir分片密钥重构主密钥
基本操作
Vault是一个基于插件的开放式系统,它使用被称为机密引擎Secrets Engine的插件来操作不同系统的机密信息
vault plugin list secret
Name Version
---- -------
ad v0.21.0+builtin
alicloud v0.21.0+builtin
aws v1.21.3+builtin.vault
azure v0.23.0+builtin
consul v1.21.3+builtin.vault
gcp v0.23.0+builtin
gcpkms v0.22.0+builtin
kubernetes v0.12.0+builtin
kv v0.25.0+builtin
ldap v1.21.3+builtin.vault
mongodbatlas v0.16.0+builtin
nomad v1.21.3+builtin.vault
openldap v0.17.0+builtin
pki v1.21.3+builtin.vault
rabbitmq v1.21.3+builtin.vault
ssh v1.21.3+builtin.vault
terraform v0.13.0+builtin
totp v1.21.3+builtin.vault
transit v1.21.3+builtin.vault





