112 lines
2.5 KiB
Markdown
112 lines
2.5 KiB
Markdown
# Vault开发环境指南
|
||
|
||
## 1. 概述
|
||
|
||
本文档介绍了如何在开发环境中使用Vault,包括初始化、密钥管理和基本操作。
|
||
|
||
## 2. 开发环境特点
|
||
|
||
- 使用1个解封密钥(简化操作)
|
||
- 所有密钥存储在本地开发目录
|
||
- 适用于快速测试和开发
|
||
|
||
**注意**:此配置仅用于开发环境,生产环境请遵循安全策略文档。
|
||
|
||
## 3. 初始化Vault
|
||
|
||
### 3.1 运行初始化脚本
|
||
```bash
|
||
/root/mgmt/deployment/scripts/init_vault_dev.sh
|
||
```
|
||
|
||
脚本将:
|
||
1. 初始化Vault集群
|
||
2. 生成1个解封密钥和根令牌
|
||
3. 自动解封所有节点
|
||
4. 保存环境变量配置
|
||
|
||
### 3.2 查看密钥信息
|
||
```bash
|
||
/root/mgmt/deployment/scripts/show_vault_dev_keys.sh
|
||
```
|
||
|
||
## 4. 使用Vault
|
||
|
||
### 4.1 设置环境变量
|
||
```bash
|
||
source /root/mgmt/security/secrets/vault/dev/vault_env.sh
|
||
```
|
||
|
||
### 4.2 基本操作示例
|
||
```bash
|
||
# 检查状态
|
||
vault status
|
||
|
||
# 写入密钥值
|
||
vault kv put secret/myapp/config username="devuser" password="devpassword"
|
||
|
||
# 读取密钥值
|
||
vault kv get secret/myapp/config
|
||
```
|
||
|
||
### 4.3 运行完整示例
|
||
```bash
|
||
/root/mgmt/deployment/scripts/vault_dev_example.sh
|
||
```
|
||
|
||
## 5. 目录结构
|
||
|
||
```
|
||
/root/mgmt/security/secrets/vault/dev/
|
||
├── init_keys.json # 初始化密钥(解封密钥和根令牌)
|
||
├── vault_env.sh # 环境变量配置
|
||
```
|
||
|
||
## 6. 重要提醒
|
||
|
||
### 6.1 开发环境限制
|
||
- 仅使用1个解封密钥(生产环境应使用5个密钥中的3个阈值)
|
||
- 密钥存储在本地文件系统(生产环境应分散存储)
|
||
- 适用于单人开发测试
|
||
|
||
### 6.2 生产环境迁移
|
||
当从开发环境迁移到生产环境时:
|
||
1. 重新初始化Vault集群
|
||
2. 使用5个解封密钥中的3个阈值
|
||
3. 将密钥分发给不同管理员
|
||
4. 遵循安全策略文档
|
||
|
||
## 7. 故障排除
|
||
|
||
### 7.1 Vault未初始化
|
||
运行初始化脚本:
|
||
```bash
|
||
/root/mgmt/deployment/scripts/init_vault_dev.sh
|
||
```
|
||
|
||
### 7.2 Vault已初始化但被密封
|
||
使用解封密钥解封:
|
||
```bash
|
||
export VAULT_ADDR='http://<节点IP>:8200'
|
||
vault operator unseal <解封密钥>
|
||
```
|
||
|
||
### 7.3 无法连接到Vault
|
||
检查Vault服务状态:
|
||
```bash
|
||
curl -v http://<节点IP>:8200/v1/sys/health
|
||
```
|
||
|
||
## 8. 清理环境
|
||
|
||
如需重新开始,可以删除密钥文件并重新初始化:
|
||
```bash
|
||
rm -f /root/mgmt/security/secrets/vault/dev/init_keys.json
|
||
/root/mgmt/deployment/scripts/init_vault_dev.sh
|
||
```
|
||
|
||
## 9. 相关文档
|
||
|
||
- [Vault安全策略](vault-security-policy.md) - 生产环境安全指南
|
||
- [Vault官方文档](https://www.vaultproject.io/docs)
|
||
- [Vault API文档](https://www.vaultproject.io/api) |