一个自托管的、原生 BSD 的 Gemini 协议服务器栈 – The BSD Cafe Journal

主要观点:介绍了用于探索互联网非 HTTP 角落的 Gemini 协议及相关设置,包括使用 OpenBSD 搭建 Gemini 服务器栈,实现数据自托管和安全连接等。
关键信息:

  • Gemini 协议及使用时间:Gemini 协议是一种体验,已存在数年,约 2022 年时对网络不满达到高峰。
  • 本地服务器设置:Vigilia 自托管,曾在旧 Macbook Pro 上运行 Fedora Server,后改用 OpenBSD 和 Raspberry Pi,使用简单 Python CGI 脚本,后觉其复杂而更换。
  • 硬件及网络设置:Vigilia 实际数据服务器在家用 Raspberry Pi 4B 上,公共前端在 OpenBSD.amsterdam 的标准 VPS 上,通过 Tailscale 连接成虚拟局域网。
  • Gemini 服务器配置:VPS 和本地服务器都运行 gmid,配置简单稳定,可实现反向代理和 TCP 连接中继。
  • 文件同步设置:使用 Syncthing 自动同步文件,需正确设置权限和配置,确保文件在本地和服务器间同步。
  • 自动静态站点生成设置:使用 Lumen 脚本自动生成索引页面,需配合 entr 工具,根据文件变化实时更新。
  • 系统配置:使用 supervisor 启动 CGI 脚本等,可控制脚本运行顺序,将输出重定向到 syslog。
    重要细节:
  • gmid 配置文件详细内容:包括用户、chroot 环境、日志设置、证书路径、公共和本地服务器地址及端口等配置。
  • Syncthing 同步设置步骤:在桌面和服务器端分别进行设置,包括添加文件夹、设置权限、忽略模式等。
  • supervisor 配置示例:为不同程序设置命令、优先级、自动启动等参数,可重定向输出到 syslog。
  • 关于系统文件监控:OpenBSD 原生将获取一定程度的文件监控功能,entr 工具已存在于端口中。
阅读 16
0 条评论