/aws

A collection of shell scripts for automating various tasks with AWS (Amazon Web Services)

Primary LanguageShellApache License 2.0Apache-2.0

aws

A collection of shell scripts for automating various tasks with Amazon Web Services

Most require the AWS CLI: https://aws.amazon.com/cli/

and jq: https://stedolan.github.io/jq/

Build Status

  • cloudfront-invalidation-status.sh Checks Cloudfront Distributions for cache invalidation status to complete
  • create-cloudwatch-alarms.sh Create AWS CloudWatch alarms for EC2, RDS, Load Balancer environments
  • ec2-create-snapshots.sh Create a snapshot of each EC2 volume that is tagged with the backup flag
  • ec2-delete-snapshots.sh Deletes snapshots for each EC2 volume that is tagged with the backup flag and matches the specified date
  • ec2-elb-export-template.sh Export an ELB to a JSON template file for version control, duplication or recreation
  • ec2-elb-upload-ssl-cert.sh Upload an SSL Certificate to AWS for use in setting up an ELB
  • ec2-import-network-acl.sh Import CIDR IP list to AWS EC2 Classic ACL rules and deny access
  • ec2-import-vpcsg-rules-cloudfront.sh Create VPC Security Group with Cloudfront IP ranges
  • ec2-import-vpcsg-rules.sh Create an AWS VPC Security Group with rules to allow access to each IP at the port specified
  • ec2-import-vpcsg-rules-pingdom.sh Create an AWS VPC Security Group with rules to allow access to each IP at the port specified, setup to import rules for Pingdom probe servers
  • ec2-import-waf-ip-set.sh Import list of current Pingdom probe server IPs into WAF IP Set
  • ec2-update-vpcsg-rules-pingdom.sh Update existing AWS VPC Security Groups with new IP rules to allow access to each Pingdom probe server IP at the port specified
  • elastic-beanstalk-set-hostname-within-instance.sh Set the hostname on Elastic Beanstalk servers from within the instance with their EB environment name and public IP address
  • elastic-beanstalk-update-hostnames.sh Updates the hostname on Elastic Beanstalk servers with their environment name and IP address
  • install-awscli.sh Install and configure AWS CLI
  • install-s3cmd.sh Install and setup s3cmd from the GitHub Repo
  • route53-export-zones.sh Uses cli53 to export the zone file for each Hosted Zone domain in Route 53
  • s3-buckets-file-size.sh Count total size of all data stored in all S3 buckets
  • s3-create-iam-user.sh Create the S3 IAM user, generate IAM keys, add to IAM group, generate user policy
  • s3-openbucketpolicy.sh Set an S3 bucket policy to allow GetObject requests from any IP address
  • s3-restrictbucketpolicy.sh Set an S3 bucket policy to only allow GetObject requests from an IP whitelist file named iplist
  • s3-setup-buckets.sh Create S3 buckets, set CORS config and tag bucket with client name