创建密钥对

登录控制台,填写名称,创建密钥对,浏览器会自动下载示例:test.pem 文件。
在这里插入图片描述

创建实例

  1. 填写名称,示例选择了AWS的Linux,AMI选择了免费套餐
    在这里插入图片描述

  2. 记住用户名,选择已配置示例test密钥对
    在这里插入图片描述

  3. 选择账号默认的VPC和安全组,记住安全组id
    在这里插入图片描述

安全组开放22端口

在安全组入站规则,新增一个TCP协议的22端口
在这里插入图片描述

SSH连接EC2

使用 SSH 客户端连接到 Linux 实例
/path/key-pair-name.pem:test.pem私有密钥(.pem 文件)的位置
instance-user-name用户名:ec2-user(本次AWS Linux示例)
公有 DNS 名称:选择创建实例,查看
注:
EC2 实例的默认用户名取决于操作系统:
Amazon Linux:ec2-user
Ubuntu:ubuntu
CentOS:centos
Debian:admin
如果你不确定用户名,可以在 AWS EC2 控制台中查看实例的操作系统类型。

ssh -i /path/key-pair-name.pem instance-user-name@instance-public-dns-name
# windows本次示例(我电脑已经装有ssh)
ssh -i C:\AWS\test.pem ec2-user@ec2-XXX.cn-northwest-1.compute.amazonaws.com.cn

在这里插入图片描述
响应示例(AWS官网)

The authenticity of host 'ec2-198-51-100-1.compute-1.amazonaws.com (198-51-100-1)' can't be established.
ECDSA key fingerprint is l4UB/neBad9tvkgJf1QZWxheQmR59WgrgzEimCG6kZY.
Are you sure you want to continue connecting (yes/no)?

输入 yes。
您会看到如下响应:

C:\AWS>ssh -i C:\AWS\test.pem ec2-user@ec2-XXX.cn-northwest-1.compute.amazonaws.com.cn
   ,     #_
   ~\_  ####_        Amazon Linux 2023
  ~~  \_#####\
  ~~     \###|
  ~~       \#/ ___   https://aws.amazon.com/linux/amazon-linux-2023
   ~~       V~' '->
    ~~~         /
      ~~._.   _/
         _/ _/
       _/m/'

密钥权限问题(windows)

连接遇到类似问题
因为私钥文件 C:/AWS/test.pem的权限设置过于开放,导致 SSH 客户端拒绝使用它。你需要确保 只有你的用户账户 可以访问这个文件,其他所有用户(包括 NT AUTHORITY\Authenticated Users)都应该被移除权限。

Bad permissions. Try removing permissions for user: NT AUTHORITY\Authenticated Users (S-1-5-11) on file C:/AWS/test.pem.
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@ WARNING: UNPROTECTED PRIVATE KEY FILE! @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
Permissions for 'C:/AWS/test.pem' are too open.
It is required that your private key files are NOT accessible by others.
This private key will be ignored.
Load key "C:/AWS/test.pem": bad permissions
ec2-user@ec2-XXX.cn-northwest-1.compute.amazonaws.com.cn: Permission denied (publickey,gssapi-keyex,gssapi-with-mic).

方法1:命令行操作

  1. 使用 icacls 命令修改权限
    移除所有非管理员权限:
icacls C:/AWS/test.pem /reset

这会重置文件权限,仅保留管理员权限。
2. 授予当前用户完全控制权限:

icacls C:/AWS/test.pem /grant:r "%USERNAME%":F

%USERNAME% 会自动替换为你的 Windows 用户名。
:F 表示 完全控制(Full Control)。
3. 移除 NT AUTHORITY\Authenticated Users 权限:

icacls C:/AWS/test.pem /remove "NT AUTHORITY\Authenticated Users"
  1. 验证权限:
icacls C:/AWS/test.pem

输出应该类似:

D:\AWS\dosz.pem YOUR_USERNAME:(F)

确保没有 NT AUTHORITY\Authenticated Users 或 BUILTIN\Users 等组。

方法2:手动修改文件权限(GUI)
右键点击 test.pem → 选择 “属性”。
切换到 “安全” 选项卡 → 点击 “高级”。
点击 “禁用继承” → 选择 “从此对象中删除所有继承的权限”。
点击 “添加” → 选择你的用户名 → 授予 “完全控制”。
移除 NT AUTHORITY\Authenticated Users 和 BUILTIN\Users(如果存在)。
点击 “确定” 保存更改。

更多推荐