
umputun/secrets的安全隐患,提供了一种简单且更安全的替代方案。信息仅可访问一次,访问后自动销毁,有效防止敏感数据泄露。
可直接使用公共服务 safesecret.info,或部署私有实例。创建安全链接需提供:
接收者打开链接后需输入PIN码查看消息,消息查看后立即销毁。
docker-compose.yml 和 secrets-nginx.conf 配置文件docker-compose.yml 中的环境变量:
TZ:本地时区(如 Asia/Shanghai)SIGN_KEY:长随机字符串(用于数据签名)MAX_EXPIRE:最大过期时间(默认24小时,单位:秒)PIN_SIZE:PIN码长度(默认5位)PIN_ATTEMPTS:最大PIN错误尝试次数(默认3次)yamlenvironment: - LETSENCRYPT=true - LE_EMAIL=*** # 用于Let's Encrypt注册的*** - LE_FQDN=[***] # 域名
etc/ssl 目录,并配置:
yamlenvironment: - SSL_CERT=cert.pem # 证书文件名 - SSL_KEY=privkey.pem # 密钥文件名
bashdocker-compose up -d
bashdocker-compose build && docker-compose up -d
详细配置可参考 docker-compose.yml
默认部署包含两个容器:
secrets 应用容器:提供后端API和前端UInginx-le 容器:提供Nginx反向代理和Let's Encrypt SSL支持应用容器可独立运行(无需Nginx代理),适用于已有代理(如haproxy、AWS ELB/ALB)的场景。
请求:POST /api/v1/message
请求体:{"message":"敏感信息内容", "exp": 过期时间(秒), "pin": "PIN码"}
示例:
bashhttp POST [***] pin=*** message=testtest-*** exp:=1000
响应:
json{ "exp": "2016-06-25T13:33:45.***-05:00", "key": "f1acfe04-277f-4016-518d-16c312ab84b5" }
请求:GET /api/v1/message/:key/:pin
示例:
bashhttp GET [***]
响应:
json{ "key": "6ceab760-3059-4a52-5670-649509b128fc", "message": "testtest-***" }
请求:GET /api/v1/ping
响应:
pong
请求:GET /api/v1/params
响应:
json{ "max_exp_sec": 86400, "max_pin_attempts": 3, "pin_size": 5 }






manifest unknown 错误
TLS 证书验证失败
DNS 解析超时
410 错误:版本过低
402 错误:流量耗尽
身份认证失败错误
429 限流错误
凭证保存错误
来自真实用户的反馈,见证轩辕镜像的优质服务