OTS:你的私密信息分享利器
简介
什么是 OTS ?
OTS
(One-Time-Secret
) 是一个一次性秘密共享平台,它通过在浏览器中进行对称的256
位AES
加密来极大地保护你的隐私。服务器端永远不会接触到明文的敏感信息,并且一旦敏感信息被读取,它就会被立即销毁。这使得它成为安全分享敏感信息(如密码、API
密钥或一次性凭证)的理想选择。
主要特点
- 端到端加密:秘密在你的浏览器中使用
AES 256
位进行加密和解密,服务器无法窥探。 - 阅后即焚:每个秘密在被首次访问后会立即从服务器删除。
- 简单易用:用户只需输入秘密,生成一个包含秘密
ID
和密码的URL
,方便分享。 - 多种存储选项:支持多种后端存储解决方案,如内存、
Redis
等,用户可以选择适合的存储方式 - 自托管:你可以完全掌控自己的数据,将其部署在自己的服务器上。
- API支持:提供命令行工具,方便以编程、脚本方式创建和获取秘密。
应用场景
- 向同事或朋友安全地发送一次性密码或
API
密钥。 - 在不安全的网络环境中临时共享敏感配置信息。
- 集成到自动化脚本中,用于动态生成和分发一次性访问凭证。
OTS
是一个高效、安全的一次性秘密共享平台,适合需要保护敏感信息的个人和企业使用。
安装
在群晖上以 Docker 方式安装。
本文写作时,
latest
版本对应为v1.19.1
;
ots
依赖 redis
数据库,因此推荐使用 docker-compose
安装
首先,通过 SSH
登录到您的群晖,在 docker
文件夹中,创建一个新文件夹 ots
,并在其中再建一个子文件夹 data
用于存放 Redis
数据
1 | # 新建文件夹 ots 和 子目录 |
然后,在 ots
目录下,创建 docker-compose.yml
文件
1 | # 进入 ots 目录 |
将下面的内容粘贴到 docker-compose.yml
文件中:
1 | version: "3" |
环境变量的说明如下:
环境变量 | 描述 |
---|---|
REDIS_URL |
Redis 数据库的连接字符串,格式为 redis://USR:PWD@HOST:PORT/DB 。用于指定 OTS 应用连接的 Redis 实例 |
SECRET_EXPIRY |
秘密的过期时间,单位为秒(默认 0 = 无过期)。此示例中设置为 604800 (168 小时 = 1 周) |
STORAGE_TYPE |
用于指定存储类型,可以是 mem (内存存储)或 redis (使用 Redis 存储秘密) |
最后,在 ots
目录下执行以下命令一键启动:
1 | docker-compose up -d |
运行
在浏览器中输入 http://群晖IP:3494
就能看到主界面。但是因为使用了 http
协议,功能被禁用了
需要做反代实现 https
协议访问,例如: https://ots.laosu.tech
使用 https
协议之后就正常了
现在你可以输入任何想要分享的秘密,设置一个可选的密码,然后生成一个一次性链接
接收端打开分享的一次性链接
点 向我展示机密
就可以看到内容了
参考文档
Luzifer/ots: One-Time-Secret sharing platform with a symmetric 256bit AES encryption in the browser
地址:https://github.com/Luzifer/otsOTS - One Time Secrets
地址:https://ots.fyi/