亚马逊云科技EC2如何安装EC2 Instance Connect?

很多朋友想要在亚马逊云科技EC2控制台中使用EC2 Instance Connect连接到实例,首先就要在亚马逊云科技EC2上安装EC2 Instance Connect。那么,要怎么操作呢?本文,小编就带大家一起来看一下!

点击进入:www.amazonaws.cn

  安装EC2 Instance Connect的先决条件

1、使用以下支持的AMI之一启动实例:

  • 版本2.0.20190618之前的Amazon Linux 2
  • CentOS Stream 8和9
  • Red Hat Enterprise Linux(RHEL)8和9
  • Ubuntu 16.04和18.04

2、获取实例ID

您可以使用Amazon EC2控制台获取实例ID(从Instance ID(实例ID)列)。如果您愿意,可以使用describe-instances(Amazon CLI)或Get-EC2Instance(Amazon Tools for Windows PowerShell)命令。

3、在您的本地计算机上安装SSH客户端

您的本地计算机很可能已默认安装SSH客户端。您可以通过在命令行键入ssh来检查SSH客户端。如果您的本地计算机无法识别该命令,您可安装SSH客户端。

4、[Ubuntu]在实例上安装Amazon CLI

要在Ubuntu实例上安装EC2 Instance Connect,您必须在实例上使用Amazon CLI。

  安装EC2 Instance Connect

安装EC2 Instance Connect将在实例上配置SSH进程守护程序。

根据实例的操作系统,使用以下过程之一安装EC2 Instance Connect。

一、在使用Amazon Linux 2启动的实例上安装EC2 Instance Connect

1、使用SSH连接到您的实例。

在以下命令中,将示例值替换为自己的值。可以使用在启动实例时为其分配的SSH密钥对以及用于启动实例的AMI的默认用户名。对于Amazon Linux 2,默认用户名为ec2-user。

ssh -i my_ec2_private_key.pem ec2-user@ec2-a-b-c-d.us-west-2.compute.amazonaws.com

2、在实例上安装EC2 Instance Connect程序包。

sudo yum install ec2-instance-connect

您将会在/opt/aws/bin/文件夹中看到三个新脚本:

eic_curl_authorized_keys
eic_parse_authorized_keys
eic_run_authorized_keys

3、(可选)验证是否在实例上成功安装了EC2 Instance Connect。

sudo less /etc/ssh/sshd_config

如果AuthorizedKeysCommand和AuthorizedKeysCommandUser行包含以下值,则成功安装EC2 Instance Connect:

AuthorizedKeysCommand /opt/aws/bin/eic_run_authorized_keys %u %f
AuthorizedKeysCommandUser ec2-instance-connect
  • AuthorizedKeysCommand设置eic_run_authorized_keys文件以从实例元数据中查找密钥
  • AuthorizedKeysCommandUser将系统用户设置为ec2-instance-connect

二、在通过CentOS启动的实例上安装EC2 Instance Connect

1、使用SSH连接到实例。

在以下命令中,将示例值替换为自己的值。可以使用在启动实例时为其分配的SSH密钥对以及用于启动实例的AMI的默认用户名。对于CentOS,默认用户名为centos或ec2-user。

ssh -i my_ec2_private_key.pem centos@ec2-a-b-c-d.us-west-2.compute.amazonaws.com

2、如果使用HTTP或HTTPS代理,则必须在当前Shell会话中设置http_proxy或https_proxy环境变量。

如果不使用代理,则可跳过此步骤。

  • 对于HTTP代理服务器,请运行以下命令:
export http_proxy=http://hostname:port
export https_proxy=http://hostname:port
  • 对于HTTPS代理服务器,请运行以下命令:
export http_proxy=https://hostname:port
export https_proxy=https://hostname:port

3、运行以下命令,在实例上安装EC2 Instance Connect软件包。

适用于CentOS的EC2 Instance Connect配置文件在Red Hat Package Manager(RPM)包中提供,适用于CentOS 8和CentOS 9,以及在Intel/AMD(x86_64)或ARM(AArch64)上运行的实例类型有不同的RPM包。

使用适用于操作系统和CPU架构的命令块。

CentOS 8

Intel/AMD(x86_64)

mkdir /tmp/ec2-instance-connect
curl https://amazon-ec2-instance-connect-us-west-2.s3.us-west-2.amazonaws.com/latest/linux_amd64/ec2-instance-connect.rhel8.rpm -o /tmp/ec2-instance-connect/ec2-instance-connect.rpm
curl https://amazon-ec2-instance-connect-us-west-2.s3.us-west-2.amazonaws.com/latest/linux_amd64/ec2-instance-connect-selinux.noarch.rpm -o /tmp/ec2-instance-connect/ec2-instance-connect-selinux.rpm
sudo yum install -y /tmp/ec2-instance-connect/ec2-instance-connect.rpm /tmp/ec2-instance-connect/ec2-instance-connect-selinux.rpm

ARM(AArch64)

mkdir /tmp/ec2-instance-connect
curl https://amazon-ec2-instance-connect-us-west-2.s3.us-west-2.amazonaws.com/latest/linux_arm64/ec2-instance-connect.rhel8.rpm -o /tmp/ec2-instance-connect/ec2-instance-connect.rpm
curl https://amazon-ec2-instance-connect-us-west-2.s3.us-west-2.amazonaws.com/latest/linux_amd64/ec2-instance-connect-selinux.noarch.rpm -o /tmp/ec2-instance-connect/ec2-instance-connect-selinux.rpm
sudo yum install -y /tmp/ec2-instance-connect/ec2-instance-connect.rpm /tmp/ec2-instance-connect/ec2-instance-connect-selinux.rpm

CentOS 9

Intel/AMD(x86_64)

mkdir /tmp/ec2-instance-connect
curl https://amazon-ec2-instance-connect-us-west-2.s3.us-west-2.amazonaws.com/latest/linux_amd64/ec2-instance-connect.rpm -o /tmp/ec2-instance-connect/ec2-instance-connect.rpm
curl https://amazon-ec2-instance-connect-us-west-2.s3.us-west-2.amazonaws.com/latest/linux_amd64/ec2-instance-connect-selinux.noarch.rpm -o /tmp/ec2-instance-connect/ec2-instance-connect-selinux.rpm
sudo yum install -y /tmp/ec2-instance-connect/ec2-instance-connect.rpm /tmp/ec2-instance-connect/ec2-instance-connect-selinux.rpm

ARM(AArch64)

mkdir /tmp/ec2-instance-connect
curl https://amazon-ec2-instance-connect-us-west-2.s3.us-west-2.amazonaws.com/latest/linux_arm64/ec2-instance-connect.rpm -o /tmp/ec2-instance-connect/ec2-instance-connect.rpm
curl https://amazon-ec2-instance-connect-us-west-2.s3.us-west-2.amazonaws.com/latest/linux_amd64/ec2-instance-connect-selinux.noarch.rpm -o /tmp/ec2-instance-connect/ec2-instance-connect-selinux.rpm
sudo yum install -y /tmp/ec2-instance-connect/ec2-instance-connect.rpm /tmp/ec2-instance-connect/ec2-instance-connect-selinux.rpm

在/opt/aws/bin/文件夹中会看到以下新脚本:

eic_run_authorized_keys

4、(可选)验证是否在实例上成功安装了EC2 Instance Connect。

  • 对于CentOS 8:
sudo less /lib/systemd/system/ssh.service.d/ec2-instance-connect.conf
  • 对于CentOS 9:
sudo less /etc/ssh/sshd_config.d/60-ec2-instance-connect.conf

如果AuthorizedKeysCommand和AuthorizedKeysCommandUser行包含以下值,则成功安装EC2 Instance Connect:

AuthorizedKeysCommand /opt/aws/bin/eic_run_authorized_keys %u %f
AuthorizedKeysCommandUser ec2-instance-connect
  • AuthorizedKeysCommand设置eic_run_authorized_keys文件以从实例元数据中查找密钥
  • AuthorizedKeysCommandUser将系统用户设置为ec2-instance-connect

三、在使用Red Hat Enterprise Linux(RHEL)启动的实例上安装EC2 Instance Connect

1、使用SSH连接到实例。

在以下命令中,将示例值替换为自己的值。可以使用在启动实例时为其分配的SSH密钥对以及用于启动实例的AMI的默认用户名。对于RHEL,默认用户名为ec2-user或root。

ssh -i my_ec2_private_key.pem ec2-user@ec2-a-b-c-d.us-west-2.compute.amazonaws.com

2、如果使用HTTP或HTTPS代理,则必须在当前Shell会话中设置http_proxy或https_proxy环境变量。

如果不使用代理,则可跳过此步骤。

  • 对于HTTP代理服务器,请运行以下命令:
export http_proxy=http://hostname:port
export https_proxy=http://hostname:port
  • 对于HTTPS代理服务器,请运行以下命令:
export http_proxy=https://hostname:port
export https_proxy=https://hostname:port

3、运行以下命令,在实例上安装EC2 Instance Connect软件包。

在Red Hat Package Manager(RPM)包中提供适用于RHEL的EC2 Instance Connect配置文件,适用于RHEL 8和RHEL 9,以及在Intel/AMD(x86_64)或ARM(AArch64)上运行的实例类型有不同的RPM包。

使用适用于操作系统和CPU架构的命令块。

RHEL 8

Intel/AMD(x86_64)

mkdir /tmp/ec2-instance-connect
curl https://amazon-ec2-instance-connect-us-west-2.s3.us-west-2.amazonaws.com/latest/linux_amd64/ec2-instance-connect.rhel8.rpm -o /tmp/ec2-instance-connect/ec2-instance-connect.rpm
curl https://amazon-ec2-instance-connect-us-west-2.s3.us-west-2.amazonaws.com/latest/linux_amd64/ec2-instance-connect-selinux.noarch.rpm -o /tmp/ec2-instance-connect/ec2-instance-connect-selinux.rpm
sudo yum install -y /tmp/ec2-instance-connect/ec2-instance-connect.rpm /tmp/ec2-instance-connect/ec2-instance-connect-selinux.rpm

ARM(AArch64)

mkdir /tmp/ec2-instance-connect
curl https://amazon-ec2-instance-connect-us-west-2.s3.us-west-2.amazonaws.com/latest/linux_arm64/ec2-instance-connect.rhel8.rpm -o /tmp/ec2-instance-connect/ec2-instance-connect.rpm
curl https://amazon-ec2-instance-connect-us-west-2.s3.us-west-2.amazonaws.com/latest/linux_amd64/ec2-instance-connect-selinux.noarch.rpm -o /tmp/ec2-instance-connect/ec2-instance-connect-selinux.rpm
sudo yum install -y /tmp/ec2-instance-connect/ec2-instance-connect.rpm /tmp/ec2-instance-connect/ec2-instance-connect-selinux.rpm

RHEL 9

Intel/AMD(x86_64)

mkdir /tmp/ec2-instance-connect
curl https://amazon-ec2-instance-connect-us-west-2.s3.us-west-2.amazonaws.com/latest/linux_amd64/ec2-instance-connect.rpm -o /tmp/ec2-instance-connect/ec2-instance-connect.rpm
curl https://amazon-ec2-instance-connect-us-west-2.s3.us-west-2.amazonaws.com/latest/linux_amd64/ec2-instance-connect-selinux.noarch.rpm -o /tmp/ec2-instance-connect/ec2-instance-connect-selinux.rpm
sudo yum install -y /tmp/ec2-instance-connect/ec2-instance-connect.rpm /tmp/ec2-instance-connect/ec2-instance-connect-selinux.rpm

ARM(AArch64)

mkdir /tmp/ec2-instance-connect
curl https://amazon-ec2-instance-connect-us-west-2.s3.us-west-2.amazonaws.com/latest/linux_arm64/ec2-instance-connect.rpm -o /tmp/ec2-instance-connect/ec2-instance-connect.rpm
curl https://amazon-ec2-instance-connect-us-west-2.s3.us-west-2.amazonaws.com/latest/linux_amd64/ec2-instance-connect-selinux.noarch.rpm -o /tmp/ec2-instance-connect/ec2-instance-connect-selinux.rpm
sudo yum install -y /tmp/ec2-instance-connect/ec2-instance-connect.rpm /tmp/ec2-instance-connect/ec2-instance-connect-selinux.rpm

在/opt/aws/bin/文件夹中会看到以下新脚本:

eic_run_authorized_keys

4、(可选)验证是否在实例上成功安装了EC2 Instance Connect。

  • 对于RHEL 8:
sudo less /lib/systemd/system/ssh.service.d/ec2-instance-connect.conf
  • 对于RHEL 9:
sudo less /etc/ssh/sshd_config.d/60-ec2-instance-connect.conf

如果AuthorizedKeysCommand和AuthorizedKeysCommandUser行包含以下值,则成功安装EC2 Instance Connect:

AuthorizedKeysCommand /opt/aws/bin/eic_run_authorized_keys %u %f
AuthorizedKeysCommandUser ec2-instance-connect
  • AuthorizedKeysCommand设置eic_run_authorized_keys文件以从实例元数据中查找密钥
  • AuthorizedKeysCommandUser将系统用户设置为ec2-instance-connect

四、在使用Ubuntu 16.04或更高版本启动的实例上安装EC2 Instance Connect

1、使用SSH连接到实例。

在以下命令中,将示例值替换为自己的值。可以使用在启动实例时为其分配的SSH密钥对以及用于启动实例的AMI的默认用户名。对于Ubuntu AMI,用户名为ubuntu。

ssh -i my_ec2_private_key.pem ubuntu@ec2-a-b-c-d.us-west-2.compute.amazonaws.com

(2、可选)确保您的实例具有最新Ubuntu AMI。

使用以下命令更新实例上的所有程序包。

sudo apt-get update
sudo apt-get upgrade

3、在实例上安装EC2 Instance Connect程序包。

sudo apt-get install ec2-instance-connect

您将会在/usr/share/ec2-instance-connect/文件夹中看到三个新脚本:

eic_curl_authorized_keys
eic_parse_authorized_keys
eic_run_authorized_keys

4、(可选)验证是否在实例上成功安装了Instance Connect。

sudo less /lib/systemd/system/ssh.service.d/ec2-instance-connect.conf

如果AuthorizedKeysCommand和AuthorizedKeysCommandUser行包含以下值,则成功安装EC2 Instance Connect:

AuthorizedKeysCommand /usr/share/ec2-instance-connect/eic_run_authorized_keys %%u %%f
AuthorizedKeysCommandUser ec2-instance-connect
  • AuthorizedKeysCommand设置eic_run_authorized_keys文件以从实例元数据中查找密钥
  • AuthorizedKeysCommandUser将系统用户设置为ec2-instance-connect
使用教程

阿里云如何查看云服务器实例IP地址?

2024-6-10 11:31:21

使用教程

硅云远程无法连接云服务器的解决办法汇总

2024-6-13 9:41:42

相关推荐