1. SSH 是什么?
首先,为了更好地了解 SSH 在 Linux 外部运行时所起的作用,我们需要知道什么是 SSH。SSH(Secure Shell)是一种加密网络协议,用于在不安全的网络中安全地传输数据。通过 SSH,用户可以远程登录到另一台计算机,并执行命令。
1.1 SSH 的工作原理
SSH 的工作原理是将客户端和服务器进行加密通信,以此保护数据的传输过程。具体而言,SSH 在客户端和服务器之间建立一个安全的通道,客户端和服务器之间的所有数据都会被加密,只有在服务器上解密后,才能够被正常使用。
下面是 SSH 的工作流程:
+------------+ +--------------+
| Client | | Server |
+------------+ +--------------+
| |
| 发起连接请求 |
|------------------>|
| | |
| 生成随机数 |
| | |
| 发送随机数 |
|------------------>|
| | |
| 计算共享密钥K1 |
| 计算共享密钥K2 |
| | |
| 发送K1给客户端 |
| 发送K2给服务器 |
|<------------------|
| | |
| 生成协议版本 |
| 发送协议版本 |
|<------------------|
| | |
| 协商密钥 |
| | |
| 认证身份 |
| | |
| 认证成功/失败 |
|<------------------|
| | |
| 安全通信 |
|------------------>|
1.2 SSH 提供的安全性
SSH 提供了一个非常安全的加密通道,使得通过 SSH 连接到远程主机运行命令,可以安全地传输敏感数据。例如,您可能需要在远程主机上运行一个脚本,但脚本需要您在本地环境中输入密码才能获得访问权限。通过使用 SSH,您可以在不暴露密码的情况下将脚本发送到远程主机进行执行。
2. Linux 外部运行与 SSH 的完整连接
在 Linux 中使用 SSH 可以连接到远程主机并执行命令。但是,如果您的计算机上没有安装 Linux 操作系统,如何才能在 Linux 外部运行命令并与远程主机建立 SSH 连接呢?这就是本篇文章想要介绍的问题。
2.1 在 Windows 中使用 SSH
在 Windows 中,您可以使用 PuTTY 软件来建立 SSH 连接。PuTTY 是一种常用的 SSH/Telnet 客户端,可以在 Windows 操作系统中使用。
具体步骤如下:
在浏览器中打开 PuTTY 的官网 http://www.chiark.greenend.org.uk/~sgtatham/putty/latest.html ,下载最新版本的 PuTTY。
点击下载后的 exe 文件,按提示进行安装。安装完成后,您可以在 C:\Program Files\PuTTY 文件夹中找到 PuTTY.exe 文件。
打开 PuTTY.exe 文件,输入远程主机的 IP 地址和端口号(默认为 22),然后点击 Open。
输入用户名和密码以登录到远程 Linux 主机。
登录成功后,您可以在 PuTTY 的命令行中输入命令。
2.2 在 MacOS 中使用 SSH
MacOS 系统自带 SSH 客户端,因此不需要安装额外的软件。您可以通过在终端中打开 SSH 客户端,输入命令来连接到远程主机。具体步骤如下:
在 MacOS 终端中,输入以下命令:
ssh username@remote_host
其中,remote_host 为远程主机的 IP 地址或域名,username 是远程主机上的用户名。
然后,您会被要求输入密码。输入密码后,您就可以与远程主机建立 SSH 连接。
3. 总结
通过本篇文章的介绍,您应该已经了解了 SSH 在 Linux 外部运行时所起的作用,以及在 Windows 和 MacOS 中如何使用 SSH 来连接到远程主机并执行命令。
值得一提的是,通过 SSH 建立的连接是加密的,所以可以保证数据的安全性。如果您需要在不暴露密码的情况下将命令发送给远程主机进行执行,使用 SSH 是一个非常安全的方法。