cryptpad-20260522

发布时间:2026/6/12 20:47:58

cryptpad-20260522 CryptPad自托管加密协作文档平台端对端加密的 Google Docs 替代CryptPad 是一款完全开源的端对端加密协作文档平台提供富文本文档、电子表格、幻灯片、看板、代码编辑器等多种文档类型。与 Google Docs、Microsoft 365 等商业云服务不同CryptPad 的核心设计哲学是零知识——服务器端无法读取任何用户数据所有内容在客户端加密后才上传存储。这意味着即使服务提供商被黑客攻击或遭受法律传票用户数据依然无法被读取。对于注重数据隐私的个人、律师事务所、医疗机构、新闻媒体或企业团队CryptPad 是 Google Docs 的理想替代方案。它支持实时多人协作编辑、文档历史版本、团队空间Drive、访问权限控制、匿名共享链接等完整功能且无需注册账号即可使用部分功能。本文将使用 Docker Compose Caddy 完成 CryptPad 的自托管部署。相较于官方托管的 CryptPad.fr自托管版本拥有完全的数据主权不受存储空间限制还可以在内网环境下运行适合对合规要求较高的企业场景。服务器配置CryptPad 是纯 Node.js 应用内存占用适中主要负载来自文件存储 I/O 和并发 WebSocket 连接。对于 10-50 人的小团队2 核 4GB 机型可以流畅运行磁盘空间建议根据预期文档量适当预留。推荐使用雨云服务器部署 CryptPad注册填优惠码2026off领 5 折优惠券2 核 4GB 机型性价比极高完全满足中小团队的自托管需求。推荐配置项目规格CPU2 核内存4 GB磁盘40 GB SSD存储加密文档数据操作系统Ubuntu 22.04 LTS带宽5 Mbps 及以上环境要求Docker 24.0Docker Compose v2.20已解析到服务器的域名CryptPad 强制要求 HTTPS开放 80/443 端口安装 Docker 环境curl-fsSLhttps://get.docker.com|shsystemctlenable--nowdockerdocker--versiondockercompose version准备工作创建目录结构mkdir-p/opt/cryptpadcd/opt/cryptpadmkdir-pdata/blob data/block data/customize data/data\data/files data/logs data/onlyoffice-dist\data/onlyoffice-conf生成必要的密钥CryptPad 配置文件需要一组随机密钥可以用openssl生成# 生成管理员密钥保存好这个值openssl rand-hex32部署配置创建/opt/cryptpad/docker-compose.ymlversion:3.9services:cryptpad:image:cryptpad/cryptpad:latestcontainer_name:cryptpadrestart:unless-stoppedports:-127.0.0.1:3000:3000-127.0.0.1:3001:3001environment:CPAD_MAIN_DOMAIN:https://pad.yourdomain.comCPAD_SANDBOX_DOMAIN:https://sandbox.yourdomain.comCPAD_CONF:/cryptpad/config/config.jsCPAD_INSTALL_ONLYOFFICE:yesvolumes:-./data/blob:/cryptpad/blob-./data/block:/cryptpad/block-./data/customize:/cryptpad/customize-./data/data:/cryptpad/data-./data/files:/cryptpad/datastore-./data/logs:/cryptpad/log-./data/onlyoffice-dist:/cryptpad/www/common/onlyoffice/dist-./data/onlyoffice-conf:/cryptpad/onlyoffice-conf-./config.js:/cryptpad/config/config.js:rohealthcheck:test:[CMD,curl,-f,http://localhost:3000]interval:30stimeout:10sretries:3创建/opt/cryptpad/config.js配置文件module.exports{httpUnsafeOrigin:https://pad.yourdomain.com,httpSafeOrigin:https://sandbox.yourdomain.com,httpAddress:::,httpPort:3000,websocketPort:3001,// 管理员密钥填写你生成的密钥adminKeys:[// [adminyourdomain.com/keys]...],// 存储路径filePath:./datastore/,archivePath:./data/archive,pinPath:./data/pins,taskPath:./data/tasks,blockPath:./block,blobPath:./blob,blobStagingPath:./data/blobstage,decreePath:./data/decrees,logPath:./log,// 日志级别logLevel:info,logToStdout:true,// 注册与访客设置restrictRegistration:false,allowSubscriptions:false,// 最大上传大小 (MB)maxUploadSize:20*1024*1024,premiumUploadSize:100*1024*1024,// 存储限制每用户 1GBdefaultStorageLimit:1*1024*1024*1024,};启动服务cd/opt/cryptpaddockercompose up-ddockercompose logs-fcryptpadCaddy 反向代理CryptPad 需要同时代理主域名和沙盒域名两个域。沙盒域名是安全隔离机制的核心不可省略。编辑/etc/caddy/Caddyfilepad.yourdomain.com { reverse_proxy localhost:3000 # 必要的安全响应头 header { X-XSS-Protection 1; modeblock X-Content-Type-Options nosniff X-Frame-Options SAMEORIGIN Referrer-Policy same-origin } encode gzip } sandbox.yourdomain.com { reverse_proxy localhost:3000 header { X-Frame-Options ALLOW-FROM https://pad.yourdomain.com } encode gzip }重载 Caddysystemctl reload caddyDNS 配置提醒需要将pad.yourdomain.com和sandbox.yourdomain.com都解析到服务器 IP。核心功能配置配置管理员账号注册账号后进入「设置」→「账户」将页面底部的「公钥」字符串复制编辑config.js将公钥填入adminKeys数组重启容器docker compose restart cryptpad刷新页面顶部导航栏会出现「管理员」入口配置 SMTP 邮件通知在config.js中添加邮件配置// 邮件通知可选emailPath:./data/email,// 在管理后台的「通知」页面配置 SMTP// 或在 config.js 中直接配置adminEmail:adminyourdomain.com,进入管理员后台 → 「通知」→ 配置 SMTP 服务器即可启用邮件通知。配置存储配额在管理员后台中可以全局调整默认存储限制为特定用户分配更大空间查看全局存储使用情况统计启用 OnlyOffice 集成CryptPad 可选集成 OnlyOffice 引擎提供更好的.docx、.xlsx、.pptx编辑体验# 查看 OnlyOffice 安装状态dockercomposeexeccryptpadls/cryptpad/www/common/onlyoffice/dist/# 若目录为空手动触发安装dockercomposeexeccryptpadnpmrun install:onlyoffice使用技巧创建团队空间Drive注册登录后点击左侧「团队」→「创建团队」可以建立共享工作空间团队成员通过邀请链接加入后共享文件夹和文档。文档分享方式CryptPad 提供三种链接编辑链接接收者可编辑文档包含完整密钥查看链接只读访问安全链接通过密码保护适合敏感文档外部分享离线访问CryptPad 的 PWA 支持离线缓存安装到桌面后可在无网络时查看已缓存的文档。定期备份# 备份所有数据tarczf /backup/cryptpad-$(date%Y%m%d).tar.gz /opt/cryptpad/data/# 建议配合 cron 定时执行crontab-e# 0 3 * * * tar czf /backup/cryptpad-$(date \%Y\%m\%d).tar.gz /opt/cryptpad/data/常见问题Q访问时报Cross-domain iframe或空白页面A检查sandbox.yourdomain.com的 DNS 解析是否生效以及 Caddy 配置中两个域名都已配置。CryptPad 对沙盒域名要求严格两个域名必须都走 HTTPS。Q上传文件失败或大文件无法上传A检查config.js中maxUploadSize的设置同时确保 Caddy 没有限制请求体大小pad.yourdomain.com { request_body { max_size 200MB } reverse_proxy localhost:3000 }QWebSocket 连接断开实时协作不工作ACaddy 默认支持 WebSocket 升级但需要确认防火墙没有阻断长连接。检查3001端口的代理配置是否正确。Q管理员密钥配置后无法显示管理员面板A公钥格式必须完全正确包含方括号和斜杠重启容器后清除浏览器缓存再尝试。Q如何迁移数据到新服务器A直接打包/opt/cryptpad/data/目录传输到新服务器保持相同的目录结构修改config.js中的域名即可。由于数据是端对端加密的迁移过程无需担心数据泄露。CryptPad 提供了市面上罕见的真正零知识协作体验服务器管理员也无法读取用户数据。如果你的团队对数据隐私有严格要求或者希望摆脱 Google/Microsoft 的云服务依赖自托管 CryptPad 是目前最成熟的选择。整个部署过程约需 15-30 分钟建议在雨云服务器的 2 核 4GB 机型上运行注册填优惠码2026off即可领取 5 折优惠券长期运行成本非常低廉。

相关新闻