如何在Raspberry Pi上启用SSH

时间:2020-03-05 15:30:35  来源:igfitidea点击:

安全shell(SSH)是一种加密网络协议,用于客户端和服务器之间的安全连接。
在最新版本的Raspbian中,默认情况下禁用SSH访问,但可以轻松启用它。

在本教程中,我们将向我们展示如何在Raspberry Pi板上启用SSH。
启用SSH将允许我们远程连接到Pi,并执行管理任务或者传输文件。

我们假设我们在Raspberry Pi上安装了Raspbian。

在不带屏幕的Raspberry Pi上启用SSH

如果我们没有可用的备用HDMI显示器或者键盘来连接Raspberry Pi,则可以通过将一个名为ssh(没有任何扩展名)的空文件放入启动分区中来轻松启用SSH。

要在Raspberry Pi上启用SSH,请执行以下步骤:

  • 关闭Raspberry Pi的电源,然后卸下SD卡。
  • 将SD卡插入计算机的读卡器。 SD卡将自动安装。
  • 使用OS文件管理器导航到SD卡引导目录。 Linux和macOS用户也可以从命令行执行此操作。
  • 在启动目录中创建一个名为ssh且没有任何扩展名的新空文件。
  • 从计算机上卸下SD卡,然后将其放入Raspberry Pi中。
  • 接通Pi板上的电源。在启动时,Pi将检查此文件是否存在,如果存在,将启用SSH并删除该文件。

一旦Raspberry Pi启动,我们就可以通过SSH进入它。

在Raspberry Pi上启用SSH

如果我们在Raspberry Pi上插入了HDMI监视器,则可以从桌面GUI或者从终端手动启用SSH。

从GUI启用SSH

如果我们更喜欢GUI而不是命令行,请执行以下步骤:

  • 从“首选项”菜单中打开“ Raspberry Pi配置”窗口。
  • 单击“接口”选项卡。
  • 选择SSH行旁边的“启用”。
  • 单击“确定”按钮以使更改生效。

从终端启用SSH

  • 通过使用“ Ctrl + Alt + T”键盘快捷键或者单击终端图标打开终端,然后通过键入以下命令启动“ raspi-config”工具:
raspi-config
  • 使用向上或者向下键导航到“ Interface Options”(接口选项),然后按“ Enter”键。
  • 导航到“ SSH”,然后按“ Enter”。
  • 系统将提示我们是否要启用SSH服务器。选择“是”,然后按“ Enter”。
  • 下一个窗口将通知我们SSH服务器已启用。按“ Enter”,返回主菜单,然后选择“完成”以关闭raspi-config对话框。

另外,我们也可以使用'systemctl'来启动并启用ssh服务,而不是使用'raspi-config'工具:

sudo systemctl enable sshsudo systemctl start ssh

通过SSH连接Raspberry Pi

要通过SSH连接到Pi,我们需要知道Raspberry Pi IP地址。
如果我们运行的Pi没有屏幕,则可以在路由器的DHCP租用表中找到IP地址。
否则,如果插入了监视器,请使用ip命令确定板的IP地址:

ip a

找到IP地址后,我们可以从计算机连接到Raspberry Pi。
Windows用户可以使用SSH客户端(如PuTTY)。

Linux和macOS用户默认情况下安装了SSH客户端,可以通过键入以下命令将SSH SSH到Pi中:

ssh pi@pi_ip_address

用Pi板的IP地址更改“ pi_ip_address”。
如果我们尚未更改“ pi”用户密码,则默认密码为raspberry。

首次通过SSH连接时,系统将提示我们接受RSA密钥指纹,键入“是”以继续。

登录到Raspberry Pi后,将收到与以下消息类似的消息。

Linux raspberrypi 4.14.98-v7+ #1200 SMP Tue Nov 12 20:27:48 GMT 2019 armv7l
The programs included with the Debian GNU/Linux system are free software;
the exact distribution terms for each program are described in the
individual files in /usr/share/doc/*/copyright.
...

如果我们要将Pi暴露给Internet,则最好实施一些安全措施。
默认情况下,SSH侦听端口22.
更改默认SSH端口可降低自动攻击的风险,从而为计算机增加一层另外的安全保护。

我们还可以设置基于SSH密钥的身份验证并在不输入密码的情况下进行连接。