Secure Shell (SSH) 介绍

通常,有两种方式访问你的节点机器:本地远程

  • 本地是指坐在物理节点前,使用直接连接到它的显示器和键盘。
  • 远程是指使用另一台计算机(例如笔记本电脑或台式机)通过网络连接到节点并从那里与之交互。

大多数时候,节点运营者更喜欢远程工作节点的灵活性。

Smartnode 目前没有 GUI(图形用户界面),只有 CLI(命令行界面),这意味着与它的交互完全通过在命令行终端中键入命令来完成。 因此,远程与之交互需要某种方式从不同的机器访问节点的终端。 在本节中,我们将简要介绍最流行的方法:SSH

使用 Windows 机器
使用 Linux 或 macOS 机器

从 Windows 机器使用 SSH 有几种不同的方法。

最简单的是使用 Powershell,这是一个功能强大的命令终端,内置于现代版本的 Windows 中。 Powershell 包含 SSH,因此你可以立即使用它,无需安装任何补充程序。

你可以通过打开开始菜单并在搜索栏中键入 Powershell 来找到它;会有几个 选项,但你想要的选项简单地称为 Windows Powershell

这将打开一个蓝色背景的终端。 你可以从这里使用 ssh - 请参阅下面的说明了解如何执行此操作。

另一个流行的工具叫做 PuTTY。 PuTTY 是一个专用于 SSH 使用的特殊程序,包含一个专用终端,但它还附带一个方便的 GUI 用于执行诸如更改配置、将设置保存到"配置文件"以及保留可以通过从列表中选择轻松连接的机器列表之类的操作。

你不需要像其他工具那样使用 ssh,PuTTY 会自动为你执行此操作 - 你只需要 提供用户名和密码。 有关如何使用 PuTTY 的信息,请查看这个很棒的 教程

注意:PuTTY 可能在 rocketpool service config 基于文本的用户界面 (TUI) 中显示错误的颜色。 有一个简单的解决方案。在 PuTTY 设置中,导航到下拉菜单中的 Connection > Data > Terminal Details。 应该有一个 Terminal-type string 文本框。输入 xterm-256color,然后保存 设置即可解决此问题。

以下是使用 SSH 连接到节点的方法。

注意

从你的笔记本电脑或台式机运行以下命令,而不是从节点本身运行

ssh username@node-ip-address

例如,假设节点的用户名是 staker,节点的 IP 地址是 192.168.1.10。 你将使用以下命令连接到它:

ssh staker@192.168.1.10

第一次执行此操作时,你将看到一条消息,显示节点正在使用的公钥 - 如果你熟悉如何验证此密钥,现在可以执行此操作。 否则,如果你相信 ssh 命令中有正确的节点 IP 地址,你可以只说 yes 来 接受它。 你只需要执行一次此操作。

客户端然后会提示你输入用户的密码;输入后,你就进去了! 你将收到欢迎消息、有关机器的一些详细信息和一个新提示。

此时,你在终端中键入的所有内容都在节点机器上远程执行 - 就好像你 直接登录到节点机器并使用本地连接的键盘在其上键入!

你需要定期通过 SSH 连接到终端进行更新和维护。 记住如何登录到节点可能很不方便,因此通过 创建一个令人难忘的别名 - 一个自定义"快捷方式"命令可能会有所帮助。

注意

如果你这样做,请务必在客户端机器上创建别名,而不是在节点上! 如果你的终端仍然连接到节点,请先在命令提示符下运行 exit(或只是打开一个新的 终端窗口)。

注意

本节仅适用于 Linux/OSX 或 WSL 用户 - 不支持 PowerShell。

在此示例中,我们将创建一个名为 ethnode 的别名,它将替换 SSH 命令。 假设,如前所述,节点的用户名是 staker,节点的 IP 地址是 192.168.1.10,使用以下命令创建 别名:

echo "alias ethnode='ssh staker@192.168.1.10'" >> ~/.bash_aliases

重新加载别名列表以使当前终端窗口知道新别名:

source ~/.bash_aliases

现在,你可以使用刚刚创建的别名连接到节点,而不是涉及 指定节点 IP 地址的较长命令:

ethnode