You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何通过CloudFormation创建无密钥、密码登录的EC2 Linux实例?

用CloudFormation实现无密钥、密码登录的EC2 Linux实例

核心是利用EC2的用户数据(UserData),在实例启动阶段自动完成sshd配置修改、密码设置和服务重启,无需手动操作。以下是完整的实现方案:

关键逻辑说明

  • 通过UserData执行shell命令,自动修改/etc/ssh/sshd_config开启密码认证
  • 为实例默认用户(如Amazon Linux 2的ec2-user)和root用户设置登录密码
  • 重启sshd服务让配置立即生效

CloudFormation模板示例

AWSTemplateFormatVersion: '2010-09-09'
Parameters:
  InstanceType:
    Type: String
    Default: t2.micro
  AMIID:
    Type: String
    # 替换为你所在区域的Amazon Linux 2 AMI ID,比如us-east-1区域可填ami-0c55b159cbfafe1f0
    Default: ami-0c55b159cbfafe1f0
  LoginPassword:
    Type: String
    NoEcho: true
    Description: "EC2实例的登录密码(建议包含大小写、数字和特殊字符)"

Resources:
  EC2Instance:
    Type: AWS::EC2::Instance
    Properties:
      InstanceType: !Ref InstanceType
      ImageId: !Ref AMIID
      SecurityGroups: [!Ref InstanceSecurityGroup]
      UserData:
        Fn::Base64: !Sub |
          #!/bin/bash
          # 设置root用户密码
          echo root:${LoginPassword} | chpasswd
          # 设置ec2-user用户密码(适配Amazon Linux 2默认用户)
          echo ec2-user:${LoginPassword} | chpasswd
          # 修改sshd_config,开启密码认证
          sed -i 's/^PasswordAuthentication no/PasswordAuthentication yes/' /etc/ssh/sshd_config
          sed -i 's/^#PasswordAuthentication yes/PasswordAuthentication yes/' /etc/ssh/sshd_config
          # 重启sshd服务使配置生效
          systemctl restart sshd

  InstanceSecurityGroup:
    Type: AWS::EC2::SecurityGroup
    Properties:
      GroupDescription: 允许SSH访问
      SecurityGroupIngress:
        - IpProtocol: tcp
          FromPort: 22
          ToPort: 22
          CidrIp: 0.0.0.0/0 # 生产环境建议限制为你的可信IP,比如192.168.1.1/32

重要注意事项

  1. 密码安全:模板中用NoEcho: true隐藏参数输入,但生产环境避免直接传明文密码,建议用AWS Secrets Manager存储密码,通过UserData调用aws secretsmanager get-secret-value动态获取。
  2. 发行版适配:不同Linux发行版的sshd配置路径、服务命令有差异,比如Ubuntu需用service ssh restart重启服务,需根据实际AMI调整命令。
  3. 安全组限制:示例中允许所有IP访问SSH,实际要缩小范围到可信IP段,降低被暴力破解的风险。
  4. 用户权限:ec2-user默认拥有sudo权限,root用户登录后可直接管理实例。

内容的提问来源于stack exchange,提问作者AndriiPopa

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.27 03:19:55