什么是SSH?远程 WordPress 访问的魔力

您知道吗,您可以远程安全地访问您的 WordPress 网站?但它是如何完成的呢?靠魔术师的伎俩?实际上,它被称为 SSH — 现在是您了解它的机会.

2020 年 10 月:我们测试了所有最好的 WordPress 主机!了解我们如何比较.查看结果

只需少量登录凭据、少量界面和少量良好的网络连接即可实现.

然后,就像一个好的 WordPress 药水一样,一切都可以协同工作,您将有一种安全的方式来完成这一切.

在本入门指南中,我们将介绍 WordPress SSH 的所有内容,以帮助您入门并熟悉其操作方式.

更具体地说,我将讨论:

  • 什么是 SSH 以及何时使用它.
  • 如何设置 SSH.
  • 访问 SSH.
  • 为其设置用户.
  • 执行 SSH 功能的命令.
  • SSH、SFTP 和 FTP 之间的区别.
  • 我们的托管和 SSH.
  • 还有更多!

虽然看起来我正在努力保密(SSH 很容易与 shhh 混淆),但众所周知,当你解决这个问题时,你会如此熟悉 SSH,您可以设置它并安全地远程登录到您的计算机.

您还将发现如何通过良好的托管来简化流程.

一旦您掌握了 SSH 的窍门,您就会明白它为何如此受欢迎,以及远程访问如何让您的生活更轻松(与其他一些远程事物不同).

Dev Man looking under couch cushions.
幸运的是,我们没有处理丢失的电视遥控器.

那么,什么是 SSH?

SSH 是基于 UNIX 的命令接口和协议.它代表"Secure Shell"并且是定义为安全远程协议不安全网络上的登录和其他安全网络服务.

它的功能是使用公钥加密进行连接和身份验证.

这意味着您可以使用它从任何计算机远程访问您的 WordPress 网站.

您的网站托管在何处并不重要,只要您有登录凭据即可.

SSH 在这里提供安全登录,以确保在您使用连接时没有人可以访问您的连接.

当您想使用 SSH 连接服务器时,您只需要做两件事:

  1. 界面
  2. 登录凭据

需要记住的是,如果您运行的是 Linux 或 macOS,则您的操作系统中已经内置了一个界面,因此无需安装 SSH 客户端.

但是,如果您运行的是 Windows,则必须安装客户端.更多关于即将到来的......

让我们谈谈客户端和服务器

要建立 SSH,有两个组件:客户端和相应的服务器.

客户端是一种应用程序,您将安装在您的计算机上以连接另一台计算机(也称为服务器).

客户端使用远程主机信息发起连接,并在验证凭据后建立加密连接.

同时,在服务器端,有一个组件定义为 SSH 守护进程,它定期监听特定的 TCP/IP 端口用于潜在的客户端连接请求.

当客户端发起连接时,SSH 守护进程将回复软件及其支持的协议版本.

然后,两人将交换他们的身份资料.如果一切顺利并且凭据成功,SSH 将为适当的环境创建一个新会话.

这几乎就像客户端和服务器在互相传递公文包一样.任何想进入公文包的骗子都不能,因为他们没有钥匙.

How SSH works image.
SSH 过程.

这样可以确保公文包中的物品安全,直到客户用钥匙打开它并且能够安全地来回传递物品.

什么时候需要使用 SSH?

随着云服务器变得越来越流行且价格实惠,越来越多的客户倾向于在他们的网站上使用云服务器.

这使得 SSH 成为在云服务器上处理不同程度任务的最常用工具.

可能使用 SSH 的一些示例是,开发人员为客户端的网站设置 Web 服务器,或者可能将源代码部署到生产服务器.

SSH 的先决条件

在与远程机器建立安全的远程桌面协议之前,有一些要求.

这是清单:

确保您拥有访问远程计算机所需的权限.
防火墙设置必须允许远程连接.
具有您要连接的远程机器的 IP 地址或名称.
必须打开远程计算机并连接网络.
需要安装并启用客户端和服务器应用程序.

当然,要检查其中一些项目,您首先需要知道如何进行设置.

关于这一点,这里是......

入门的关键

您必须正确设置 SSH,以确保您能够从本地计算机登录到云服务器.

那么,我们该怎么做呢?

正如我所提到的,如果您使用的是 Linux 或 macOS,那么您的操作系统中已经内置了一对公钥和私钥.

如果您使用的是 Windows,则需要安装客户端才能开始使用.

免费且易于操作.只需将客户端下载到您的系统即可.

有很多适用于 Windows 的免费开源软件选项,例如 PuTTYSuperPuTTYPuTTYtray.下载您喜欢的任何选项,然后您就可以继续前进了.

它们都有点不同.例如,Absolute Telnet 专为 Windows 而不是 Linux 设计.而eSSH Client 是为两者而设计的.

Example of SSH clients.
SSH 客户端示例.(来源:维基百科)

您可以查看查看更多比较,看看哪种效果最好给你.

SSH 设置

要进行设置,我们需要生成公钥和私钥对.

在此示例中,我使用的是 Mac OS,因此我将从 终端 执行此操作.终端位于应用程序>实用工具>终端.

到达那里后,我们将运行此命令:

ssh-keygen-t rsa

在此命令中,-t 选项将允许您指定要创建的密钥类型.通常使用 RSA.

RSA 是最早的公钥密码系统之一,广泛用于安全数据传输.

默认情况下 RSA 在这里,因此除非您指定其他内容,否则无需更改.

Enter file in which to save the key (/Users/demo/.ssh/id_rsa):

现在您将输入要存储公钥和私钥对的路径.在 Mac OS X 上,它们通常保存在用户的主目录中.但是,请将其保存在任何您喜欢的地方.

保存后,接下来是输入密码.

如果您是第一次运行,请将其保留为默认值.

Enter passphrase (empty for no passphrase):

输入密码以保护您的私钥.这是您每次访问私钥时都需要输入的密码.

如果您不需要密码,可以将其留空.

Enter same passphrase again:

接下来您将确认您的密码.

一旦你这样做了,你的身份就会被保存,你会得到一个确认,钥匙的randomart图像将出现在下面的行中.

Example of randomart
创建成功后出现的key的randomart图片示例一个键.

它还会告诉您公钥和私钥保存在图像上方的位置.

公钥的一个例子是 /Users/demo/.ssh/id_rsa.pub/Users/demo/.ssh/id_rsa 用于私钥.

您现在正在使用 SSH.您已将密钥、密码和信息存储在计算机上的某个位置.

注意:如果您使用的是 Windows,请在线搜索"生成 ssh 密钥窗口",您将获得一个教程列表,向您展示如何执行此操作.

例如,这里是 使用 PuTTY 在 Windows 中手动生成 ssh 密钥.

好的,接下来有什么?

很高兴你问了.我们需要将公钥"存储"到云服务器,以便您可以允许用户访问您的网站.

您的托管公司应该有一个管理部分供您上传公钥.每个云服务都会有所不同,因此您可能需要联系您的云服务以获取有关在何处执行此操作的具体信息.

由于 我们在 WPMU DEV 提供托管,我将通过我们的托管服务向您展示如何做到这一点.

我们让存储公钥和允许用户访问变得简单和容易.

通过我们的托管,您将登录您的 WPMU DEV 帐户并转到 The Hub 2.0,点击您的网站,然后点击 Hosting 标签.

The hub hosting tab.
我的网站在 The Hub 中的托管区域.

您会看到下面出现了一堆标签.点击SFTP/SSH.

这将为您提供添加 SFTP 或 SSH 用户的选项.点击添加用户.

Add SSH user image.

点击添加用户后,您可以选择 SFTPSSH.

SFTP User and SSH User options.
SFTP 用户和 SSH 用户选项.

艰难的选择,嗯?

如果您想知道 SFTP 用户 SSH 用户之间的区别是什么,这里有一些说明.

SFTP(SSH 文件传输协议)是一种建立在 SSH 传输层之上的文件传输协议.它用于通过任何给定的互联网连接安全地移动大量数据.

当然,我们之前定义了它,但只是刷新一下,SSH 是一种协议,允许您使用基于文本的界面安全地连接到远程计算机或服务器.

SSH 和 SFTP 的相似之处

有了 SFTP,协议就离不开 SSH,使 SSH 成为让 SFTP 安全传输文件的绑定代理.大多数 SSH 服务器都包含 SFTP 功能,但并非所有 SFTP 服务器都支持 SSH 操作和命令.

差异?

它们都用于安全地传输信息,但与 SFTP 不同的是,SSH 可以独立存在.

SSH 的许多应用程序是远程命令行、远程命令执行和登录.

SFTP 通过数据流提供安全的文件访问、文件管理和文件传输.

好的,既然您已经了解了这些区别,那么您可以相应地选择要添加的用户类型.

我们将在本教程中坚持使用 SSH.

单击 SSH 用户后,会弹出一个屏幕,其中包含要为新 SSH 用户添加的其他信息.

Screen to add a new SSH User.
屏幕以添加新的 SSH 用户.

在这里,您设置用户名密码路径限制(可选)和环境.

在密码部分,您可以选择使用我们之前介绍过的公钥 (/Users/demo/.ssh/id_rsa.pub).或者,您可以创建自己的密码.

路径限制区域,您可以为wp-content插件主题添加限制.默认情况下,它处于.

Path restrictions dropdown.
路径限制下拉菜单.

环境区域,我们将选择生产.

在您输入信息后,您的用户将显示在 SFTP/SSH 仪表板上.

它显示了用户名环境类型(例如 SSH)、路径限制SSH 连接信息.

SSH users image.
您的用户将出现的位置.

此时,您的用户将拥有 SSH 访问权限.

您可以在此区域中随意更改密码和编辑用户.

当您准备好登录时,您可以在连接信息中复制并粘贴用户名以进行配置.

Connection info for SSH.
快速配置屏幕.

然后您可以将其粘贴或输入到您的终端中.之后,它会提示您输入密码.

如果用户名和密码正确,您就可以访问,并且会出现类似于下面的屏幕.

WPMU DEV login screen for SSH.
成功登录的样子.

您现在可以使用命令和执行功能.

设置 SFTP 用户类似于 SSH.只需按照提示操作,就像我们上面的例子一样,一旦成功设置,它就会出现在您的仪表板中.

连接客户端和服务器

既然您已完成设置,请回顾本文开头的核对清单.如果您的远程机器和自己的计算机都设置了 SSH,那么您应该可以开展业务了!

要操作远程机器,SSH 是通过命令执行的.您可以使用许多命令功能.这是一个纲要...

SSH 命令

您可以在远程机器上的一台计算机上运行某些命令.这将使您能够复制文件、列出特定目录中的文件、移动文件等.

这是更高级的,需要了解命令以及它们的作用.

但是,一旦您知道每个命令的作用,您就可以使用它们远程操作系统.

命令的几个例子是:

ls 将显示文件的详细信息,例如修改日期和时间、大小和权限.

Cd 用于更改目录.它将带您到新目录,命令行会指示您所在的位置.

Mkdir 将创建一个新目录.

SSH 中有很多流行的命令.可以在我们的 SFTP & 上找到 WPMU DEV 托管允许的命令列表.SSH 信息页面.

如果您要远程使用计算机,则必须了解命令.

备忘单可以为您提供更多命令可以做什么的洞察力和示例.

需要记住的是 SSH 是一个非常强大的工具,所以如果你确实创建了命令,你必须小心,否则你可能会破坏你的网站.

您可以添加和删除文件,因此如果您输入错误的命令,您可能会丢失内容.

请务必在使用命令之前备份您的网站并熟悉它们的功能.

SSH 和 FTP

您可能听说过 FTP 作为一种远程传输信息的方法.

那么,SSH 和 FTP 有什么区别?

FTP(文件传输协议)是一种标准网络协议,用于在数据网络上的客户端和服务器之间传输文件.文件传输连接(通常)由 FTP 客户端发起并由 FTP 服务器响应.

然后,当通过身份验证时,客户端和服务器之间会发生连接.

任何文件和文件夹都可以在连接的计算机之间向任一方向传输.

How FTP works.
FTP 工作原理的示例.

它与 SSH 不同的原因有几个.

SSH 安全得多.在设计 FTP 时,网络安全并不像今天那么重要.

它不是为了安全而创建的,也没有为正在传输的文件的隐私或完整性提供保护.因此,信息很容易被截获.

如果您擅长使用 Unix 命令,那么 SSH 可能是您的最佳选择.也就是说,通过 FTP,您可以使用任何喜欢的编辑器进行文件编辑.

此外,就速度而言,SSH 更快.

使用 FTP,您需要将文件下载到您的 PC,然后使用 FTP 将其上传到服务器.

使用 SSH,一旦您了解了命令的作用,就可以通过命令快速从服务器获取文件.您可以在几秒钟内下载一个库.

因此,为了安全地传输信息、速度和可靠性,SSH 通常是最佳选择.

现在是尝试我们托管的最佳时机

正如我在本文前面向您展示的,通过我们的主机设置 SSH,这是在 The Hub 2.0 中实现的一种简单方法.

此外,通过我们的托管,我们提供 24/7 全天候支持、屡获殊荣的高级插件、更新的高级版本等等!

我们会用这个来完成(SSH)...

既然您已经涉足 SSH,您就可以安全地远程设置您的网站,并且无需在场即可运行.

如您所见,这就像魔术!

好吧,在这个时代,也许我不会走那么远.但是,这是远程处理 WordPress 网站的绝佳选择.

添加一些很棒的托管(挥手),您将处于良好的 SSH-ape 状态 — 我将停止播放在文字上.

4

发表回复