跳至主要內容

从虚拟机到云计算

Ai4Energy大约 26 分钟

从虚拟机到云计算

我这里先介绍虚拟机,然后讲解云服务器,接着讲容器和容器编排,最后介绍Kubernetes(简称K8s)。以下是每个主题的简要概述:

  1. 虚拟机(Virtual Machine,VM):虚拟机是一种软件仿真的计算机系统,它在物理硬件上模拟出一个完整的计算环境。通过虚拟机,可以在一台物理计算机上运行多个独立的操作系统和应用程序,实现资源的有效利用和隔离。

  2. 云服务器:云服务器是基于云计算技术提供的一种计算资源。它可以在云服务提供商的数据中心上创建和管理,用户可以按需购买和使用,无需关心硬件设备的维护和管理。云服务器提供了灵活、可扩展的计算能力,使用户能够根据需要快速部署和管理应用程序。

  3. 容器:容器是一种轻量级的虚拟化技术,它将应用程序及其所有依赖项打包到一个可移植的单元中。容器可以在不同的计算环境中运行,提供了更高的可移植性和可伸缩性。容器技术能够实现快速部署、高效利用资源和隔离应用程序之间的环境。

  4. 容器编排:容器编排是指自动化管理和协调大规模容器集群的过程。它涉及到调度、扩缩容、服务发现等操作,以确保容器应用程序的高可用性和可靠性。容器编排工具可以简化容器集群的部署和管理,提供了高级的功能和抽象层,使开发人员和运维人员能够更方便地管理容器化应用。

  5. Kubernetes(K8s):Kubernetes是目前最流行的容器编排工具之一,它提供了丰富的功能和强大的编排能力。Kubernetes可以自动化地管理容器化应用程序的部署、伸缩、负载均衡和容错等方面。它还提供了灵活的架构和可扩展性,使得在大规模环境中部署和管理容器应用变得更加简单和可靠。

通过这样的顺序,您可以循序渐进地介绍云计算的相关概念,从虚拟化开始,逐步引入云服务器、容器和容器编排,最后引入Kubernetes作为云原生应用程序部署和管理的解决方案

虚拟机

虚拟机简介

虚拟机(Virtual Machine,VM)是一种软件仿真的计算机系统,它在物理硬件上模拟出一个完整的计算环境。通过虚拟机,可以在一台物理计算机上运行多个独立的操作系统和应用程序,实现资源的有效利用和隔离。

虚拟机可以将一台物理计算机分割为多个虚拟环境,每个环境都拥有自己的操作系统、应用程序和资源。每个虚拟机都被视为一个独立的计算机,可以进行操作系统的安装、应用程序的运行和网络的配置。

虚拟机的好处包括:

  • 资源利用率高:通过虚拟机技术,一台物理计算机可以同时运行多个虚拟机,充分利用硬件资源,降低资源浪费。
  • 隔离性强:每个虚拟机是相互隔离的,它们运行在自己的虚拟环境中,互不干扰,提供了更高的安全性和稳定性。
  • 灵活性和可移植性:虚拟机可以在不同的物理计算机之间迁移,实现应用程序的高度灵活性和可移植性。
  • 管理和维护简便:通过虚拟机管理软件,可以对虚拟机进行集中管理、监控和维护,简化了系统管理的工作。

虚拟机技术是云计算的基础之一,它为云服务器提供了可扩展和弹性的计算资源。通过虚拟机,用户可以根据需要快速创建和管理多个独立的虚拟服务器,实现按需分配计算资源的优势。

有几个流行的虚拟机软件可以选择,以下是其中一些:

  1. VMware vSphere:VMware vSphere是一款功能强大的虚拟化平台,广泛应用于企业级环境。它提供了全面的虚拟化解决方案,包括虚拟机管理、资源调度、高可用性和故障转移等功能。

  2. Microsoft Hyper-V:Hyper-V是微软的虚拟化平台,集成在Windows Server操作系统中。它提供了可靠的虚拟化技术,支持创建和管理多个虚拟机,具有良好的兼容性和集成性。

  3. Oracle VM VirtualBox:VirtualBox是一款免费的开源虚拟机软件,适用于个人和小型企业。它支持多种操作系统,具有易用性和灵活性,适合在桌面环境中运行虚拟机。

  4. KVM(Kernel-based Virtual Machine):KVM是一种基于Linux内核的虚拟化解决方案,它利用虚拟化扩展了Linux操作系统的功能。KVM提供了高性能和安全性,并且作为开源软件,广受欢迎。

  5. Xen:Xen是一种开源的虚拟化平台,它具有高性能和安全性。Xen支持多种操作系统,并提供了强大的虚拟机管理功能和资源分配控制。

这些是目前较为流行的虚拟机软件,每个软件都有自己的特点和适用场景。选择虚拟机软件时,您可以根据需求、预算和技术要求来进行评估和选择。

virtualbox安装ubuntu

以VirtualBox为例,在Windows系统上安装Ubuntu,请按照以下步骤进行操作:

步骤 1:下载软件

  • 在您的Windows主机上,打开浏览器,并访问VirtualBox的官方网站(https://www.virtualbox.orgopen in new window)。
  • 在下载页面上,选择适用于Windows主机的最新版本的VirtualBox软件,并下载安装程序。

步骤 2:安装VirtualBox

  • 打开下载的安装程序,并按照提示进行安装。这将在您的Windows主机上安装VirtualBox。

步骤 3:下载Ubuntu镜像

  • 在浏览器中,访问Ubuntu官方网站(https://ubuntu.comopen in new window)。
  • 在下载页面上,选择您想要安装的Ubuntu版本(例如Ubuntu 20.04 LTS)。
  • 下载适用于桌面版的Ubuntu镜像(通常是一个ISO文件)。

步骤 4:创建虚拟机

  • 打开VirtualBox应用程序。
  • 点击"新建"创建一个新的虚拟机。
  • 在弹出窗口中,输入虚拟机的名称(例如Ubuntu)和选择操作系统类型(Linux)。
  • 根据您下载的Ubuntu镜像选择相应的版本(例如Ubuntu 64位)。
  • 按照默认设置为虚拟机分配内存大小,或根据您的需要进行调整。
  • 在"虚拟硬盘"部分,选择"创建虚拟硬盘"并点击"创建"。
  • 在弹出窗口中,选择虚拟硬盘文件类型(通常选择VDI)。
  • 在存储位置和大小上,可以使用默认设置或按需进行调整。
  • 完成后,您将在VirtualBox主界面上看到新创建的虚拟机。

步骤 5:安装Ubuntu

  • 选中您创建的虚拟机,并点击"启动"。
  • 在弹出窗口中,选择您之前下载的Ubuntu镜像文件(ISO文件)。
  • 点击"启动"开始安装过程。
  • 在Ubuntu安装程序中,按照提示进行操作。您可以选择安装Ubuntu并跟随向导进行设置,或者选择"试用"以进入Ubuntu的Live模式。
  • 完成Ubuntu的安装后,重新启动虚拟机。

步骤 6:享受Ubuntu

  • 在重新启动后,您将看到Ubuntu登录界面。
  • 输入您在安装过程中设置的用户名和密码,登录到Ubuntu桌面。
  • 现在,您可以开始使用安装在VirtualBox中的Ubuntu操作系统了。

这是使用VirtualBox在Windows系统上安装Ubuntu的基本步骤。请注意,具体步骤可能会因VirtualBox或Ubuntu版本的不同而有所不同,但大致流程是类似的。

如果您想要在VirtualBox中安装增强功能,以便实现更好的集成和功能支持(例如,自动调整屏幕分辨率、共享剪贴板、鼠标和键盘的无缝切换等),请按照以下步骤进行操作:

步骤 1:启动虚拟机

  • 在VirtualBox主界面上,选中您安装的Ubuntu虚拟机。
  • 点击"启动"来启动虚拟机。

步骤 2:安装VirtualBox增强功能

  • 在Ubuntu虚拟机启动后,在VirtualBox菜单栏中选择"设备(Devices)"。
  • 在设备菜单中,选择"安装增强功能"(通常在菜单的最下方)。
  • 这将加载一个名为"VBoxGuestAdditions.iso"的虚拟光驱到Ubuntu虚拟机中。

步骤 3:安装增强功能

  • 在Ubuntu虚拟机中,打开终端应用程序。
  • 在终端中,输入以下命令来挂载并运行增强功能的安装程序:
sudo mount /dev/cdrom /mnt
cd /mnt
sudo ./VBoxLinuxAdditions.run
  • 这将安装增强功能到Ubuntu虚拟机中。根据提示,您可能需要输入管理员密码来继续安装过程。

步骤 4:重新启动虚拟机

  • 在安装完成后,输入以下命令来重新启动Ubuntu虚拟机:
sudo reboot
  • 虚拟机将重新启动并加载增强功能。

步骤 5:享受增强功能

  • 在重新启动后,您可以享受增强功能提供的各种特性,如自动调整屏幕分辨率、共享剪贴板、鼠标和键盘的无缝切换等。

请注意,安装增强功能的步骤可能会因VirtualBox或Ubuntu版本的不同而有所不同。如果遇到任何问题,请参考VirtualBox的官方文档或Ubuntu的官方支持资源,以获取更具体的安装指南和解决方案。

wsl2的安装和使用(为了熟悉Linux操作)

很多同学对linux不熟悉,我们可以安装一个WSL2来学习。

当安装WSL2(Windows Subsystem for Linux 2)以在Windows系统上使用Linux环境时,可以按照以下步骤进行:

步骤 1:检查系统要求

  • 确保同学们的计算机运行的是Windows 10操作系统的版本2004或更高版本,并且使用的是64位系统。
  • 还需要启用虚拟化功能(BIOS设置中的虚拟化选项)。

步骤 2:启用WSL功能

  • 打开Windows PowerShell(或命令提示符)作为管理员。右键单击开始菜单,选择"Windows PowerShell(管理员)"。
  • 运行以下命令来启用WSL功能:
dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart

步骤 3:启用虚拟机平台功能

  • 继续在管理员权限的Windows PowerShell中,运行以下命令来启用虚拟机平台功能:
dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart

步骤 4:安装WSL2 Linux内核更新包

步骤 5:设置WSL2为默认版本

  • 打开Windows PowerShell(管理员权限)。
  • 运行以下命令以将WSL2设置为默认版本:
wsl --set-default-version 2

步骤 6:安装Linux发行版

  • 打开Microsoft Store(Microsoft商店)应用程序。
  • 在搜索栏中搜索所需的Linux发行版(如Ubuntu、Debian等)。
  • 选择所需的发行版,并点击"获取"以开始安装过程。
  • 安装完成后,可以在开始菜单或应用程序列表中找到Linux发行版的图标。

步骤 7:配置和使用WSL2

  • 点击Linux发行版的图标启动它。第一次运行时,需要进行一些初始配置,例如创建用户名和密码。
  • 完成配置后,将进入Linux发行版的终端界面,可以在其中执行各种Linux命令和操作。
  • 同学们可以通过WSL2来运行和管理Linux应用程序,进行开发和学习。

请注意,以上步骤提供了一个基本的指导,具体步骤可能会因Windows版本和更新的不同而有所变化。建议在指导同学们安装WSL2时,参考Microsoft的官方文档和指南,以获得最准确的信息和步骤。

在Windows Terminal中使用WSL2可以提供更好的终端体验和多个Linux发行版的集成。以下是在Windows Terminal中使用WSL2的步骤:

步骤 1:安装Windows Terminal

  • 打开Microsoft Store(Microsoft商店)应用程序。
  • 在搜索栏中搜索"Windows Terminal"。
  • 选择"获取"以开始安装Windows Terminal。

步骤 2:启动Windows Terminal

  • 在开始菜单中搜索并打开"Windows Terminal"。
  • Windows Terminal将打开并显示多个终端选项。

步骤 3:配置Windows Terminal使用WSL2

  • 在Windows Terminal中,点击左上角的下拉箭头(或使用快捷键Ctrl+,)以打开设置。

步骤 4:编辑配置文件

  • 在设置中,选择所需的配置文件(如Ubuntu、Debian等)。
  • 在配置文件的"guid"属性中,输入WSL2分配的唯一标识符。您可以使用命令wsl -l在Windows PowerShell或命令提示符中获取已安装的WSL2发行版的列表和标识符。

步骤 5:保存配置文件

  • 在编辑完配置文件后,保存并关闭设置窗口。

步骤 6:打开新终端

  • 在Windows Terminal中,点击左上角的"+"按钮,或按下快捷键Ctrl+Shift+T,以打开一个新的终端标签。
  • 在新的终端标签中,将自动使用配置文件中指定的WSL2发行版。

步骤 7:切换和使用多个终端

  • 在Windows Terminal中,您可以使用下拉箭头或快捷键Ctrl+Tab来切换不同的终端标签。
  • 在每个终端标签中,您可以像在正常的Linux终端中一样运行和管理命令、应用程序等。

通过以上步骤,您可以在Windows Terminal中配置和使用WSL2,并享受多个Linux发行版的集成和终端体验。请注意,具体的步骤可能因Windows Terminal的版本和配置文件的不同而有所变化。如果需要更多详细信息和配置选项,请参考Windows Terminal的官方文档和指南。

如果您想在 MobaXterm 中使用 WSL2(Windows Subsystem for Linux 2),可以按照以下步骤进行设置:

步骤 1:安装 MobaXterm

步骤 2:启动 MobaXterm

  • 在安装完成后,打开 MobaXterm 应用程序。

步骤 3:配置 WSL2

  • 在 MobaXterm 的主界面上,点击 "Session"(会话)按钮打开会话窗口。
  • 在会话窗口中,点击 "New session"(新建会话)按钮。
  • 在左侧的会话类型列表中,选择 "WSL"。
  • 在右侧的 "WSL settings"(WSL 设置)部分,选择您想要使用的 WSL2 发行版。
  • 点击 "OK"。

步骤 4:连接到 WSL2

  • 在会话窗口中,点击 "Start local terminal"(启动本地终端)按钮。
  • 这将打开一个新的终端窗口,连接到您选择的 WSL2 发行版。

步骤 5:使用 WSL2

  • 在 MobaXterm 的终端窗口中,您可以像在任何其他终端中一样使用 WSL2。
  • 运行 Linux 命令、管理文件、安装和运行应用程序等。

通过以上步骤,您可以在 MobaXterm 中配置并使用 WSL2。请注意,MobaXterm 中的具体步骤可能会因版本和配置的不同而有所变化。如果需要更多详细信息和设置选项,请参考 MobaXterm 的官方文档和指南。

当使用WSL2时,以下是一些常用的命令示例:

  1. 查看当前目录:
pwd
  1. 列出当前目录的文件和文件夹:
ls
  1. 切换目录:
cd <目录路径>
  1. 创建新目录:
mkdir <目录名称>
  1. 复制文件或目录:
cp <源文件/目录> <目标路径>
  1. 安装软件包:
sudo apt-get install <软件包名称>

这些命令可以让您在WSL2中进行常见的文件操作和软件安装。根据您的需求,可以使用这些命令作为起点,并在需要时进一步扩展和探索其他命令和操作。请记住,具体命令的使用方法和选项可能会因所使用的Linux发行版和软件版本而有所不同。如果需要更多详细信息和特定命令的使用说明,请参考所使用的Linux发行版的官方文档或在线资源。

云计算

云计算简介

云计算是一种通过网络提供计算资源和服务的模式,它提供了便捷的、按需的、可伸缩的计算资源,从而使用户能够在不拥有实际物理基础设施的情况下使用和管理计算资源。

云计算的核心概念包括以下几个方面:

  1. 虚拟化:云计算通过虚拟化技术将物理计算资源(如服务器、存储设备)抽象为虚拟资源,使其能够在多个用户之间进行共享。虚拟化技术包括虚拟机和容器等。

  2. 弹性伸缩:云计算允许根据实际需求动态调整计算资源的规模,即根据业务负载的增减自动调整资源的分配。这种弹性伸缩能力可以帮助用户在需要更多计算能力时扩展资源,并在需求减少时进行资源的释放,从而提高资源的利用率和成本效益。

  3. 服务模型:云计算提供多种服务模型,包括基础设施即服务(IaaS)、平台即服务(PaaS)和软件即服务(SaaS)。这些服务模型层次不同,提供的服务范围也不同,用户可以根据自身需求选择合适的服务模型来构建和管理应用程序。

  4. 公共云、私有云和混合云:公共云是由云服务提供商管理和提供的云计算资源和服务,多个用户共享这些资源。私有云是由企业或组织自己搭建和管理的云计算基础设施,仅对内部用户提供服务。混合云是公共云和私有云的结合,使企业可以在需要时灵活地将工作负载部署到公共云或私有云中。

  5. 云安全性:云计算提供商通常采取一系列措施来保护用户的数据和应用程序安全。这些措施包括数据加密、身份认证和访问控制、备份和灾难恢复等,以确保用户数据的机密性、完整性和可用性。

云计算的优势包括灵活性、可伸缩性、成本效益和高可用性。它为个人用户、企业和组织提供了强大的计算能力和资源,使其能够更高效地开展业务、创新和应对变化。

需要注意的是,云计算领域有多个主要的云服务提供商,如阿里云、天翼云、华为云、亚马逊AWS、微软Azure和谷歌云平台等,它们提供各种云服务和工具,支持各种应用场景和需求。

通俗的理解,就是云服务商把很多硬件整合在一起,切分成不同的豆腐块,每个豆腐块都进行虚拟化,然后给我们卖这样的豆腐块(虚拟机)。虽然不严谨,可以这样理解吧。

是的,您可以这样理解云计算。云服务商通过整合大量的硬件资源(如服务器、存储设备)并进行虚拟化,将这些物理资源切分成多个虚拟化的单位,通常被称为"云实例"或"豆腐块",这些虚拟化单位可以是虚拟机、容器或其他形式的计算资源。然后,云服务商通过提供这些虚拟化单位给用户,让用户能够按需购买和使用这些计算资源,而无需拥有和维护实际的物理基础设施。

这种虚拟化的方式使用户可以根据自身需求灵活地使用计算资源,无需关心底层的硬件和基础设施细节。用户可以根据业务需求动态调整计算资源的规模,并通过云服务商提供的管理工具来部署、监控和管理这些虚拟化单位。云计算的优势在于其灵活性、可伸缩性和成本效益,使用户能够更高效地利用计算资源,集中精力开展业务和创新。

虚拟化是云计算的基础技术之一,它通过将物理资源虚拟化为虚拟资源,实现了资源的共享和隔离。虚拟机是最常见的虚拟化形式之一,它将物理服务器切分为多个虚拟机实例,每个虚拟机实例都具有自己的操作系统和应用程序。通过虚拟化技术,云服务商能够提供可靠、安全且高度可扩展的计算资源给用户,让用户能够以更灵活和经济的方式使用计算能力。

所以,您的理解是准确的,云服务商将硬件资源虚拟化为不同的虚拟化单位(如虚拟机),然后提供给用户使用。用户可以根据需求选择和购买这些虚拟化单位,并将其用于托管应用程序、存储数据等各种计算任务。

公有云与私有云

当谈到云计算时,常常涉及到公有云、私有云和混合云这三个概念。它们表示不同类型的云计算部署和服务模式:

  1. 公有云(Public Cloud):
    公有云是由云服务提供商管理和提供的云计算基础设施和服务。在公有云中,云服务提供商拥有并管理硬件设施、虚拟化资源和服务,并将其提供给多个用户进行共享。用户可以按需购买和使用这些云服务,通常采用按使用量计费的模式。公有云提供了高度可扩展的计算资源、广泛的服务选择和灵活的付费模式。用户无需关心底层的基础设施和维护工作,可以专注于应用程序的开发和业务需求。

  2. 私有云(Private Cloud):
    私有云是企业或组织自己搭建和管理的云计算基础设施。在私有云中,计算资源、存储和网络等基础设施资源都是专门为企业内部使用而部署的。私有云提供了更高的安全性和控制性,因为企业可以自主管理和控制整个云环境。私有云可以部署在企业的数据中心内或由第三方服务提供商托管。它可以满足特定的合规要求、安全需求或业务流程的定制化需求。

  3. 混合云(Hybrid Cloud):
    混合云是公有云和私有云的结合。在混合云模式下,企业可以同时利用公有云和私有云来满足不同的需求。例如,企业可以将敏感数据和关键应用部署在私有云中,以满足安全和合规性要求,同时将其他非敏感的工作负载部署在公有云中,以获得弹性和可扩展性。混合云提供了更灵活的部署模式,使企业可以根据实际需求在公有云和私有云之间进行动态迁移和资源调度。

混合云可以充分利用公有云和私有云的优势,同时解决安全性、合规性和可扩展性等方面的需求。企业可以根据业务需求和实际情况,灵活选择合适的云计算部署模式,并进行资源的分配和管理。

找个云服务器实操一下

当以阿里云的ECS为例,在阿里云上创建一台虚拟机并安装Ubuntu LTS的步骤如下:

  1. 注册阿里云账号并登录到阿里云控制台(https://www.aliyun.comopen in new window)。

  2. 进入ECS控制台,在左侧导航栏中选择"实例",然后点击"创建实例"按钮。

  3. 在创建实例页面,按照以下步骤进行配置:

    • 地域和可用区:选择适合的地域和可用区。
    • 实例配置:选择合适的实例规格、计费方式和购买时长。
    • 网络和安全组:选择网络类型和安全组配置。
    • 系统配置:选择操作系统镜像,点击"更多"按钮选择Ubuntu LTS版本。
    • 存储和盘:选择系统盘和数据盘的配置。
    • 标签和备注:根据需要添加标签和备注信息。
    • 网络计费:根据需要选择带宽计费方式。
    • 安全与监控:选择是否开启云监控和安全加固等功能。
    • 完成配置后,点击"立即购买"按钮。
  4. 确认订单信息后,点击"去开通"按钮。

  5. 阿里云将开始创建并启动您的实例。请等待几分钟,直到实例状态显示为"运行中"。

  6. 当实例状态为"运行中"时,您可以在实例列表中找到您的实例。点击实例名称,进入实例详情页。

  7. 在实例详情页中,您可以查看实例的基本信息。找到公网IP地址或登录密码信息,并记下来。

  8. 打开SSH客户端(如PuTTY或OpenSSH),使用您的公网IP地址和登录密码连接到您的实例。如果使用Windows系统,您可以使用SSH客户端工具(如PuTTY)来连接。

  9. 在SSH终端中,输入您的登录用户名和密码,即可成功登录到您的Ubuntu虚拟机。

通过以上步骤,您就可以在阿里云的ECS上成功创建并登录到一台安装了Ubuntu LTS的虚拟机。请注意,创建实例的过程中会涉及到一些配置和选项,具体根据您的需求进行相应的选择和设置。

登录云服务器

下面分别介绍如何使用 MobaXterm 和 PuTTY 进行云服务的登录,并演示密码认证和密钥认证的步骤。

使用 MobaXterm 登录云服务:

  1. 下载和安装 MobaXterm(https://mobaxterm.mobatek.net/download-home-edition.html)。open in new window

  2. 打开 MobaXterm,点击 "Session" 标签页。

  3. 在 "Session" 标签页中,选择 "SSH" 作为远程会话类型。

  4. 输入云服务的 IP 地址或主机名。

  5. 在 "Specify username" 输入框中,输入登录用户名。

  6. 在 "Advanced SSH settings" 中,可以选择使用密码认证或密钥认证。首先,我们使用密码认证,请确保 "Use private key" 复选框未选中。

  7. 点击 "OK" 按钮,MobaXterm 将尝试与云服务建立 SSH 连接,并提示输入密码。

  8. 输入您的密码,按下回车键即可登录到云服务。

使用 PuTTY 登录云服务:

  1. 下载和安装 PuTTY(https://www.putty.orgopen in new window)。

  2. 打开 PuTTY。

  3. 在 "Host Name (or IP address)" 输入框中,输入云服务的 IP 地址或主机名。

  4. 在 "Connection type" 下选择 "SSH"。

  5. 在 "Specify username" 输入框中,输入登录用户名。

  6. 在 "Category" 列表中,展开 "SSH" 选项,然后选择 "Auth"。

  7. 在 "Auth" 部分,可以选择使用密码认证或密钥认证。首先,我们使用密码认证,请确保 "Attempt authentication using Pageant" 复选框未选中。

  8. 点击 "Open" 按钮,PuTTY 将尝试与云服务建立 SSH 连接,并提示输入密码。

  9. 输入您的密码,按下回车键即可登录到云服务。

现在我们来介绍如何设置密钥认证:

使用 MobaXterm 设置密钥认证:

  1. 打开 MobaXterm。

  2. 点击 "Settings" 菜单,选择 "Configuration"。

  3. 在 "Configuration" 对话框中,展开 "SSH",然后选择 "SSH keys"。

  4. 点击 "Generate" 按钮,生成新的密钥对。

  5. 选择密钥的类型和长度,并点击 "Generate"。

  6. 在 "Key passphrase" 输入框中,输入一个密码以保护您的密钥(可选)。

  7. 点击 "Save private key" 按钮,将私钥保存到本地计算机。

  8. 在云服务上,将公钥(保存在 MobaXterm 中的公钥)添加到您的用户账户的 ~/.ssh/authorized_keys 文件中。

  9. 在 MobaXterm 中,返回到 "Session" 标签页,输入云服务的 IP 地址或主机名、登录用户名。

  10. 在 "Advanced SSH settings" 中,选择 "Use private key"

复选框,并点击 "Browse" 选择您保存的私钥文件。

  1. 点击 "OK",然后尝试连接到云服务。MobaXterm 将使用密钥认证进行连接。

使用 PuTTY 设置密钥认证:

  1. 打开 PuTTY。

  2. 在 "Category" 列表中,展开 "SSH",然后选择 "Auth"。

  3. 点击 "Browse" 按钮,选择您保存的私钥文件。

  4. 返回到 "Session" 标签页,输入云服务的 IP 地址或主机名、登录用户名。

  5. 点击 "Open" 按钮,PuTTY 将使用密钥认证进行连接。

通过以上步骤,您可以使用 MobaXterm 和 PuTTY 进行云服务的登录,并通过密码认证或密钥认证进行身份验证。请根据您的需求选择合适的认证方式。

下面是使用 ssh-keygen 生成密钥对并设置 authorized_keys 的步骤:

  1. 打开终端或命令行窗口。

  2. 输入以下命令来生成密钥对:

ssh-keygen -t rsa -b 2048

这将生成一个 RSA 类型的密钥对,密钥长度为 2048 位。

  1. 按照提示,输入密钥文件的保存路径和名称,或者直接按回车键使用默认路径和名称。

  2. 在生成密钥对的过程中,您将被要求设置一个密码短语(passphrase)。可以选择设置密码短语以增加密钥的安全性,或者直接按回车键跳过密码短语设置。

  3. 完成后,会在指定路径生成两个文件:id_rsa(私钥)和 id_rsa.pub(公钥)。

  4. 将公钥内容复制到剪贴板中。您可以使用以下命令在终端中打印公钥:

cat ~/.ssh/id_rsa.pub
  1. 在云服务中,登录到您的用户账户。

  2. 打开 ~/.ssh/authorized_keys 文件,如果文件不存在,则创建一个新的。

  3. 将剪贴板中的公钥内容粘贴到 authorized_keys 文件中,并保存文件。

  4. 设置 authorized_keys 文件的权限为 600,确保只有当前用户具有读写权限:

chmod 600 ~/.ssh/authorized_keys
  1. 现在,您可以使用私钥连接到云服务,而无需输入密码。使用以下命令进行连接:
ssh username@server_ip_address -i path/to/private_key

其中,username 是您的用户名,server_ip_address 是云服务的 IP 地址,path/to/private_key 是私钥文件的路径和名称。

通过以上步骤,您已经成功生成了密钥对,并将公钥添加到云服务的 authorized_keys 文件中,从而实现了密钥认证的登录方式。现在,您可以使用私钥连接到云服务,而无需每次输入密码。请确保妥善保管私钥,以确保安全性。

上次编辑于:
贡献者: Mingtao Li