SlideShare a Scribd company logo
1 of 32
Top 23 Things NOT to Do in
AWS
AWS MN Meetup – September 2017
Ervan Setiawan
Senior Architect, Cloud Center of Excellence
“A Successful Person Will Profit From
Their Mistakes And Try It Again In a
Different Way”
“A Successful Person Will Profit From
Somebody Else’s Mistakes And Try It
Again In a Different Way”
Mistake #1: AWS Credentials in Code Repository
Mistake #1: AWS Credentials in Code Repository
What can you do with an AWS access token and secret key?
Mistake #1: AWS Credentials in Code Repository
• 1 instance of Windows with SQL Enterprise = $31 / hour
• 10 instances of Windows with SQL Enterprise = $310 / hour
• Delete your EC2 instances
• Delete your databases
• Steal your data
Mistake #2: Inbound Rule of 0.0.0.0/0
Profit
• Limit the source of inbound rules to only limited IP ranges, ports and
protocols.
• You can use another security group ID as the traffic source.
Mistake #3: launch-wizard-10329840
Mistake #4: Infrastructure NOT as a Code
1. I am just going to make this small change and see if that works ..
2. Hmm .. That does not work.
3. Repeat 1 & 2 for the next hour.
4. After an hour: That works! This is easy.
5. This is enough for today.
A month later … $#^@%#%
Profit
Mistake #5: The Trap of Over Automation
Profit
1. Is it repeatable?
2. Does it require human intervention?
Mistake #6: Not Shutting Down Instances
Monthly Cost of an EC2 instance
t2.micro $14.64
m4.xlarge $585.60
I2.8xlarge $4,992.24
Profit
• Automate instance self destruction as part of the user data.
sudo at -f /usr/local/bin/deletestack.sh now +
${TTL} hours
• Use AWS Config Rules to alert on certain instance types creation
• Auto tag instances with the creator’s email address.
GorillaStack’s AutoTag open source project.
Mistake #7: Running out of CPU Credit
Profit
• Monitor CPUCredit and
CPUCreditBalance using CloudWatch
• Scale horizontally if CPUCreditBalance is
low
• Scale vertically (change instance type)
• 1 CPU Credit = 1 minute of 1 vCPU usage at 100%
• t2.micro
Starting CPU Credit = 30 Credits.
Credits earned/hour = 6 Credits.
Base performance = 10%
Mistake #8:
Mistake #9: 503 Slow Down Errors from S3
• Rapid increase to 300 PUT/LIST/DELETE requests / second or
more than 800 GET requests / second is advised to tell AWS
so they can be prepared.
Mistake #10: Not Using S3 Bucket Policy
Bob’s Bucket
Alice’s Bucket
Effect": "Allow",
"Action": [
"s3:PutObject",
"s3:GetObject",
"s3:DeleteObject"
],
"Resource": ["arn:aws:s3:::bobbucket/*"]
Effect": "Allow",
"Action": [
"s3:PutObject",
"s3:GetObject",
"s3:DeleteObject"
],
"Resource": ["arn:aws:s3:::alicebucket/*"]
Effect": "Allow",
"Action": [
"s3:GetObject"],
"Resource": ["arn:aws:s3:::*”]
Mistake #10: Not Using S3 Bucket Policy
Bob’s Bucket
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Deny",
"NotPrincipal": {
"AWS": [
"arn:aws:iam::Bob"
]
},
"Action": [
"s3:*"
],
"Resource": "arn:aws:s3:::bobbucket/*"
}
]
}
Mistake #11: Not Using KMS Key Policy
Bob’s Key
Alice’s Key
Effect": "Allow",
"Action": [
”kms:decrypt”
],
"Resource": ["arn:aws:kms:::bobkey”]
Effect": "Allow",
"Action": [
”kms:decrypt”
],
"Resource": ["arn:aws:kms:::alicekey"]
Effect": "Allow",
"Action": [
”kms:*"],
"Resource": ["arn:aws:kms::*”]
Mistake #11: Not Using KMS Key Policy
Bob’s Key
Effect": "Allow",
"Principal":
{ "AWS": ”Bob”},
"Action": [
"kms:Decrypt"
]
Mistake #12:
Who are ”Authenticated AWS Users”?
Any user that has an AWS account
Mistake #13: Misconfigured CNAME to S3 bucket configuration
blackfriday.mydomain.com -> mybucket.s3-website-us-east-1.amazonaws.com
Mistake #14: S3 Bucket Names
“The name must be unique across all
existing bucket names in Amazon S3.” -
AWS
Profit
• Don’t assume that the S3 bucket name is available
• Make it configurable
Mistake #15: S3 Encryption Setting
Selecting the encryption method makes sure that all future objects in
the S3 will be encrypted - FALSE
Profit
• Make sure to set the x-amz-server-side-encryption header in the PUT
requests.
• Create an S3 bucket policy to reject requests without the header.
Mistake #16: Heavy Weight Health Checks
1 instance -> 6 * 3 = 18 health checks / minute
3 instances -> 18 * 3 = 54 health checks / minute
EC2
EC2
EC2
Dependency
ELB AZ1
ELB AZ2
ELB AZ3
Mistake #17: Public AMI
Mistake #18: Running yum update via Cron Job
java.security.InvalidAlgorithmParameterException: the trustAnchors parameter
must be non-empty
Mistake #19: Too Restrictive of Outbound Security Groups
Timeout on http://packages.eu-west-
1.amazonaws.com/2016.09/main/20160901f6a8/x86_64/repodata/repomd.xml
?instance_id=i-0326a960d33aafbeb&region=us-east-1: (28, 'Resolving timed out
after 10521 milliseconds')
Mistake #20: Folders in S3
Mistake #20: Folders in S3
• There are no hierarchies in S3.
• Flat structure of S3 Objects (Key/Value).
Mistake #21: Not All Regions Are Equal
Mistake #22: Placeholder
Mistake #23: Losing a Data Center
Profit
Deny "aws-portal:*Account” action

More Related Content

What's hot

基礎から学ぶ? EC2マルチキャスト
基礎から学ぶ? EC2マルチキャスト基礎から学ぶ? EC2マルチキャスト
基礎から学ぶ? EC2マルチキャストNoritaka Sekiyama
 
SSL Impersonation in 5 minutes or less!
SSL Impersonation in 5 minutes or less!SSL Impersonation in 5 minutes or less!
SSL Impersonation in 5 minutes or less!Chris John Riley
 
サーバーレスで ガチ本番運用までやってるお話し
サーバーレスで ガチ本番運用までやってるお話しサーバーレスで ガチ本番運用までやってるお話し
サーバーレスで ガチ本番運用までやってるお話しAkira Nagata
 
Pursuing evasive custom command & control - GuideM
Pursuing evasive custom command & control - GuideMPursuing evasive custom command & control - GuideM
Pursuing evasive custom command & control - GuideMMark Secretario
 
SSL Pinning and Bypasses: Android and iOS
SSL Pinning and Bypasses: Android and iOSSSL Pinning and Bypasses: Android and iOS
SSL Pinning and Bypasses: Android and iOSAnant Shrivastava
 
[NEW LAUNCH!] Introducing AWS Transit Gateway (NET331) - AWS re:Invent 2018
[NEW LAUNCH!] Introducing AWS Transit Gateway (NET331) - AWS re:Invent 2018[NEW LAUNCH!] Introducing AWS Transit Gateway (NET331) - AWS re:Invent 2018
[NEW LAUNCH!] Introducing AWS Transit Gateway (NET331) - AWS re:Invent 2018Amazon Web Services
 
20190604 AWS Black Belt Online Seminar Amazon Simple Notification Service (SNS)
20190604 AWS Black Belt Online Seminar Amazon Simple Notification Service (SNS)20190604 AWS Black Belt Online Seminar Amazon Simple Notification Service (SNS)
20190604 AWS Black Belt Online Seminar Amazon Simple Notification Service (SNS)Amazon Web Services Japan
 
20190129 AWS Black Belt Online Seminar AWS Identity and Access Management (AW...
20190129 AWS Black Belt Online Seminar AWS Identity and Access Management (AW...20190129 AWS Black Belt Online Seminar AWS Identity and Access Management (AW...
20190129 AWS Black Belt Online Seminar AWS Identity and Access Management (AW...Amazon Web Services Japan
 
onpremise환경에서 kubespray설치
onpremise환경에서 kubespray설치onpremise환경에서 kubespray설치
onpremise환경에서 kubespray설치choi sungwook
 
20191016 AWS Black Belt Online Seminar Amazon Route 53 Resolver
20191016 AWS Black Belt Online Seminar Amazon Route 53 Resolver20191016 AWS Black Belt Online Seminar Amazon Route 53 Resolver
20191016 AWS Black Belt Online Seminar Amazon Route 53 ResolverAmazon Web Services Japan
 
SSRF対策としてAmazonから発表されたIMDSv2の効果と破り方
SSRF対策としてAmazonから発表されたIMDSv2の効果と破り方SSRF対策としてAmazonから発表されたIMDSv2の効果と破り方
SSRF対策としてAmazonから発表されたIMDSv2の効果と破り方Hiroshi Tokumaru
 
20200212 AWS Black Belt Online Seminar AWS Systems Manager
20200212 AWS Black Belt Online Seminar AWS Systems Manager20200212 AWS Black Belt Online Seminar AWS Systems Manager
20200212 AWS Black Belt Online Seminar AWS Systems ManagerAmazon Web Services Japan
 
Developers.IO 2019 Tokyo re:inventの歩き方
Developers.IO 2019 Tokyo re:inventの歩き方Developers.IO 2019 Tokyo re:inventの歩き方
Developers.IO 2019 Tokyo re:inventの歩き方Shuji Kikuchi
 
[AWS Summit 2012] クラウドデザインパターン#5 CDP バッチ処理編
[AWS Summit 2012] クラウドデザインパターン#5 CDP バッチ処理編[AWS Summit 2012] クラウドデザインパターン#5 CDP バッチ処理編
[AWS Summit 2012] クラウドデザインパターン#5 CDP バッチ処理編Amazon Web Services Japan
 
AWSのセキュリティについて
AWSのセキュリティについてAWSのセキュリティについて
AWSのセキュリティについてYasuhiro Horiuchi
 
実践!AWSクラウドデザインパターン
実践!AWSクラウドデザインパターン実践!AWSクラウドデザインパターン
実践!AWSクラウドデザインパターンHiroyasu Suzuki
 
SANS @Night Talk: SQL Injection Exploited
SANS @Night Talk: SQL Injection ExploitedSANS @Night Talk: SQL Injection Exploited
SANS @Night Talk: SQL Injection ExploitedMicah Hoffman
 

What's hot (20)

基礎から学ぶ? EC2マルチキャスト
基礎から学ぶ? EC2マルチキャスト基礎から学ぶ? EC2マルチキャスト
基礎から学ぶ? EC2マルチキャスト
 
SSL Impersonation in 5 minutes or less!
SSL Impersonation in 5 minutes or less!SSL Impersonation in 5 minutes or less!
SSL Impersonation in 5 minutes or less!
 
サーバーレスで ガチ本番運用までやってるお話し
サーバーレスで ガチ本番運用までやってるお話しサーバーレスで ガチ本番運用までやってるお話し
サーバーレスで ガチ本番運用までやってるお話し
 
Pursuing evasive custom command & control - GuideM
Pursuing evasive custom command & control - GuideMPursuing evasive custom command & control - GuideM
Pursuing evasive custom command & control - GuideM
 
AWS Black Belt Online Seminar 2017 AWS WAF
AWS Black Belt Online Seminar 2017 AWS WAFAWS Black Belt Online Seminar 2017 AWS WAF
AWS Black Belt Online Seminar 2017 AWS WAF
 
SSL Pinning and Bypasses: Android and iOS
SSL Pinning and Bypasses: Android and iOSSSL Pinning and Bypasses: Android and iOS
SSL Pinning and Bypasses: Android and iOS
 
[NEW LAUNCH!] Introducing AWS Transit Gateway (NET331) - AWS re:Invent 2018
[NEW LAUNCH!] Introducing AWS Transit Gateway (NET331) - AWS re:Invent 2018[NEW LAUNCH!] Introducing AWS Transit Gateway (NET331) - AWS re:Invent 2018
[NEW LAUNCH!] Introducing AWS Transit Gateway (NET331) - AWS re:Invent 2018
 
20190604 AWS Black Belt Online Seminar Amazon Simple Notification Service (SNS)
20190604 AWS Black Belt Online Seminar Amazon Simple Notification Service (SNS)20190604 AWS Black Belt Online Seminar Amazon Simple Notification Service (SNS)
20190604 AWS Black Belt Online Seminar Amazon Simple Notification Service (SNS)
 
20190129 AWS Black Belt Online Seminar AWS Identity and Access Management (AW...
20190129 AWS Black Belt Online Seminar AWS Identity and Access Management (AW...20190129 AWS Black Belt Online Seminar AWS Identity and Access Management (AW...
20190129 AWS Black Belt Online Seminar AWS Identity and Access Management (AW...
 
onpremise환경에서 kubespray설치
onpremise환경에서 kubespray설치onpremise환경에서 kubespray설치
onpremise환경에서 kubespray설치
 
20191016 AWS Black Belt Online Seminar Amazon Route 53 Resolver
20191016 AWS Black Belt Online Seminar Amazon Route 53 Resolver20191016 AWS Black Belt Online Seminar Amazon Route 53 Resolver
20191016 AWS Black Belt Online Seminar Amazon Route 53 Resolver
 
AWSからのメール送信
AWSからのメール送信AWSからのメール送信
AWSからのメール送信
 
SSRF対策としてAmazonから発表されたIMDSv2の効果と破り方
SSRF対策としてAmazonから発表されたIMDSv2の効果と破り方SSRF対策としてAmazonから発表されたIMDSv2の効果と破り方
SSRF対策としてAmazonから発表されたIMDSv2の効果と破り方
 
20200212 AWS Black Belt Online Seminar AWS Systems Manager
20200212 AWS Black Belt Online Seminar AWS Systems Manager20200212 AWS Black Belt Online Seminar AWS Systems Manager
20200212 AWS Black Belt Online Seminar AWS Systems Manager
 
Developers.IO 2019 Tokyo re:inventの歩き方
Developers.IO 2019 Tokyo re:inventの歩き方Developers.IO 2019 Tokyo re:inventの歩き方
Developers.IO 2019 Tokyo re:inventの歩き方
 
[AWS Summit 2012] クラウドデザインパターン#5 CDP バッチ処理編
[AWS Summit 2012] クラウドデザインパターン#5 CDP バッチ処理編[AWS Summit 2012] クラウドデザインパターン#5 CDP バッチ処理編
[AWS Summit 2012] クラウドデザインパターン#5 CDP バッチ処理編
 
AWSのセキュリティについて
AWSのセキュリティについてAWSのセキュリティについて
AWSのセキュリティについて
 
実践!AWSクラウドデザインパターン
実践!AWSクラウドデザインパターン実践!AWSクラウドデザインパターン
実践!AWSクラウドデザインパターン
 
I hunt sys admins 2.0
I hunt sys admins 2.0I hunt sys admins 2.0
I hunt sys admins 2.0
 
SANS @Night Talk: SQL Injection Exploited
SANS @Night Talk: SQL Injection ExploitedSANS @Night Talk: SQL Injection Exploited
SANS @Night Talk: SQL Injection Exploited
 

Similar to Top 23 Things Not to Do in AWS

AWS Security Best Practices (March 2017)
AWS Security Best Practices (March 2017)AWS Security Best Practices (March 2017)
AWS Security Best Practices (March 2017)Julien SIMON
 
Security best practices on AWS - Pop-up Loft TLV 2017
Security best practices on AWS - Pop-up Loft TLV 2017Security best practices on AWS - Pop-up Loft TLV 2017
Security best practices on AWS - Pop-up Loft TLV 2017Amazon Web Services
 
Real world cloud formation feb 2014 final
Real world cloud formation feb 2014 finalReal world cloud formation feb 2014 final
Real world cloud formation feb 2014 finalHoward Glynn
 
Cloud cost optimization (AWS, GCP)
Cloud cost optimization (AWS, GCP)Cloud cost optimization (AWS, GCP)
Cloud cost optimization (AWS, GCP)Szabolcs Zajdó
 
Developing on SQL Azure
Developing on SQL AzureDeveloping on SQL Azure
Developing on SQL AzureIke Ellis
 
Serverless Architecture Patterns
Serverless Architecture PatternsServerless Architecture Patterns
Serverless Architecture PatternsAmazon Web Services
 
serverless_architecture_patterns_london_loft.pdf
serverless_architecture_patterns_london_loft.pdfserverless_architecture_patterns_london_loft.pdf
serverless_architecture_patterns_london_loft.pdfAmazon Web Services
 
Building A Cloud Security Strategy for Scale
Building A Cloud Security Strategy for ScaleBuilding A Cloud Security Strategy for Scale
Building A Cloud Security Strategy for ScaleChris Farris
 
SmugMug: From MySQL to Amazon DynamoDB (DAT204) | AWS re:Invent 2013
SmugMug: From MySQL to Amazon DynamoDB (DAT204) | AWS re:Invent 2013SmugMug: From MySQL to Amazon DynamoDB (DAT204) | AWS re:Invent 2013
SmugMug: From MySQL to Amazon DynamoDB (DAT204) | AWS re:Invent 2013Amazon Web Services
 
You Can’t Protect What You Can’t See: AWS Security Monitoring & Compliance Va...
You Can’t Protect What You Can’t See: AWS Security Monitoring & Compliance Va...You Can’t Protect What You Can’t See: AWS Security Monitoring & Compliance Va...
You Can’t Protect What You Can’t See: AWS Security Monitoring & Compliance Va...Amazon Web Services
 
Well-Architected for Security: Advanced Session
Well-Architected for Security: Advanced SessionWell-Architected for Security: Advanced Session
Well-Architected for Security: Advanced SessionAmazon Web Services
 
AWS Summit Sydney 2014 | Understanding AWS Security
AWS Summit Sydney 2014 | Understanding AWS SecurityAWS Summit Sydney 2014 | Understanding AWS Security
AWS Summit Sydney 2014 | Understanding AWS SecurityAmazon Web Services
 
Building Secure Architectures on AWS
Building Secure Architectures on AWSBuilding Secure Architectures on AWS
Building Secure Architectures on AWSManojAccTest
 
Cron in der Cloud - Die Top 10 Hitparade
Cron in der Cloud - Die Top 10 HitparadeCron in der Cloud - Die Top 10 Hitparade
Cron in der Cloud - Die Top 10 HitparadeQAware GmbH
 
The Future is Now: Leveraging the Cloud with Ruby
The Future is Now: Leveraging the Cloud with RubyThe Future is Now: Leveraging the Cloud with Ruby
The Future is Now: Leveraging the Cloud with RubyRobert Dempsey
 
Deep Dive on Amazon Relational Database Service
Deep Dive on Amazon Relational Database ServiceDeep Dive on Amazon Relational Database Service
Deep Dive on Amazon Relational Database ServiceAmazon Web Services
 
AWS Cyber Security Best Practices
AWS Cyber Security Best PracticesAWS Cyber Security Best Practices
AWS Cyber Security Best PracticesDoiT International
 
ECS and Docker at Okta
ECS and Docker at OktaECS and Docker at Okta
ECS and Docker at OktaJon Todd
 
DevOps, Microservices and Serverless Architecture
DevOps, Microservices and Serverless ArchitectureDevOps, Microservices and Serverless Architecture
DevOps, Microservices and Serverless ArchitectureMikhail Prudnikov
 

Similar to Top 23 Things Not to Do in AWS (20)

AWS Security Best Practices (March 2017)
AWS Security Best Practices (March 2017)AWS Security Best Practices (March 2017)
AWS Security Best Practices (March 2017)
 
Security best practices on AWS - Pop-up Loft TLV 2017
Security best practices on AWS - Pop-up Loft TLV 2017Security best practices on AWS - Pop-up Loft TLV 2017
Security best practices on AWS - Pop-up Loft TLV 2017
 
Breaking The Cloud Kill Chain
Breaking The Cloud Kill ChainBreaking The Cloud Kill Chain
Breaking The Cloud Kill Chain
 
Real world cloud formation feb 2014 final
Real world cloud formation feb 2014 finalReal world cloud formation feb 2014 final
Real world cloud formation feb 2014 final
 
Cloud cost optimization (AWS, GCP)
Cloud cost optimization (AWS, GCP)Cloud cost optimization (AWS, GCP)
Cloud cost optimization (AWS, GCP)
 
Developing on SQL Azure
Developing on SQL AzureDeveloping on SQL Azure
Developing on SQL Azure
 
Serverless Architecture Patterns
Serverless Architecture PatternsServerless Architecture Patterns
Serverless Architecture Patterns
 
serverless_architecture_patterns_london_loft.pdf
serverless_architecture_patterns_london_loft.pdfserverless_architecture_patterns_london_loft.pdf
serverless_architecture_patterns_london_loft.pdf
 
Building A Cloud Security Strategy for Scale
Building A Cloud Security Strategy for ScaleBuilding A Cloud Security Strategy for Scale
Building A Cloud Security Strategy for Scale
 
SmugMug: From MySQL to Amazon DynamoDB (DAT204) | AWS re:Invent 2013
SmugMug: From MySQL to Amazon DynamoDB (DAT204) | AWS re:Invent 2013SmugMug: From MySQL to Amazon DynamoDB (DAT204) | AWS re:Invent 2013
SmugMug: From MySQL to Amazon DynamoDB (DAT204) | AWS re:Invent 2013
 
You Can’t Protect What You Can’t See: AWS Security Monitoring & Compliance Va...
You Can’t Protect What You Can’t See: AWS Security Monitoring & Compliance Va...You Can’t Protect What You Can’t See: AWS Security Monitoring & Compliance Va...
You Can’t Protect What You Can’t See: AWS Security Monitoring & Compliance Va...
 
Well-Architected for Security: Advanced Session
Well-Architected for Security: Advanced SessionWell-Architected for Security: Advanced Session
Well-Architected for Security: Advanced Session
 
AWS Summit Sydney 2014 | Understanding AWS Security
AWS Summit Sydney 2014 | Understanding AWS SecurityAWS Summit Sydney 2014 | Understanding AWS Security
AWS Summit Sydney 2014 | Understanding AWS Security
 
Building Secure Architectures on AWS
Building Secure Architectures on AWSBuilding Secure Architectures on AWS
Building Secure Architectures on AWS
 
Cron in der Cloud - Die Top 10 Hitparade
Cron in der Cloud - Die Top 10 HitparadeCron in der Cloud - Die Top 10 Hitparade
Cron in der Cloud - Die Top 10 Hitparade
 
The Future is Now: Leveraging the Cloud with Ruby
The Future is Now: Leveraging the Cloud with RubyThe Future is Now: Leveraging the Cloud with Ruby
The Future is Now: Leveraging the Cloud with Ruby
 
Deep Dive on Amazon Relational Database Service
Deep Dive on Amazon Relational Database ServiceDeep Dive on Amazon Relational Database Service
Deep Dive on Amazon Relational Database Service
 
AWS Cyber Security Best Practices
AWS Cyber Security Best PracticesAWS Cyber Security Best Practices
AWS Cyber Security Best Practices
 
ECS and Docker at Okta
ECS and Docker at OktaECS and Docker at Okta
ECS and Docker at Okta
 
DevOps, Microservices and Serverless Architecture
DevOps, Microservices and Serverless ArchitectureDevOps, Microservices and Serverless Architecture
DevOps, Microservices and Serverless Architecture
 

Recently uploaded

Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticscarlostorres15106
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...Fwdays
 
Science&tech:THE INFORMATION AGE STS.pdf
Science&tech:THE INFORMATION AGE STS.pdfScience&tech:THE INFORMATION AGE STS.pdf
Science&tech:THE INFORMATION AGE STS.pdfjimielynbastida
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 3652toLead Limited
 
Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptxLBM Solutions
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Scott Keck-Warren
 
Build your next Gen AI Breakthrough - April 2024
Build your next Gen AI Breakthrough - April 2024Build your next Gen AI Breakthrough - April 2024
Build your next Gen AI Breakthrough - April 2024Neo4j
 
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptxMaking_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptxnull - The Open Security Community
 
Pigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesSinan KOZAK
 
costume and set research powerpoint presentation
costume and set research powerpoint presentationcostume and set research powerpoint presentation
costume and set research powerpoint presentationphoebematthew05
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubKalema Edgar
 
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr LapshynFwdays
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Alan Dix
 
Benefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksBenefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksSoftradix Technologies
 
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
Unlocking the Potential of the Cloud for IBM Power Systems
Unlocking the Potential of the Cloud for IBM Power SystemsUnlocking the Potential of the Cloud for IBM Power Systems
Unlocking the Potential of the Cloud for IBM Power SystemsPrecisely
 
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024BookNet Canada
 

Recently uploaded (20)

Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
 
Science&tech:THE INFORMATION AGE STS.pdf
Science&tech:THE INFORMATION AGE STS.pdfScience&tech:THE INFORMATION AGE STS.pdf
Science&tech:THE INFORMATION AGE STS.pdf
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
 
Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptx
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024
 
The transition to renewables in India.pdf
The transition to renewables in India.pdfThe transition to renewables in India.pdf
The transition to renewables in India.pdf
 
Build your next Gen AI Breakthrough - April 2024
Build your next Gen AI Breakthrough - April 2024Build your next Gen AI Breakthrough - April 2024
Build your next Gen AI Breakthrough - April 2024
 
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptxMaking_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
 
Pigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping Elbows
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen Frames
 
costume and set research powerpoint presentation
costume and set research powerpoint presentationcostume and set research powerpoint presentation
costume and set research powerpoint presentation
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding Club
 
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
 
Benefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksBenefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other Frameworks
 
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
Hot Sexy call girls in Panjabi Bagh 🔝 9953056974 🔝 Delhi escort Service
Hot Sexy call girls in Panjabi Bagh 🔝 9953056974 🔝 Delhi escort ServiceHot Sexy call girls in Panjabi Bagh 🔝 9953056974 🔝 Delhi escort Service
Hot Sexy call girls in Panjabi Bagh 🔝 9953056974 🔝 Delhi escort Service
 
Unlocking the Potential of the Cloud for IBM Power Systems
Unlocking the Potential of the Cloud for IBM Power SystemsUnlocking the Potential of the Cloud for IBM Power Systems
Unlocking the Potential of the Cloud for IBM Power Systems
 
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
 

Top 23 Things Not to Do in AWS

  • 1. Top 23 Things NOT to Do in AWS AWS MN Meetup – September 2017 Ervan Setiawan Senior Architect, Cloud Center of Excellence
  • 2.
  • 3. “A Successful Person Will Profit From Their Mistakes And Try It Again In a Different Way”
  • 4. “A Successful Person Will Profit From Somebody Else’s Mistakes And Try It Again In a Different Way”
  • 5. Mistake #1: AWS Credentials in Code Repository
  • 6. Mistake #1: AWS Credentials in Code Repository What can you do with an AWS access token and secret key?
  • 7. Mistake #1: AWS Credentials in Code Repository • 1 instance of Windows with SQL Enterprise = $31 / hour • 10 instances of Windows with SQL Enterprise = $310 / hour • Delete your EC2 instances • Delete your databases • Steal your data
  • 8. Mistake #2: Inbound Rule of 0.0.0.0/0 Profit • Limit the source of inbound rules to only limited IP ranges, ports and protocols. • You can use another security group ID as the traffic source.
  • 10. Mistake #4: Infrastructure NOT as a Code 1. I am just going to make this small change and see if that works .. 2. Hmm .. That does not work. 3. Repeat 1 & 2 for the next hour. 4. After an hour: That works! This is easy. 5. This is enough for today. A month later … $#^@%#% Profit
  • 11. Mistake #5: The Trap of Over Automation Profit 1. Is it repeatable? 2. Does it require human intervention?
  • 12. Mistake #6: Not Shutting Down Instances Monthly Cost of an EC2 instance t2.micro $14.64 m4.xlarge $585.60 I2.8xlarge $4,992.24 Profit • Automate instance self destruction as part of the user data. sudo at -f /usr/local/bin/deletestack.sh now + ${TTL} hours • Use AWS Config Rules to alert on certain instance types creation • Auto tag instances with the creator’s email address. GorillaStack’s AutoTag open source project.
  • 13. Mistake #7: Running out of CPU Credit Profit • Monitor CPUCredit and CPUCreditBalance using CloudWatch • Scale horizontally if CPUCreditBalance is low • Scale vertically (change instance type) • 1 CPU Credit = 1 minute of 1 vCPU usage at 100% • t2.micro Starting CPU Credit = 30 Credits. Credits earned/hour = 6 Credits. Base performance = 10%
  • 15. Mistake #9: 503 Slow Down Errors from S3 • Rapid increase to 300 PUT/LIST/DELETE requests / second or more than 800 GET requests / second is advised to tell AWS so they can be prepared.
  • 16. Mistake #10: Not Using S3 Bucket Policy Bob’s Bucket Alice’s Bucket Effect": "Allow", "Action": [ "s3:PutObject", "s3:GetObject", "s3:DeleteObject" ], "Resource": ["arn:aws:s3:::bobbucket/*"] Effect": "Allow", "Action": [ "s3:PutObject", "s3:GetObject", "s3:DeleteObject" ], "Resource": ["arn:aws:s3:::alicebucket/*"] Effect": "Allow", "Action": [ "s3:GetObject"], "Resource": ["arn:aws:s3:::*”]
  • 17. Mistake #10: Not Using S3 Bucket Policy Bob’s Bucket { "Version": "2012-10-17", "Statement": [ { "Effect": "Deny", "NotPrincipal": { "AWS": [ "arn:aws:iam::Bob" ] }, "Action": [ "s3:*" ], "Resource": "arn:aws:s3:::bobbucket/*" } ] }
  • 18. Mistake #11: Not Using KMS Key Policy Bob’s Key Alice’s Key Effect": "Allow", "Action": [ ”kms:decrypt” ], "Resource": ["arn:aws:kms:::bobkey”] Effect": "Allow", "Action": [ ”kms:decrypt” ], "Resource": ["arn:aws:kms:::alicekey"] Effect": "Allow", "Action": [ ”kms:*"], "Resource": ["arn:aws:kms::*”]
  • 19. Mistake #11: Not Using KMS Key Policy Bob’s Key Effect": "Allow", "Principal": { "AWS": ”Bob”}, "Action": [ "kms:Decrypt" ]
  • 20. Mistake #12: Who are ”Authenticated AWS Users”? Any user that has an AWS account
  • 21. Mistake #13: Misconfigured CNAME to S3 bucket configuration blackfriday.mydomain.com -> mybucket.s3-website-us-east-1.amazonaws.com
  • 22. Mistake #14: S3 Bucket Names “The name must be unique across all existing bucket names in Amazon S3.” - AWS Profit • Don’t assume that the S3 bucket name is available • Make it configurable
  • 23. Mistake #15: S3 Encryption Setting Selecting the encryption method makes sure that all future objects in the S3 will be encrypted - FALSE Profit • Make sure to set the x-amz-server-side-encryption header in the PUT requests. • Create an S3 bucket policy to reject requests without the header.
  • 24. Mistake #16: Heavy Weight Health Checks 1 instance -> 6 * 3 = 18 health checks / minute 3 instances -> 18 * 3 = 54 health checks / minute EC2 EC2 EC2 Dependency ELB AZ1 ELB AZ2 ELB AZ3
  • 26. Mistake #18: Running yum update via Cron Job java.security.InvalidAlgorithmParameterException: the trustAnchors parameter must be non-empty
  • 27. Mistake #19: Too Restrictive of Outbound Security Groups Timeout on http://packages.eu-west- 1.amazonaws.com/2016.09/main/20160901f6a8/x86_64/repodata/repomd.xml ?instance_id=i-0326a960d33aafbeb&region=us-east-1: (28, 'Resolving timed out after 10521 milliseconds')
  • 29. Mistake #20: Folders in S3 • There are no hierarchies in S3. • Flat structure of S3 Objects (Key/Value).
  • 30. Mistake #21: Not All Regions Are Equal
  • 32. Mistake #23: Losing a Data Center Profit Deny "aws-portal:*Account” action