cryptgeon ~ 轻量的密信密件分享平台

介绍:

cryptgeon 是一个安全开源的密信密件分享平台,灵感来自 PrivNote。

特点:

  • 因为有客户端加密,所以服务器无法解密内容

  • 允许设置查看或时间限制(即查看5次后密信自动销毁/5h后密信自动销毁)

  • 数据存储在内存中,不进行持久化到磁盘

  • 支持深色模式

原理:

每个笔记都有一个生成的 id(256 位)和密钥 256(位)。id 用于保存和检索笔记,使用密钥在客户端上用 aes 的 gcm 模式加密笔记,然后发送到服务器。

提示:

  1. 密信保存在内存中,如果内存满了,则最早的密信将被删除以释放内存,因此不保证该密信的可用性。一般不会出现这种情况,无需担心。
  2. 需要使用域名并配置SSL证书,否则加密鸽将无法正常工作。

效果图:

部署方法:

第一步:更新源

Ubuntu/Debian:

apt update -y && apt upgrade -y    

Centos:

yum update -y && yum upgrade -y   

第二步:安装并配置Docker

安装Docker:

curl -fsSL https://get.docker.com -o get-docker.sh && sudo sh ./get-docker.sh

启动Docker:

sudo systemctl start docker

设置Docker在开机时自动启动:

sudo systemctl enable docker

第三步:安装Docker compose

sudo curl -L "https://github.com/docker/compose/releases/download/v2.20.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
sudo chmod  x /usr/local/bin/docker-compose

第四步:创建docker-compose.yml

  1. 新建目录:
mkdir cryptgeon && cd cryptgeon/
  1. 新建并打开docker-compose.yml:
nano docker-compose.yml
  1. 填入以下内容:
version: '3.8'

services:
  redis:
    image: redis:7-alpine

  app:
    image: cupcakearmy/cryptgeon:latest
    depends_on:
      - redis
    environment:
      # 每份密信/密件的最大储存空间
      SIZE_LIMIT: 4 MiB 
    ports:
      # 修改左侧为未被占用的端口
      - 80:8000  

    # 服务健康检查(可选)
    # healthcheck:
    #   test: ["CMD", "curl", "--fail", "http://127.0.0.1:8000/api/live/"]
    #   interval: 1m
    #   timeout: 3s
    #   retries: 2
    #   start_period: 5s
  1. 保存并退出:
    使用 Ctrl X/Command X

第五步:安装并运行 cryptgeon 容器

docker-compose up -d

部署完成后可以访问 http://:80(修改端口号为自己填入的端口) 来访问"cryptgeon"

第六步:反向代理到域名

此处使用一种非常简单的方式:Cloud flare 提供的 Origin Rules
配置如下:

修改Field为Hostname,Value为选择的完整域名,Rewrite to 刚才在左侧填写的端口

记得解析自己的子域名到服务器IP:
使用A记录,Name为域名前缀,Content为服务器地址

相关地址:

Github项目地址:https://github.com/cupcakearmy/cryptgeon
Privnote项目地址:https://privnote.com

点赞
  1. youguess说道:

    绑定

  2. yqhd说道:

    绑定

  3. 扶摇说道:

    很好奇哪去找的这些项目?

发表回复

电子邮件地址不会被公开。必填项已用 * 标注

×
订阅图标按钮