cody2 on Nostr: Nostr ...
Nostr 中所有的数据都是事件,通过将事件存储在多个中继器上来实现去中心化,通过签名来证明事件的拥有者。但如果你想真正拥有你的事件,你应该运行一个自己的中继器来保存它们。否则一旦你使用的所有中继器出了故障或者刻意删除了你的事件,你将永远丢失它们。
对于大部份人来说,运行一个中继器是复杂的,成本高昂的。为了解决这个问题,我开发了 nostr-relay-tray,这是一款可以很方便在个人电脑上运行的中继器,并且支持通过互联网对其进行访问。
项目地址:https://github.com/CodyTseng/nostr-relay-tray
本文将介绍如何使用 nostr-relay-tray 来运行一个自己的中继器。
下载
从 GitHub Release 页面 下载对应你操作系统的安装包
操作系统 |
文件格式 |
Windows |
nostr-relay-tray.Setup.x.x.x.exe |
macOS (Apple Silicon) |
nostr-relay-tray-x.x.x-arm64.dmg |
macOS (Intel) |
nostr-relay-tray-x.x.x.dmg |
Linux |
你们应该知道使用哪个 |
安装
因为我没有对这个安装包进行数字签名,所以在安装时会有一些阻碍。安装成功后,菜单栏会出现一个鸵鸟图标。点击鸵鸟图标,你会看到一个菜单,点击 “Dashboard” 选项可以打开中继器的控制面板进行更多的配置。

macOS 用户注意:
- 首次打开时需要前往「系统设置 > 隐私与安全性」点击“仍要打开”按钮。
- 若遇损坏提示,需要在终端执行以下命令解除限制:
sudo xattr -rd com.apple.quarantine /Applications/nostr-relay-tray.app
Windows 用户:
连接
默认情况下,nostr-relay-tray 只能在本地通过 ws://localhost:4869/
进行访问。这让它的用途非常有限,所以我们需要将它暴露到互联网。
在控制面板中点击 “Proxy” 选项卡,并打开开关。你将会获得一个 “Public address”,你可以使用这个地址在任何地方访问你的中继器。就是这么简单。
接下来,你要将刚刚获得的地址添加到你的中继器列表中。并且要让它在列表中尽可能靠前的位置。因为大部份的客户端会优先连接列表中靠前的中继器,后面的中继器常常会被忽略。

限制
接下来我们需要增加一些限制来防止中继器保存一些与你无关的事件,浪费存储空间。nostr-relay-tray 可以非常灵活精细地设置允许接收哪些事件,但有些复杂,所以不在这里介绍,如果有兴趣可以日后探索。
在这里我先介绍一个很简单有效的策略 —— WoT (Web of Trust)。你可以在 “WoT & PoW” 选项卡中打开这个功能。打开之前你需要先输入你的 pubkey。
这里还有一个非常重要的参数 Depth
,它表示某个人与你的关系深度。你关注的人与你的深度为 1,你关注的人关注的人与你的深度为 2,以此类推。
- 如果你将这个参数设置为 0,那么你的中继器只会接收你自己的事件。
- 如果你将这个参数设置为 1,那么你的中继器只会接收你和你关注的人的事件。
- 如果你将这个参数设置为 2,那么你的中继器只会接收你和你关注的人的事件,以及你关注的人关注的人的事件。
目前这个参数的最大值只能为 2。

总结
至此,你已经成功运行了一个自己的中继器,并且设置了一个简单的限制来防止中继器保存一些与你无关的事件。
如果你在使用中遇到任何问题,请随时在 GitHub 上提交 issue,我会尽快回复你。
Not your relay, not your events
Published at
2025-04-25 04:37:25Event JSON
{
"id": "fd067f741a4bdc52ea24127975930bd344ab66a9a6281b782a6bebd1e272c267",
"pubkey": "24462930821b45f530ec0063eca0a6522e5a577856f982fa944df0ef3caf03ab",
"created_at": 1745555845,
"kind": 30023,
"tags": [
[
"client",
"Yakihonne",
"31990:20986fb83e775d96d188ca5c9df10ce6d613e0eb7e5768a0f0b12b37cdac21b3:1700732875747"
],
[
"published_at",
"1745555356"
],
[
"d",
"uCVNunyW5PpOZPA3TfC1u"
],
[
"image",
"https://image.nostr.build/748d126ce46897e47dbc8ea752eb7daba1e027147adfd4340e32a01b2e3d70a2.jpg"
],
[
"title",
"运行自己的中继器,拥有自己的事件"
],
[
"summary",
"Nostr 中所有的数据都是事件,通过将事件存储在多个中继器上来实现去中心化,通过签名来证明事件的拥有者。但如果你想真正拥有你的事件,你应该运行一个自己的中继器来保存它们。否则一旦你使用的所有中继器出了故障或者刻意删除了你的事件,你将永远丢失它们。"
],
[
"zap",
"24462930821b45f530ec0063eca0a6522e5a577856f982fa944df0ef3caf03ab",
"",
"100"
]
],
"content": "Nostr 中所有的数据都是事件,通过将事件存储在多个中继器上来实现去中心化,通过签名来证明事件的拥有者。但如果你想真正拥有你的事件,你应该运行一个自己的中继器来保存它们。否则一旦你使用的所有中继器出了故障或者刻意删除了你的事件,你将永远丢失它们。\n\n对于大部份人来说,运行一个中继器是复杂的,成本高昂的。为了解决这个问题,我开发了 nostr-relay-tray,这是一款可以很方便在个人电脑上运行的中继器,并且支持通过互联网对其进行访问。\n\n项目地址:https://github.com/CodyTseng/nostr-relay-tray\n\n本文将介绍如何使用 nostr-relay-tray 来运行一个自己的中继器。\n\n## 下载\n\n从 [GitHub Release 页面](https://github.com/CodyTseng/nostr-relay-tray/releases) 下载对应你操作系统的安装包\n\n| 操作系统 | 文件格式 |\n| --------------------- | ---------------------------------- |\n| Windows | `nostr-relay-tray.Setup.x.x.x.exe` |\n| macOS (Apple Silicon) | `nostr-relay-tray-x.x.x-arm64.dmg` |\n| macOS (Intel) | `nostr-relay-tray-x.x.x.dmg` |\n| Linux | 你们应该知道使用哪个 |\n\n## 安装\n\n因为我没有对这个安装包进行数字签名,所以在安装时会有一些阻碍。安装成功后,菜单栏会出现一个鸵鸟图标。点击鸵鸟图标,你会看到一个菜单,点击 \"Dashboard\" 选项可以打开中继器的控制面板进行更多的配置。\n\n\n\n**macOS 用户注意**:\n\n- 首次打开时需要前往「系统设置 \u003e 隐私与安全性」点击“仍要打开”按钮。\n- 若遇损坏提示,需要在终端执行以下命令解除限制:\n\n```bash\nsudo xattr -rd com.apple.quarantine /Applications/nostr-relay-tray.app\n```\n\n**Windows 用户**:\n\n- 在安全警告界面点击「更多信息 \u003e 仍要运行」\n\n## 连接\n\n默认情况下,nostr-relay-tray 只能在本地通过 `ws://localhost:4869/` 进行访问。这让它的用途非常有限,所以我们需要将它暴露到互联网。\n\n在控制面板中点击 \"Proxy\" 选项卡,并打开开关。你将会获得一个 \"Public address\",你可以使用这个地址在任何地方访问你的中继器。就是这么简单。\n\n接下来,你要将刚刚获得的地址添加到你的中继器列表中。并且要让它在列表中尽可能靠前的位置。因为大部份的客户端会优先连接列表中靠前的中继器,后面的中继器常常会被忽略。\n\n\n\n## 限制\n\n接下来我们需要增加一些限制来防止中继器保存一些与你无关的事件,浪费存储空间。nostr-relay-tray 可以非常灵活精细地设置允许接收哪些事件,但有些复杂,所以不在这里介绍,如果有兴趣可以日后探索。\n\n在这里我先介绍一个很简单有效的策略 —— WoT (Web of Trust)。你可以在 \"WoT \u0026 PoW\" 选项卡中打开这个功能。打开之前你需要先输入你的 pubkey。\n\n这里还有一个非常重要的参数 `Depth`,它表示某个人与你的关系深度。你关注的人与你的深度为 1,你关注的人关注的人与你的深度为 2,以此类推。\n\n- 如果你将这个参数设置为 0,那么你的中继器只会接收你自己的事件。\n- 如果你将这个参数设置为 1,那么你的中继器只会接收你和你关注的人的事件。\n- 如果你将这个参数设置为 2,那么你的中继器只会接收你和你关注的人的事件,以及你关注的人关注的人的事件。\n\n目前这个参数的最大值只能为 2。\n\n\n\n## 总结\n\n至此,你已经成功运行了一个自己的中继器,并且设置了一个简单的限制来防止中继器保存一些与你无关的事件。\n\n如果你在使用中遇到任何问题,请随时在 GitHub 上[提交 issue](https://github.com/CodyTseng/nostr-relay-tray/issues/new),我会尽快回复你。\n\nNot your relay, not your events\n",
"sig": "13c242440982cfa79a2292030bd6ac2b747b5bd3ccd674454ee661bf8700e823b0f604c99d41ade8a6c664ba82995997abf42dca001e5211805e755db12da4e5"
}