使用 PuTTY 从 Windows 连接到亚马逊云的 Linux 实例

转载 2016年07月22日 14:09:47
 

使用 PuTTY 从 Windows 连接到亚马逊云的 Linux 实例

启动您的实例之后,您可以连接到该实例,然后像使用您面前的计算机一样来使用它。

Note

启动实例后,需要几分钟准备好实例,以便您能连接到实例。检查您的实例是否通过了状态检查 - 您可以在Instances (实例) 页上的 Status Checks (状态检查) 列中查看此信息。

以下说明介绍如何使用 PuTTY(适用于 Windows 的免费 SSH 客户端)连接到您的实例。如果您在尝试连接到您的实例时收到错误消息,请参阅排查实例的连接问题

先决条件

使用 PuTTY 连接到您的 Linux 实例之前,请先完成以下先决条件:

  • 安装 PuTTY

    从 PuTTY 下载页面下载并安装 PuTTY。如果您安装的是旧版本的 PuTTY,建议您下载最新版本。确保安装整个套件。

  • 获得实例的 ID

    您可以通过使用 Amazon EC2 控制台(位于 Instance ID (实例 ID) 列中)获得您的实例的 ID。如果您愿意,您可以使用 describe-instances (AWS CLI) 或 ec2-describe-instances (Amazon EC2 CLI) 命令。

  • 获得实例的公有 DNS 名称

    您可以使用 Amazon EC2 控制台获取实例的公有 DNS(勾选 Public DNS (公有 DNS) 列;如果此列处于隐藏状态,请单击 Show/Hide (显示/隐藏) 图标并选择 Public DNS (公有 DNS))。如果您愿意,您可以使用 describe-instances(AWS CLI) 或 ec2-describe-instances (Amazon EC2 CLI) 命令。

  • 查找私有密钥

    您需要使用您在启动实例时指定的密钥对的 .pem 文件的完全限定路径。

  • 允许从您的 IP 地址到您的实例的入站 SSH 流量

    确保与您的实例关联的安全组允许来自您的 IP 地址的传入 SSH 流量。有关更多信息,请参阅授权网络访问您的实例

    Important

    默认情况下,您的默认安全组不允许传入 SSH 流量。

使用 PuTTYgen 转换您的私有密钥

PuTTY 本身不支持 Amazon EC2 生成的私有密钥格式 (.pem)。PuTTY 有一个名为 PuTTYgen 的工具,可将密钥转换成所需的 PuTTY 格式 (.ppk)。您必须将私有密钥转换为此格式 (.ppk),然后才能尝试使用 PuTTY 连接到您的实例。

转换您的私有密钥

  1. 启动 PuTTYgen(例如,在“Start”菜单中,依次单击“All Programs > PuTTY > PuTTYgen ”)。

  2. 在 Type of key to generate (要生成的密钥类型) 下,选择 SSH-2 RSA。

  3. 单击“Load”。在默认情况下,PuTTYgen 仅显示扩展名为 .ppk 的文件。要找到您的 .pem 文件,请选择显示所有类型的文件的选项。

  4. 为启动实例时指定的密钥对选择 .pem 文件,然后单击 Open。单击 OK (确定) 关闭确认对话框。

  5. 单击 Save private key (保存私有密钥),以 PuTTY 可用的格式保存密钥。PuTTYgen 显示一条关于在没有口令的情况下保存密钥的警告。单击 Yes (是)。

    Note

    私有密钥的口令是一层额外保护,因此,即使您的私有密钥被泄露,在没有口令的情况下,该密钥仍不可用。使用口令的缺点是让自动化变得更难,因为登录到实例或复制文件到实例需要进行人为干预。

  6. 为该密钥指定与密钥对相同的名称(如,my-key-pair)。PuTTY 自动添加 .ppk 文件扩展名。

您的私有密钥格式现在是正确的 PuTTY 使用格式了。您现在可以使用 PuTTY 的 SSH 客户端连接到实例。

启动 PuTTY 会话

通过以下过程使用 PuTTY 连接到您的 Linux 实例。您将需要已为私钥创建的 .ppk 文件。如果您在尝试连接到您的实例时收到错误消息,请参阅排查实例的连接问题

启动 PuTTY 会话

  1. (可选)您可以在本地系统(而不是实例)上使用以下命令之一验证实例上的 RSA 密钥指纹。如果您从第三方的公用 AMI 启动了实例,则可能需要这样做。找到 SSH HOST KEY FINGERPRINTS 部分,记下 RSA 指纹(例如 1f:51:ae:28:bf:89:e9:d8:1f:25:5d:37:2d:7d:b8:ca:9f:f5:f1:6f)并将它与实例的指纹进行比较。

    Note

    SSH HOST KEY FINGERPRINTS 部分仅在实例首次启动之后可用。

  2. 启动 PuTTY(在“Start”菜单中,单击“All Programs > PuTTY > PuTTY”)。

  3. 在“Category (类别)”窗格中,选择 Session (会话) 并填写以下字段:

    1. 在 Host Name (主机名) 框中,输入 user_name@public_dns_name。确保为您的 AMI 指定相应的用户名。例如:

      • 对于 Amazon Linux AMI,用户名称是 ec2-user

      • 对于 RHEL5 AMI,用户名称为 root 或 ec2-user

      • 对于 Ubuntu AMI,用户名称是 ubuntu

      • 对于 Fedora AMI,用户名称为 fedora 或 ec2-user

      • 对于 SUSE Linux,用户名称是 root 或 ec2-user

      • 另外,如果 ec2-user 和 root 无法使用,请与 AMI 供应商核实。

    2. 在 Connection type (连接类型) 下,选择 SSH。

    3. 确保 Port (端口) 为 22。

  4. 在 Category (类别) 窗格中,展开 Connection (连接),再展开 SSH,然后选择 Auth (身份验证)。完成以下操作:

    1. 单击 Browse (浏览)。

    2. 选择您为密钥对生成的 .ppk 文件,然后单击 Open (打开)。

    3. (可选)如果打算稍后重新启动此会话,则可以保存此会话信息以便日后使用。在 Category (类别) 树中选择Session (会话),为 Saved Sessions (已存会话) 中的会话输入一个名称,然后单击 Save (保存)。

    4. 单击 Open (打开) 开始 PuTTY 会话。

  5. 如果这是您第一次连接到此实例,PuTTY 会显示安全警告对话框,询问您是否信任您要连接到的主机。

  6. (可选)验证安全警报中的指纹是否与在步骤 1 中获取的指纹匹配。如果这些指纹不匹配,则表示有人可能在试图实施“中间人”攻击。如果匹配,请继续到下一步。

  7. 单击 Yes (是)。此时会打开一个窗口并且您连接到了您的实例。

    Note

    如果您在将私有密钥转换成 PuTTY 格式时指定了口令,当您登录到实例时,您必须提供该口令。

如果您在尝试连接到您的实例时收到错误消息,请参阅排查实例的连接问题

使用 PuTTY 安全复制客户端将文件传输到您的 Linux 实例

PuTTY 安全复制客户端 (PSCP) 是一个命令行工具,您可以用它在 Windows 计算机与 Linux 实例之间传输文件。如果您更喜欢图形用户界面(GUI),您可以使用一种叫作“WinSCP”的开源 GUI 工具。有关更多信息,请参阅 使用 WinSCP 将文件传输到您的 Linux 实例

要使用 PSCP,您将需要在使用 PuTTYgen 转换您的私有密钥中生成的私有密钥。您还需要 Linux 实例的公有 DNS 地址。

以下示例将文件 Sample_file.txt 从 Windows 计算机传输到 Linux 实例中的 /usr/local 目录:

C:\> pscp -i C:\Keys\my-key-pair.ppk C:\Sample_file.txt user_name@public_dns:/usr/local/Sample_file.txt

使用 WinSCP 将文件传输到您的 Linux 实例

WinSCP 是适用于 Windows 的基于 GUI 的文件管理器,您可以通过它来使用 SFTP、SCP、FTP 和 FTPS 协议将文件上传并传输到远程计算机。通过 WinSCP,您可以将 Windows 计算机中的文件拖放到 Linux 实例或同步这两个系统之间的所有目录结构。

要使用 WinSCP,您将需要在 使用 PuTTYgen 转换您的私有密钥 中生成的私有密钥。您还需要 Linux 实例的公有 DNS 地址。

  1. 从 http://winscp.net/eng/download.php 上下载并安装 WinSCP。对于大多数用户而言,采用默认安装选项就可以了。

  2. 启动 WinSCP。

  3. 在 WinSCP login (WinSCP 登录) 屏幕中,对于 Host name (主机名),请输入实例的公有 DNS 地址。

  4. 对于 User name (用户名),请输入默认的 AMI 用户名。对于 Amazon Linux AMI,用户名是 ec2-user。对于 Red Hat AMI,用户名是 root,而对于 Ubuntu AMI,用户名则是 ubuntu

  5. 为您的实例指定私有密钥。对于 Private key (私有密钥),请输入私有密钥的路径或单击“…”按钮以浏览文件。有关更新的 WinSCP 版本,您需要单击 Advanced (高级) 打开高级网站设置,然后在 SSH 下单击 Authentication (身份验证) 以查找 Private key file (私有密钥文件) 设置。

    Note

    WinSCP 需要 PuTTY 私有密钥文件 (.ppk)。您可以使用 PuTTYgen 将 .pem 安全密钥文件转换成 .ppk 格式。有关更多信息,请参阅 使用 PuTTYgen 转换您的私有密钥

  6. (可选)在左侧面板中,单击 Remote directory (目录),然后,对于 Directories (远程目录),输入要将文件添加到其中的目录路径。有关更新版本的 WinSCP,您需要单击 Advanced (高级) 打开高级网站设置,然后在 Environment (环境) 下单击 Directories (目录) 查找 Remote directory (远程目录) 设置。

  7. 单击 Login (登录) 进行连接,然后单击 Yes (是) 将主机指纹添加到主机缓存。

  8. 建立连接后,在连接窗口中,您的 Linux 实例显示在右侧,本地计算机显示在左侧。您可以直接将文件从本地计算机拖放到远程文件系统。有关 WinSCP 的更多信息,请参阅 http://winscp.net/eng/docs/start 中的项目文档。

    Note

    如果您收到一条“Cannot execute SCP to start transfer”错误,则必须先在您的 Linux 实例上安装 scp。对于某些操作系统,此命令会位于 openssh-clients 程序包中。对于 Amazon Linux 变体(如经 Amazon ECS 优化的 AMI),使用以下命令安装 scp.

    [ec2-user ~]$ sudo yum install -y openssh-clients

文章来源:
https://docs.aws.amazon.com/zh_cn/AWSEC2/latest/UserGuide/putty.html

PUTY下载
http://www.chiark.greenend.org.uk/~sgtatham/putty/

Amazon EC2 Linux 实例入门
https://docs.aws.amazon.com/zh_cn/AWSEC2/latest/UserGuide/EC2_GetStarted.html

putty 链接亚马逊服务器的更多相关文章

  1. 使用Putty登录亚马逊云主机

    亚马逊云主机配置之后会提示 提供一个 pem证书, 打开 SSH 客户端.(了解操作方法 使用 PuTTY 连接) 找到您的私有密钥文件(test001.pem).向导会自动检测您用于启动实例的密钥. ...

  2. 使用亚马逊服务器报错:Signature not yet current: 20190726T070253Z is still later than 20190726T070246Z (20190726T065746Z + 15 min.)时间不同步的解决办法

    1.首先获取亚马逊的时间: $ curl http://s3.amazonaws.com -v 2.更改当前服务器时间,使之与亚马逊时间同步 $ date -s 'xxxx-xx-xx xx:xx:x ...

  3. 亚马逊免费服务器搭建Discuz!论坛过程(一)

    1:申请 目前亚马逊服务器免费12个月,需要一张信用卡即可免费注册领取. 地址:https://aws.amazon.com/cn/free/ 2: 创建实例 2.1进入控制台:https://ap- ...

  4. 最新亚马逊 Coupons 功能设置教程完整攻略!

    最新亚马逊 Coupons 功能设置教程完整攻略! http://m.cifnews.com/app/postsinfo/18479 亚马逊总是有新的创意,新的功能.最近讨论很火的,就是这个 Coup ...

  5. 亚马逊如何使用二次验证码/虚拟MFA/两步验证/谷歌验证器?

    一般点账户名——设置——安全设置中开通虚拟MFA两步验证 具体步骤见链接  亚马逊如何使用二次验证码/虚拟MFA/两步验证/谷歌验证器? 二次验证码小程序于谷歌身份验证器APP的优势 1.无需下载ap ...

  6. oracle impdp 数据迁移 至RDS 亚马逊云

    背景: 公司年底打算将aws rds11.2.0.4 oracle 数据库升级到19c,所以需要进行升级测试,所以需要我把线上的库数据迁移到一台测试的rds oracle 亚马逊云的数据库中,然后升级 ...

  7. windows系统上利用putty通过SSH连接亚马逊AWS服务器

    1. 找到在购买亚马逊的AWS服务器时保存的密钥文件(假设为abc.pem). 2.打开PuTTYgen,如下图,点击图中1处的“load”,找到abc.pem文件所在的位置,并选择abc.pem,确 ...

  8. 在亚马逊amazon的AWS上安装Node和MongoDB服务器

    在亚马逊amazon的AWS上安装Node和MongoDB服务器 在建立AWS上账号.创建EC2 ,用putty链接上之后,就可以用下面的方法开始安装. !!! 如果不是是自己建立的EC2, 而是由B ...

  9. 亚马逊EC2服务器申请+NODE服务器部署+阿里云域名申请+SSL证书使用

    最近,由于项目需要,自己申请了一台亚马逊用于部署网站测试,在使用期间,发现网上没有一篇非常完整的文章讲解从服务器申请到域名解析,SSL证书申请的整个流程.所以自己总结一下,以供大家学习! 一.亚马逊E ...

随机推荐

  1. centos7安装mysql 8

    1.查看已有mysql(包括mariadb) rpm -pa | grep mariadb yum list installed | grep mariadb rpm -pa | grep mysql ...

  2. @Autowired与@Resource 详细诠释和区别(附带例子)

    @Autowired 与@Resource:1.@Autowired与@Resource都可以用来装配bean. 都可以写在字段上,或写在setter方法上. 2.@Autowired默认按类型装配( ...

  3. day4作业(基本运算流程if for)

    #coding:utf-8'''默写: 循环嵌套 必做: 1. 求1-100的所有数的和 2. 输出 1-100 内的所有奇数 3. 输出 1-100 内的所有偶数 5. 求1-2+3-4+5 ... ...

  4. 阿里云 putty链接服务器出现 server refused our key

    阿里云 putty链接服务器出现 server refused our key 创建了密钥对绑定实例,puttygen生成ppk,putty配置参数,连接,一步一步来的,结果出现 server ref ...

  5. 6.简单提取小红书app数据保存txt-2

    对页面信息进行简单抓取: 需要注意的问题 : auth-sign 和 auth 都是有一定的时效性,还有url原url是https这里要改为http请求. 这参数的问题需要通过mitmdump去获取请 ...

  6. apt-get 使用指南

    # apt-get update——在修改/etc/apt/sources.list或者/etc/apt/preferences之後运行该命令.此外您需要定期运行这一命令以确保您的软件包列表是最新的. ...

  7. while循环、break、continue

    我们通过while循环让python循环进行操作 break 跳出整个循环 continue 终止当前循环并不再继续往下执行,回到开头开始继续循环 下面会详细解释一下,例如: 1 a = 1 2 wh ...

  8. MySQL PID错误,Mysql server PID file could not be found!

    https://blog.csdn.net/u010098331/article/details/50752667/

  9. 用大白话谈谈XSS与CSRF

    这两个关键词也是老生常谈了,但是还总是容易让人忘记与搞混~.XSS与CSRF这两个关键词时常被拉出来一起比较(尤其是面试),我在这里也在写一篇扫盲文,也帮自己整理一下知识脉络. 这篇文章会用尽量“人话 ...

  10. 讲讲亿级PV的负载均衡架构

    引言 本来没想写这个题材的,为了某某童鞋能够更好的茁壮成长,临时写一篇负载均衡的.负载均衡,大家可能听过什么3层负载均衡.4层负载均衡.7层负载均衡什么的?那这是怎么分的呢,ok,是根据osi七层网络 ...