AWS 入门实践-远程访问AWS EC2 Linux虚拟机

news/2024/5/30 18:55:53/文章来源:https://blog.csdn.net/weixin_39108752/article/details/136566722

远程访问AWS EC2 Linux虚拟机是AWS云计算服务中的一个基本且重要的技能。本指南旨在为初学者提供一系列步骤,以便成功地设置并远程访问他们的EC2 Linux实例。包括如何上传下载文件、如何ssh远程登录EC2虚拟机。

一、创建一个AWS EC2 Linux 虚拟机 

创建一个Amazon EC2 Linux虚拟机(实例)的步骤如下:

  1. 登录到AWS管理控制台

    • 打开浏览器,访问 AWS管理控制台。
    • 输入你的AWS账户的电子邮件地址和密码,然后点击“登录”。
  2. 访问EC2 Dashboard

    • 在控制台的“Find Services”搜索框中,输入EC2并选择它。这将带你进入EC2 Dashboard
  3. 启动实例

    • 在EC2 Dashboard中,点击“Launch Instance”来开始创建一个新的虚拟机。
  4. 选择AMI(Amazon Machine Image)

    • 你将看到一个列表,展示了可用的AMI。选择一个Linux AMI。例如,你可以选择“Amazon Linux 2 AMI”或“Ubuntu Server”。点击“Select”继续。
  5. 选择实例类型

    • 选择你想要的虚拟机的大小(CPU、内存、存储等)。对于简单的测试,你可以选择“t2.micro”(在免费使用层中可用)。点击“Next: Configure Instance Details”。
  6. 配置实例

    • 在“Configure Instance Details”页面,你可以保留大多数选项为默认值。对于特定的用途,你可能需要调整网络或子网设置,或者添加IAM角色。如果你刚开始使用,可以跳过这些高级配置,点击“Next: Add Storage”。
  7. 添加存储

    • 根据需要调整存储大小。对于基本的Linux实例,默认值通常就足够了。点击“Next: Add Tags”。
  8. 添加标签

    • (可选)为实例添加键值对的标签,这有助于管理和识别你的资源。例如,Key: Name, Value: MyFirstEC2。点击“Next: Configure Security Group”。
  9. 配置安全组

    • 安全组相当于虚拟防火墙,用于控制访问实例的流量。你可以创建一个新的安全组或选择一个现有的。确保至少允许SSH(端口22)从你的IP地址访问,这样你才能远程连接到实例。点击“Review and Launch”。
  10. 查看和启动

    • 查看你的实例配置。如果一切正确,点击“Launch”。
    • 弹出一个对话框,提示你选择一个密钥对。如果你没有密钥对,选择“Create a new key pair”,命名密钥,例如MyFirstEC2.pem,然后下载它。确保不要丢失这个密钥文件,因为它是连接到你的实例的唯一方法。选择你的密钥对,勾选确认你拥有所选密钥对私钥,然后点击“Launch Instances”。
  11. 查看实例

    • 点击“View Instances”来回到EC2 Dashboard。你将看到你的实例正在启动。启动可能需要几分钟。

一旦实例的状态变为“running”,且检查状态为“2/2 checks passed”,你就可以通过SSH使用你的私钥文件连接到你的Linux实例了。

二、通过WinSCP上传和下载文件

WinSCP (Windows Secure Copy) 是一个免费、开源的Windows应用程序,主要用于通过SFTP (SSH File Transfer Protocol)、SCP (Secure Copy Protocol)、FTP (File Transfer Protocol) 和WebDAV协议在本地计算机和远程计算机之间安全地传输文件。它广泛用于与Unix和Linux服务器系统的文件交互。下载地址:

Downloading WinSCP-6.3.1-Setup.exe :: WinSCP

以下是WinSCP的一些主要特点:

  1. 图形用户界面:WinSCP提供了一个直观的图形用户界面,使文件传输操作更加直观和用户友好。用户可以通过简单的拖放操作在本地和远程文件系统之间复制文件。

  2. 多种传输协议支持:除了SFTP和SCP,WinSCP还支持使用FTP和WebDAV协议进行文件传输,这为用户提供了灵活性,可以选择适合他们需求的协议。

  3. 安全性:WinSCP使用SSH (Secure Shell) 提供安全的文件传输。它确保数据在传输过程中通过加密来保护,防止未经授权的访问和数据泄露。

  4. 脚本和自动化:WinSCP支持脚本和自动化功能,允许用户自动执行文件传输和同步任务。这对于需要定期执行文件备份或更新的任务非常有用。

  5. 集成编辑器:WinSCP内置文本编辑器允许用户直接编辑远程服务器上的文件,无需在本地修改后再上传。

  6. Windows集成:WinSCP可以集成到Windows Shell中,提供了上下文菜单和拖放操作,以及URL链接的支持。

针对AWS EC2 实例 MyFirstEC2 ,我们想要通过WinSCP上传一个叫做example.txt的文件,并从EC2实例下载一个叫做report.pdf的文件。我们的EC2实例使用的是Amazon Linux AMI,因此默认的用户名是ec2-user

  1. 准备工作

    • 确保你的EC2实例正在运行,并且你已经有了该实例的私有密钥文件(例如,MyFirstEC2.pem)。
    • 确保已经安装了WinSCP。
  2. 启动WinSCP

    • 打开WinSCP,登录窗口会自动显示。
  3. 会话设置

    • 在“文件协议”选择SFTP
    • 在“主机名”中输入你的EC2实例的公有DNS或IP地址,例如ec2-198-51-100-1.compute-1.amazonaws.com。如何找到这个地址,在EC2的实例详细信息中,如下图:
    • 确保“端口号”是22
    • 在“用户名称”中输入ec2-user
  4. 配置密钥

    • 点击“高级”按钮,然后在“SSH”下选择“身份验证”。
    • 在“私钥文件”下,点击“...”按钮,找到并选择你的.pem私钥文件(例如,my-ec2-keypair.pem)。WinSCP会提示你将这个文件转换为.ppk格式。接受提示并保存新的密钥文件。
  5. 登录

    • 点击“登录”按钮。如果是首次连接到这个EC2实例,WinSCP会显示一个警告,询问你是否信任这个主机。点击“是”继续。
  6. 上传example.txt

    • 一旦连接成功,你会看到WinSCP窗口的左侧是你的本地文件系统,右侧是EC2实例的文件系统。
    • 在左侧找到example.txt文件,然后将其拖拽到右侧的窗口中,选择你希望上传到的目录。
  7. 下载report.pdf

    • 在右侧窗口中找到report.pdf文件,然后将其拖拽到左侧的窗口中,选择你希望保存到的本地目录。
  8. 完成传输后断开连接

    • 文件传输完成后,可以在WinSCP窗口中选择“会话”>“断开连接”,然后关闭WinSCP。

通过这个过程,你就可以利用WinSCP方便地在本地计算机和AWS EC2 Linux实例之间传输文件。

三、通过Putty 远程访问虚拟机

Putty下载地址链接如下:

Download PuTTY: latest release (0.80) (greenend.org.uk)

  1. 获取 AWS 实例的公网 IP 地址或 DNS 名称: 登录到 AWS 管理控制台,导航到 EC2 服务,然后找到你的运行中的实例。在实例列表中,你将能够看到你的实例的公网 IP 地址或 DNS 名称。

  2. 转换 SSH 密钥: 如果你还没有将 .pem 密钥转换为 PuTTY 支持的 .ppk 格式,可以按照以下步骤使用 PuTTYgen 工具进行转换:

    • 打开 PuTTYgen。
    • 点击 "Conversions" -> "Import key",然后选择你的 MyFirstEC2.pem 密钥文件。
    • 选择 "Save private key" 按钮,以便将密钥保存为 .ppk 格式。
  3. 配置 PuTTY 连接

    • 打开 PuTTY,进入 "Session" 部分。
    • 在 "Host Name (or IP address)" 栏中输入你的 AWS 实例的公网 IP 地址或 DNS 名称。
    • 确保 "Port" 栏中的端口号设置为 22(SSH 默认端口)。
    • 在 "Connection type" 下选择 "SSH"。
  4. 配置 SSH 密钥

    • 在左侧导航栏中选择 "Connection" -> "SSH" -> "Auth"。
    • 点击 "Browse" 按钮,选择之前转换好的 .ppk 密钥文件。
  5. 保存会话配置

    • 在 "Session" 部分,输入一个会话名称,比如 "AWS SSH"。
    • 点击 "Save" 按钮保存配置。
  6. 连接到 AWS 实例

    • 回到 "Session" 部分,点击 "Open" 按钮连接到 AWS 实例。
    • 如果一切设置正确,你将看到一个命令行提示符,表示你已经成功连接到了 AWS 实例的 Linux 虚拟机。
  7. 接到你的EC2实例

  8. 点击“Open”按钮以启动与EC2实例的连接。
  9. 如果是第一次连接到这个服务器,PuTTY会显示一个安全警告,询问你是否信任这个服务器的主机密钥。点击“Yes”或“Accept”以继续。
  10. 当被要求输入用户名时,输入适用于你的AMI的用户名。例如,对于Amazon Linux AMI,默认用户名是“ec2-user”,对于Ubuntu AMI,则是“ubuntu”。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.luyixian.cn/news_show_1005708.aspx

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

HBuilder发行微信小程序

首先需要完善mainifest.json中的基本配置 这个需要组测dcloud才可以获取,注册后点击重新获取就可以。 然后发行前还需要完成dcloud的信息,这个他会给你网址 点击连接完成信息填写就可以了 然后就可以发行了。 发行成功后会自动跳转微信小程序&#xff…

基于YOLOv8/YOLOv7/YOLOv6/YOLOv5的木材表面缺陷检测系统(深度学习+Python代码+UI界面+训练数据集)

摘要:开发高效的木材表面缺陷检测系统对于提升木材加工行业的质量控制和生产效率至关重要。本篇博客详细介绍了如何运用深度学习技术构建一个木材表面缺陷检测系统,并提供了完整的实现代码。该系统采用了强大的YOLOv8算法,并对YOLOv7、YOLOv6…

LeetCode101题:对称二叉树(python3)

对称二叉树定义: 对于树中 任意两个对称节点 L 和 R ,一定有: L.val R.val :即此两对称节点值相等。 L.left.val R.right.val :即 L的 左子节点 和 R 的 右子节点 对称。 L.right.val R.left.val :即 L…

微服务之商城系统

文章目录 一、商城系统建立之前的一些配置1、nacos2、Mysql3、consul【暂时不使用consul注册服务】这个可以跳过4、redis 二、grpc环境搭建三、微服务架构使用的protobuf1、查看proto的版本号2、安装protoc-gen-go和protoc-gen-go-grpc3、生成protobuff以及grpc的文件 一、商城…

EMQX+InfluxDB+Grafana 构建物联网可视化平台

EMQXInfluxDBGrafana 构建物联网可视化平台 本文以常见物联网使用场景为例,介绍了如何利用 EMQ X MQTT 服务器 InfluxDB Grafana 构建物联网数据可视化平台,将物联网设备上传的时序数据便捷地展现出来。 在物联网项目中接入平台的设备数据和数据存储…

Hadoop生态选择(一)

一、项目框架 1.1技术选型 技术选型主要考虑因素:维护成本、总成本预算、数据量大小、业务需求、行业内经验、技术成熟度。 数据采集传输:Flume,Kafka,DataX,Maxwell,Sqoop,Logstash数据存储:MySQL,HDFS…

设计模式-行为型模式-迭代器模式

迭代器模式(Iterator),提供一种方法顺序访问一个聚合对象中各个元素,而又不暴露该对象的内部表示。[DP] 首先,定义一个接口Iterator,它包含了遍历聚合对象所需的方法: public interface Iterato…

Linux Docker安装redis缓存数据库

文章目录 一、查找Redis镜像二、拉取redis镜像三、创建数据目录和配置文件四、创建redis容器 一、查找Redis镜像 首先到docker镜像仓库下载redis镜像。地址:https://hub.docker.com/搜索redis,如下:找到对应想要下载的版本: 二、…

openAI key 与ChatGPTPlus的关系,如何升级ChatGPTPLus

一、前言 先详细介绍一下Plus会员和Open API之间的区别: 实际上,这两者是相互独立的。举例来说,虽然您开通了Plus会员,并不意味着您就可以使用4.0版本的API。尽管这两个账户可以是同一个,但它们是完全独立的平台。 …

Day15 面向对象进阶——接Day14

Day15 面向对象进阶——接Day14 文章目录 Day15 面向对象进阶——接Day14一、访问修饰符二、Object三、深入String的equals()方法四、final 一、访问修饰符 1、含义:修饰类、方法、属性,定义使用的范围 2、经验: 2.1.属性一般使用private修…

关于安卓ZXing条码识别(二)适配竖屏

背景 不知道如何引入源码的,请看我第一篇文章,安卓源码引入 第一篇文章,粗略讲解了如何引入zxing到安卓的源码中,但是默认是横屏识别。 本文内容,就是如何进行竖屏识别。 环境 win10 as4 jdk8 感谢 博客 实现 …

离散化算法,以Acwing802.区间和为例子(C++实现)

目录 1.例题2.算法实现思路3.代码 1.例题 假定有一个无限长的数轴,数轴上每个坐标上的数都是 0现在,我们首先进行 n 次操作,每次操作将某一位置 x 上的数加 c接下来,进行 m 次询问,每个询问包含两个整数 l 和 r&#…

数学建模【对粒子群算法中惯性权重和学习因子的改进】

一、改进原因 这是前面 数学建模【粒子群算法】 中的一部分,这里提到了w存在的一些问题,那么本篇介绍一些方法对w和因子进行一些改进,提高粒子群算法的效率和准确度。 二、改进方法 1.线性递减惯性权重 惯性权重w体现的是粒子继承先前的速度…

Linux:kubernetes(k8s)pod的基础操作(6)

Linux:kubernetes(k8s)允许在任意节点使用kubectl命令(5)-CSDN博客https://blog.csdn.net/w14768855/article/details/136460090?spm1001.2014.3001.5501 我在前两张进行了基础环境的一系列搭建,现在就正…

LeetCode 189.轮转数组(三种方法解决)

文章目录 题目暴力求解空间换时间三段逆置总结 题目 LeetCode 189.轮转数组 给定一个整数数组 nums,将数组中的元素向右轮转 k 个位置,其中 k 是非负数。 输入: nums [1,2,3,4,5,6,7], k 3 输出: [5,6,7,1,2,3,4] 解释: 向右轮转 1 步: [7,1,2,3,4,5…

蓝桥杯真题讲解:三国游戏(贪心)

蓝桥杯真题讲解&#xff1a;三国游戏&#xff08;贪心&#xff09; 一、视频讲解二、正解代码 一、视频讲解 蓝桥杯真题讲解&#xff1a;三国游戏&#xff08;贪心&#xff09; 二、正解代码 //三国游戏&#xff1a;贪心 #include<bits/stdc.h> #define int long lon…

Mysql 死锁案例2-间隙锁与意向插入锁冲突

死锁复现 CREATE TABLE t (id int(11) NOT NULL,c int(11) DEFAULT NULL,d int(11) DEFAULT NULL,PRIMARY KEY (id),KEY c (c) ) ENGINEInnoDB DEFAULT CHARSETutf8;/*Data for the table t */insert into t(id,c,d) values (0,0,0),(5,5,5),(10,10,10) 事务1事务2T1START …

HarmonyOS NEXT应用开发之Tab组件实现增删Tab标签

介绍 本示例介绍使用了Tab组件实现自定义增删Tab页签的功能。该场景多用于浏览器等场景。 效果图预览 使用说明&#xff1a; 点击新增按钮&#xff0c;新增Tab页面。点击删除按钮&#xff0c;删除Tab页面。 实现思路 设置Tab组件的barHeight为0&#xff0c;隐藏组件自带的…

Linux:导出环境变量命令export

相关阅读 Linuxhttps://blog.csdn.net/weixin_45791458/category_12234591.html?spm1001.2014.3001.5482 Linux中的内建命令export命令用于创建一个环境变量&#xff0c;或将一个普通变量导出为环境变量&#xff0c;并且在这个过程中&#xff0c;可以给该环境变量赋值。 下面…

深度学习进阶:揭秘强化学习原理,实战应用全解析!

作为机器学习领域的一大分支&#xff0c;强化学习以其独特的学习方式吸引了众多研究者和实践者的目光。强化学习&#xff0c;顾名思义&#xff0c;是通过不断地强化与环境的交互来优化决策策略。在这个过程中&#xff0c;智能体通过试错&#xff0c;根据环境给出的奖励信号来调…