自建电子邮件管理程序Cypht

admin
2024-09-09 / 0 评论 / 8 阅读 / 正在检测是否收录...

关于Cypht

Cypht是一款免费开源的Web电子邮件客户端管理程序,它在不牺牲隐私和安全性的前提下,汇聚了个电子邮件账户,让用户仅需一个网页就能轻松管理多个电子邮件账户,包括查看、发送邮件,以及还提供了邮箱常用的过滤、标签、搜索等功能,从而提高了多个邮箱同时使用的效率与便捷。

image.png

image.png

它的亮点特性如下:

自托管 :Cypht 支持自托管,你可以选择自己部署服务器,完全掌控自己的数据。

端到端加密: 所有通信均在发送者和接收者之间进行加密,即使数据通过不安全的网络,也无需担忧信息泄漏。

插件系统 : 通过插件,你可以连接到不同的邮件服务提供商,或扩展其他功能。

隐私优先 :Cypht 不存储用户的私钥,确保只有消息的收发双方才能解密信息。

它的功能与用途包括:

安全的电子邮件: Cypht 提供了一种方法,可以在发送邮件时自动加密消息内容,防止未经授权的第三方阅读。
跨平台 :不论你是 Windows 用户、Mac 用户还是 Linux 爱好者,或者更倾向于使用智能手机,Cypht 都可以无缝适配你的设备。
易于使用 :尽管加密听起来复杂,但 Cypht 的设计原则之一就是易用性,使得即便是对技术不太了解的用户也能轻松上手。
透明度与审计 :开源代码意味着任何人都可以查看其内部工作原理,增强用户对安全性的信心。

Cypht部署

需要说明的是,一般涉及到安全方面的Docker容器,基本都会需要稳定的数据库作为支撑,今天介绍的这个Cypht也是一样,所以在部署之前,咱们需要先搞定数据库。

第一步:创建数据库

先打开数据库管理工具phpMyAdmin,然后在“账户”里面“新增用户账户”。

image.png

填入新增用户账户的信息

  • 用户名:cypht

  • 主机名:任意主机( % )

  • 密码:随意(我这里演示就设为了“123456”)

然后勾选下面的“创建与用户同名的数据库并授予所有权限”,最后别忘了点页面下方的“执行”按钮

image.png

image.png

第二步:Cypht部署

  • 1.任意位置新建文件夹

  • 2.新建docker-compose.yaml文件

  • 3.复制下面的

80端口被占用可改为其他端口

version: '3'
services:
  cypht:
    image: sailfrog/cypht-docker:latest
    volumes:
      - ./cypht/users:/var/lib/hm3/users
    ports:
      - "80:80"
    environment:
      - CYPHT_AUTH_USERNAME=admin
      - CYPHT_AUTH_PASSWORD=admin_password
      - CYPHT_DB_CONNECTION_TYPE=host
      - CYPHT_DB_HOST=172.17.0.1:3306
      - CYPHT_DB_HOST=db
      - CYPHT_DB_NAME=cypht
      - CYPHT_DB_USER=cypht
      - CYPHT_DB_PASS=123456
      - CYPHT_SESSION_TYPE=DB
  • CYPHT_AUTH_USERNAME 后台管理员账号,自己随意设置
  • CYPHT_AUTH_PASSWORD 后台管理员密码,自己随意设置
  • CYPHT_DB_CONNECTION_TYPE 数据库连接类型,默认为 host
  • CYPHT_DB_HOST 填写数据库主机地址+端口,默认为 宿主机在Docker内网IP:3306
  • CYPHT_DB_NAME 数据库名称,我前面设置的为cypht
  • CYPHT_DB_USER 数据库用户,我前面设置的为cypht
  • CYPHT_DB_PASS 数据库密码,我前面设置的为123456
  • CYPHT_SESSION_TYPE 保持登录状态,默认的 DB 即可

cd进docker-compose.yaml文件目录,启动

docker-compose up -d

宿主机在Docker内网IP

docker在运行时就建立了虚拟网卡,并命名为docker0,在宿主机ifconfig可以看到网桥的ip是172.17.0.1
image.png

设置宿主机mysql允许docker0的虚拟网卡ip访问

宿主机mysql设置允许用户cypht通过172.19.0.2访问cypht数据库的任意表

mysql -uroot -p
mysql>GRANT ALL PRIVILEGES ON cypht.* TO 'cypht'@'172.19.0.2' IDENTIFIED BY '123456' WITH GRANT OPTION; 
mysql>flush privileges;

Cypht体验

直接在浏览器中输入 【 IP:端口号】 就能看到登录界面了

首次打开需要登录。登录的账号和密码就是我们部署时环境变量中设置的管理员账号和密码

image.png

登录成功后的主界面,程序默认为英文界面。

不过程序是可以通过如上图所示的操作设置为简体中文的

时区默认也不是咱们内地,我们也可以通过设置更改

image.png

image.png

接着咱们先来添加一个邮箱。直接在首页位置点击“添加电子邮件账户”
image.png

image.png
然后输入对应的密码。请注意:如果你的Gmail开启了两步验证,这里的密码是谷歌“应用专用密码”,而不是你实际的谷歌账号密码!!!
Gmail应用密码
image.png

登录进来后就能直接看到自己所有的邮箱信息了

image.png

可以直接点开邮件,并对邮件进行回复或者转发等操作,和谷歌自己的邮箱操作差不多

image.png

如果说官方服务列表中没有我们需要的邮箱服务商,我们也可以通过SMTP/IMAP服务器的方式添加,具体的大家自己研究下吧

image.png

同时,该项目还支持添加 RSS 订阅

image.png

image.png

<u>最后的最后,你的设置变动都需要点击保存,否则下次在别的地方登陆都是没有任何数据的</u>

image.png

image.png

0

评论

博主关闭了所有页面的评论