AWS AWSCloudFormation low security documentation change
Summary
Restructured documentation into step-by-step guide, updated code examples to use Fn::Sub syntax, added note about requiring Amazon Linux 2023 AMI updates, and modernized LAMP stack installation instructions.
Security assessment
The change adds a specific warning about updating AMIs to AL2023 to ensure security compliance. Older AMIs may contain vulnerabilities, making this a security-related update. The documentation now explicitly guides users to use updated secure configurations.
Diff
diff --git a/AWSCloudFormation/latest/UserGuide/deploying.applications.md index 1914009b4..05c27120a 100644 --- a/AWSCloudFormation/latest/UserGuide/deploying.applications.md +++ b/AWSCloudFormation/latest/UserGuide/deploying.applications.md @@ -3 +3 @@ -Basic Amazon EC2 instanceLAMP installationLAMP configurationCreationPolicy attribute +Step 1: Create a base templateStep 2: Add helper script for the LAMP installationStep 3: Expand the scripts to configure Apache, MySQL, and PHPStep 4: Add the creation policy and signal configurationRelated resources @@ -13,3 +13 @@ The following walkthrough describes how to create a template that launches a LAM -###### Topics - - * Basic Amazon EC2 instance +The examples provided are based on an older version of Amazon Linux. You will be unable to boot instances launched from these templates until you update the AMIs to use your desired version of Amazon Linux and then update the helper scripts to support that version. For information about installing a LAMP stack on AL2023, see [Tutorial: Install a LAMP server on AL2023](https://docs.aws.amazon.com/linux/al2023/ug/ec2-lamp-amazon-linux-2023.html) in the _AL2023 User Guide_. @@ -17 +15 @@ The following walkthrough describes how to create a template that launches a LAM - * LAMP installation +###### Topics @@ -19 +17 @@ The following walkthrough describes how to create a template that launches a LAM - * LAMP configuration + * Step 1: Create a base template @@ -21 +19 @@ The following walkthrough describes how to create a template that launches a LAM - * CreationPolicy attribute + * Step 2: Add helper script for the LAMP installation @@ -22,0 +21 @@ The following walkthrough describes how to create a template that launches a LAM + * Step 3: Expand the scripts to configure Apache, MySQL, and PHP @@ -23,0 +23 @@ The following walkthrough describes how to create a template that launches a LAM + * Step 4: Add the creation policy and signal configuration @@ -24,0 +25 @@ The following walkthrough describes how to create a template that launches a LAM + * Related resources @@ -26 +26,0 @@ The following walkthrough describes how to create a template that launches a LAM -## Basic Amazon EC2 instance @@ -28 +27,0 @@ The following walkthrough describes how to create a template that launches a LAM -You start with a basic template that defines a single Amazon EC2 instance with a security group that allows SSH traffic on port 22 and HTTP traffic on port 80, as shown in the following example. @@ -30 +28,0 @@ You start with a basic template that defines a single Amazon EC2 instance with a -In addition to the Amazon EC2 instance and security group, we create three input parameters that specify the instance type, an Amazon EC2 key pair to use for SSH access, and an IP address range that can be used to SSH to the instance. The mapping section ensures that CloudFormation uses the correct AMI ID for the stack's region and the Amazon EC2 instance type. Finally, the output section outputs the public URL of the web server. @@ -36,190 +34 @@ Consider AWS Systems Manager parameters as an alternative to the `Mappings` sect -### JSON - - - { - "AWSTemplateFormatVersion" : "2010-09-09", - - "Description" : "AWS CloudFormation sample template LAMP_Single_Instance: Create a LAMP stack using a single EC2 instance and a local MySQL database for storage. This template demonstrates using the AWS CloudFormation bootstrap scripts to install the packages and files necessary to deploy the Apache web server, PHP, and MySQL at instance launch time. **WARNING** This template creates an Amazon EC2 instance. You will be billed for the AWS resources used if you create a stack from this template.", - - "Parameters" : { - "KeyName": { - "Description" : "Name of an existing EC2 KeyPair to enable SSH access to the instance", - "Type": "AWS::EC2::KeyPair::KeyName", - "ConstraintDescription" : "Can contain only ASCII characters." - }, - "InstanceType" : { - "Description" : "WebServer EC2 instance type", - "Type" : "String", - "Default" : "t2.small", - "AllowedValues" : [ - "t1.micro", - "t2.nano", - "t2.micro", - "t2.small", - "t2.medium", - "t2.large", - "m1.small", - "m1.medium", - "m1.large", - "m1.xlarge", - "m2.xlarge", - "m2.2xlarge", - "m2.4xlarge", - "m3.medium", - "m3.large", - "m3.xlarge", - "m3.2xlarge", - "m4.large", - "m4.xlarge", - "m4.2xlarge", - "m4.4xlarge", - "m4.10xlarge", - "c1.medium", - "c1.xlarge", - "c3.large", - "c3.xlarge", - "c3.2xlarge", - "c3.4xlarge", - "c3.8xlarge", - "c4.large", - "c4.xlarge", - "c4.2xlarge", - "c4.4xlarge", - "c4.8xlarge", - "g2.2xlarge", - "g2.8xlarge", - "r3.large", - "r3.xlarge", - "r3.2xlarge", - "r3.4xlarge", - "r3.8xlarge", - "i2.xlarge", - "i2.2xlarge", - "i2.4xlarge", - "i2.8xlarge", - "d2.xlarge", - "d2.2xlarge", - "d2.4xlarge", - "d2.8xlarge", - "hi1.4xlarge", - "hs1.8xlarge", - "cr1.8xlarge", - "cc2.8xlarge", - "cg1.4xlarge" - ], - "ConstraintDescription" : "must be a valid EC2 instance type." - }, - "SSHLocation" : { - "Description" : "The IP address range that can be used to SSH to the EC2 instances", - "Type": "String", - "MinLength": "9", - "MaxLength": "18", - "Default": "0.0.0.0/0", - "AllowedPattern": "(\\d{1,3})\\.(\\d{1,3})\\.(\\d{1,3})\\.(\\d{1,3})/(\\d{1,2})", - "ConstraintDescription": "Must be a valid IP CIDR range of the form x.x.x.x/x" - } - }, - - - "Mappings" : { - "AWSInstanceType2Arch" : { - "t1.micro" : { "Arch" : "HVM64" }, - "t2.nano" : { "Arch" : "HVM64" }, - "t2.micro" : { "Arch" : "HVM64" }, - "t2.small" : { "Arch" : "HVM64" }, - "t2.medium" : { "Arch" : "HVM64" }, - "t2.large" : { "Arch" : "HVM64" }, - "m1.small" : { "Arch" : "HVM64" }, - "m1.medium" : { "Arch" : "HVM64" }, - "m1.large" : { "Arch" : "HVM64" }, - "m1.xlarge" : { "Arch" : "HVM64" }, - "m2.xlarge" : { "Arch" : "HVM64" }, - "m2.2xlarge" : { "Arch" : "HVM64" }, - "m2.4xlarge" : { "Arch" : "HVM64" }, - "m3.medium" : { "Arch" : "HVM64" }, - "m3.large" : { "Arch" : "HVM64" }, - "m3.xlarge" : { "Arch" : "HVM64" }, - "m3.2xlarge" : { "Arch" : "HVM64" }, - "m4.large" : { "Arch" : "HVM64" }, - "m4.xlarge" : { "Arch" : "HVM64" }, - "m4.2xlarge" : { "Arch" : "HVM64" }, - "m4.4xlarge" : { "Arch" : "HVM64" }, - "m4.10xlarge" : { "Arch" : "HVM64" }, - "c1.medium" : { "Arch" : "HVM64" }, - "c1.xlarge" : { "Arch" : "HVM64" }, - "c3.large" : { "Arch" : "HVM64" }, - "c3.xlarge" : { "Arch" : "HVM64" }, - "c3.2xlarge" : { "Arch" : "HVM64" }, - "c3.4xlarge" : { "Arch" : "HVM64" }, - "c3.8xlarge" : { "Arch" : "HVM64" }, - "c4.large" : { "Arch" : "HVM64" }, - "c4.xlarge" : { "Arch" : "HVM64" }, - "c4.2xlarge" : { "Arch" : "HVM64" }, - "c4.4xlarge" : { "Arch" : "HVM64" }, - "c4.8xlarge" : { "Arch" : "HVM64" }, - "g2.2xlarge" : { "Arch" : "HVMG2" }, - "g2.8xlarge" : { "Arch" : "HVMG2" }, - "r3.large" : { "Arch" : "HVM64" }, - "r3.xlarge" : { "Arch" : "HVM64" }, - "r3.2xlarge" : { "Arch" : "HVM64" }, - "r3.4xlarge" : { "Arch" : "HVM64" }, - "r3.8xlarge" : { "Arch" : "HVM64" }, - "i2.xlarge" : { "Arch" : "HVM64" }, - "i2.2xlarge" : { "Arch" : "HVM64" }, - "i2.4xlarge" : { "Arch" : "HVM64" }, - "i2.8xlarge" : { "Arch" : "HVM64" }, - "d2.xlarge" : { "Arch" : "HVM64" }, - "d2.2xlarge" : { "Arch" : "HVM64" }, - "d2.4xlarge" : { "Arch" : "HVM64" }, - "d2.8xlarge" : { "Arch" : "HVM64" }, - "hi1.4xlarge" : { "Arch" : "HVM64" }, - "hs1.8xlarge" : { "Arch" : "HVM64" }, - "cr1.8xlarge" : { "Arch" : "HVM64" }, - "cc2.8xlarge" : { "Arch" : "HVM64" } - }, - - "AWSRegionArch2AMI" : { - "us-east-1" : {"HVM64" : "ami-0ff8a91507f77f867", "HVMG2" : "ami-0a584ac55a7631c0c"}, - "us-west-2" : {"HVM64" : "ami-a0cfeed8", "HVMG2" : "ami-0e09505bc235aa82d"}, - "us-west-1" : {"HVM64" : "ami-0bdb828fd58c52235", "HVMG2" : "ami-066ee5fd4a9ef77f1"}, - "eu-west-1" : {"HVM64" : "ami-047bb4163c506cd98", "HVMG2" : "ami-0a7c483d527806435"}, - "eu-west-2" : {"HVM64" : "ami-f976839e", "HVMG2" : "NOT_SUPPORTED"}, - "eu-west-3" : {"HVM64" : "ami-0ebc281c20e89ba4b", "HVMG2" : "NOT_SUPPORTED"}, - "eu-central-1" : {"HVM64" : "ami-0233214e13e500f77", "HVMG2" : "ami-06223d46a6d0661c7"}, - "ap-northeast-1" : {"HVM64" : "ami-06cd52961ce9f0d85", "HVMG2" : "ami-053cdd503598e4a9d"}, - "ap-northeast-2" : {"HVM64" : "ami-0a10b2721688ce9d2", "HVMG2" : "NOT_SUPPORTED"}, - "ap-northeast-3" : {"HVM64" : "ami-0d98120a9fb693f07", "HVMG2" : "NOT_SUPPORTED"}, - "ap-southeast-1" : {"HVM64" : "ami-08569b978cc4dfa10", "HVMG2" : "ami-0be9df32ae9f92309"}, - "ap-southeast-2" : {"HVM64" : "ami-09b42976632b27e9b", "HVMG2" : "ami-0a9ce9fecc3d1daf8"}, - "ap-south-1" : {"HVM64" : "ami-0912f71e06545ad88", "HVMG2" : "ami-097b15e89dbdcfcf4"}, - "us-east-2" : {"HVM64" : "ami-0b59bfac6be064b78", "HVMG2" : "NOT_SUPPORTED"}, - "ca-central-1" : {"HVM64" : "ami-0b18956f", "HVMG2" : "NOT_SUPPORTED"}, - "sa-east-1" : {"HVM64" : "ami-07b14488da8ea02a0", "HVMG2" : "NOT_SUPPORTED"}, - "cn-north-1" : {"HVM64" : "ami-0a4eaf6c4454eda75", "HVMG2" : "NOT_SUPPORTED"}, - "cn-northwest-1" : {"HVM64" : "ami-6b6a7d09", "HVMG2" : "NOT_SUPPORTED"} - } - },