You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Hashicorp Vault配置加固问题:VAULT_SKIP_VERIFY=true仍可无token访问

Hashicorp Vault 配置加固方案

1. 先修复配置文件语法错误

你提供的vault-config.json存在明显语法问题:tls_cert_file字段末尾缺少闭合双引号,导致配置无法正确加载,Vault会 fallback 到不安全的默认状态(比如自动生成临时证书、甚至跳过TLS校验)。修正后该字段应为:

"tls_cert_file": "/path/to/fullchain.pem",

2. 解决无需Token即可访问数据的问题

默认情况下,Vault初始化并unseal后,所有业务数据端点都需要有效Token才能访问。出现无权限访问的情况,排查以下几点:

  • Vault未完成初始化:如果还没执行vault operator init,此时所有操作无需认证,属于极度危险状态,立即执行初始化并妥善保管unseal密钥和root token。
  • 存在宽松匿名Policy:检查是否有允许无认证访问的Policy:
    vault policy list
    vault policy read <可疑策略名>
    
    若发现path "*" { capabilities = ["read", "list"] }这类规则,立即删除或修改。
  • 环境变量默认Token:检查终端是否设置了VAULT_TOKEN:
    echo $VAULT_TOKEN
    
    若有值,执行unset VAULT_TOKEN清空。
  • 认证方法未启用:确认token认证是否正常启用:
    vault auth list
    
    若没有token/条目,执行vault auth enable token启用。

3. 加固TLS,阻止VAULT_SKIP_VERIFY=true的不安全连接

VAULT_SKIP_VERIFY是客户端侧设置,但可以从服务端强制双向TLS校验,彻底阻断不安全连接:

  • 在TCP listener配置中添加双向TLS字段:
    "tls_client_ca_file": "/path/to/ca-cert.pem",
    "tls_require_and_verify_client_cert": true
    
    只有携带指定CA签发的客户端证书的请求才能通过校验,即使客户端设置VAULT_SKIP_VERIFY也无效。
  • 限制TLS版本与加密套件:
    "tls_min_version": "tls13",
    "tls_max_version": "tls13",
    "tls_cipher_suites": "TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384,TLS_ECDHE_RSA_WITH_CHACHA20_POLY1305_SHA256,TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384,TLS_ECDHE_ECDSA_WITH_CHACHA20_POLY1305_SHA256"
    

4. 其他加固措施

  • 禁用不必要的UI:将"ui": true改为"ui": false,或限制UI绑定的私有IP。
  • 开启审计日志:添加审计配置记录所有请求:
    "audit": {
        "file": {
            "path": "/var/log/vault/audit.log",
            "log_raw": true
        }
    }
    
  • 定期轮换密钥与Token:使用vault operator rekey生成新的unseal密钥,用vault token create -role root生成新root token后作废旧token。

内容的提问来源于stack exchange,提问作者Yotamo

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.30 07:05:01