Description: Canaries aren't just hardware devices. You can run Canaries inside your EC2 Cloud infrastructure, using the same Console as the rest of your Canary fleet.
Note: Like other Cloud Canaries, a registered, but offline, Cloud Canary will still occupy a license. If you've terminated a bird on EC2, don't forget to decommission it on your Canary Console too. See guide here to decommission a Canary.
Running costs in AWS - click here
Follow the steps below to create your EC2 Cloud Canary:
Step 1:
Log in to your Console.
Step 2:
1- Click the + Add icon.
2- Click Add New Canary.
Step 3:
Click Add EC2 Canary.
Step 4:
Click Launch on the AWS region you want to deploy your Canary into.
Note: If the account/region is not available on your Console, please see our guide here.
Step 5:
You will be taken to your AWS account where you will need to Sign In.
Step 6:
Name your Canary.
Note: We've named our Canary OWA-SRV-03.
Step 7:
We will automatically configure the Application and OS image, Instance type and storage.
Note: We give you some additional details on the AMI we've shared with your AWS account/region.
Step 8:
The t3.micro instance size is automatically selected.
Note : The AWS Canary is super lightweight and the t3.micro instance size is all we need.
Step 9:
Select Proceed without a key pair from the drop down.
Note: We select to proceed without a key pair here as there is no way to log in and remotely manage this Canary from within AWS - All configuration is done from your Canary Console once the Canary is online.
Step 10:
1- Select the network you want to run your Canary on.
2 - Select the subnet you want to run your Canary on.
3 - Disable public IP - Exposing your instance to the public internet will produce a lot of noise.
4 - Set up the security accordingly - The security group you select should allow traffic for the specific services you intend to run on your Canary.
Note:
- The security group you select should allow traffic between the bird and the networks you want to monitor.
- Exposing your instance to the public internet will produce lots of noise. We recommend not opening up ports to 0.0.0.0/0.
Step 11:
Click on Launch instance.
Step 12:
Your instance has been launched.
Note: If the launch process returns an error regarding accepting terms, this page describes the steps you need to take.
Step 13:
Your instance is busy Initializing.
Note : The initialization process of the VM will normally take around 2-3 minutes and then you should see it pop up in your Console to be commissioned - as seen in step 14 below.
Step 14:
On your Console you should see a pop up to confirm your new Canary.
Click Add Canary.
Step 15:
Your EC2 Canary will boot and connect back to your Console.
Note : Your Canary will connect to your Console running a Windows 2019 configuration with default services on it - you can reconfigure the Canary using the remote management - Guide found here.
You're done! ;-)
Costs per EC2 Cloud Canary
The AWS Birds run on a t3.micro and depending on the regions, the estimated cost would be $5 to $8 per month.
- Set Location Type to AWS Regions
- Set Region to the region your running your Canary in - note we've selected US East (Ohio)
- Set Operating system to Linux - note this should be the default
- Type t3.micro in the search bar to quickly find the running costs
- The hourly costs is shown here and can be multiply by 730 hours in a month.
EC2 Cloud Canary permissions:
We have crafted the EC2 Bird launch experience to be as seamless as possible.
For environments looking to setup a service account with least privilege to deploy EC2 Canary’s, the below permissions are required to launch an instance.
Permissions required:
AuthorizeSecurityGroupIngress
CreateSecurityGroup
DescribeAccountAttributes
DescribeAvailabilityZones
DescribeCapacityReservations
DescribeHosts
DescribeImages
DescribeInstanceAttribute
DescribeInstanceCreditSpecifications
DescribeInstances
DescribeInstanceStatus
DescribeInstanceTypes
DescribeKeyPairs
DescribeLaunchTemplates
DescribeNetworkInterfaces
DescribePlacementGroups
DescribeSecurityGroups
DescribeSnapshots
DescribeSpotPriceHistory
DescribeSubnets
DescribeTags
DescribeVolumes
DescribeVolumesModifications
DescribeVolumeStatus
DescribeVpcs
GetDefaultCreditSpecification
GetEbsEncryptionByDefault
RunInstances