re:invent 15 things I wish I knew about securing my AWS account
Published: 2020-12-02 20:11:09

**1. Enforcing MFA with YubiKeys and AWS Config rule**
![Alt Text](https://dev-to-uploads.s3.amazonaws.com/i/x4pi057j9kakw7oamrhf.png)
MFA เป็นอีกวิธีหนึ่งที่ช่วยเพิ่มการป้องกันคนอื่นที่รู้รหัสของเราไม่ให้สามารถเข้าใช้งานส่วนมากเราจะใช้โทรศัพท์ในการติดตั้ง MFA แต่ปัญหาส่วนใหญ่ที่เกิดจากการใช้มือถือคือถ้าเราลืมชาร์ตแบตมือถือ แล้วแบตเราหมด หรือไม่สามารถเข้าใช้งาน MFA แอพพลิเคชั่น ซึ่งทำให้เราไม่สามารถเข้าใช้งาน MFA ได้ 

![Alt Text](https://dev-to-uploads.s3.amazonaws.com/i/m2w9p2yj7keltbfoiz04.png)
Yubikeys เป็นอีกทางเลือกหนึ่งที่สามารถช่วยให้เราสามารถเข้าใช้งาน AWS ได้ Yubikey ไม่จำเป็นต้องชารต์แบตและสามารถปลดล๊อกโดยการสัมผัส

![Alt Text](https://dev-to-uploads.s3.amazonaws.com/i/bzhkrq4gfsxoqh94zlat.png)
AWS config rule จะเป็นอีกทางเลือกที่ช่วยตรวจสอบว่า MFA แอพมีการใช้งานหรือไม่สำหรับแอคเคานั้น ถ้าผู้ใช้งานไม่มีการติดตั้ง MFA เราสามารถตั้งค่าให้แอคเคานั้นไม่สามารถเข้าใช้งานจนกว่าผู้ใช้งานจะเปิดใช้งาน MFA

**2. Traffic baseline with Amazon VPC flow logs**
![Alt Text](https://dev-to-uploads.s3.amazonaws.com/i/9akw5bvpx2bg5zgkqqvi.png)

Baseline เป็นการดับจับข้อมูลผ่านเข้าออกที่ผิดปกติไปจากดั้งเดิม VPC flow logs จะมีการเก็บข้อมูลไว้และเราสามารถใช้ข้อมูลนี้เป็นในการวิเคราะห์ถ้าหากมีข้อมูลที่ผิดปกติไปจากเดิม

**3. Beyond 90 days with AWS CloudTrail**
![Alt Text](https://dev-to-uploads.s3.amazonaws.com/i/guj5ap9lj5oc88mrkcv0.png)
![Alt Text](https://dev-to-uploads.s3.amazonaws.com/i/vxypm3tzslh96mno8rnz.png)

CloudTrail เก็บข้อมูลทุกอย่างที่เกิดขึ้นใน AWS แอคเคาท์ ซึ่งถ้าหากเราคิดว่าแอคเคาท์เราเกิดการรั่วไหลข้อมูล เช่น รหัสผ่าน หรือมีคนพยายามที่จะแฮค เราสามารถเปิด history ใน CloudTrail เพื่อค้นหาข้อมูลความเคลื่อนไหว
ClouTrail สามารถเปิดข้อมูลย้อนหลังได้ 90 วัน แต่ถ้าหากเราต้องการที่จะเก็บข้อมูลมากกว่านั้น เราสามารถตั้งค่าการเก็บข้อมูลโดยใช้ s3 แยกเก็บในอีกแอคเคาท์

**4. Threat detection with AWS Detective and Amazon GuardDury**
![Alt Text](https://dev-to-uploads.s3.amazonaws.com/i/mqtztj0p37robyb9fumn.png)
Threat detection เป็นการวิเคราะห์ข้อมูลความเคลื่อนไหวที่ผิดปกติไปจากเดิมใน AWS แอคเคาท์

**5. Exploring access with AWS CloudTrail and Amazon Athena**
![Alt Text](https://dev-to-uploads.s3.amazonaws.com/i/kbhnmhe3m1htltdc0i0s.png)
Athena เป็นเครื่องมือที่ช่วยในการเลือกข้อมูลที่เราต้องการโดยใช้ SQL query ซึ่งทำให้ลดเวลาในการอ่านไฟล์ทุกไฟล์

**6. Isolate workloads with multiple AWS accounts**
![Alt Text](https://dev-to-uploads.s3.amazonaws.com/i/458azdebbkswjjsqvt4g.png)
เพื่อป้องกัน Blast Radius AWS แนะนำให้เราแยกแอคเคาท์ออกจากกัน 

**7. Harden EC2 instances from the Amazon EC2 marketplace**
![Alt Text](https://dev-to-uploads.s3.amazonaws.com/i/3dypcs7rnrznzlf1ibx1.png)
Harden EC2 instance ช่วยในตั้งค่าที่ถูกต้องสำหรับ ec2 โดยที่เราไม่จำเป็นต้องใช้เวลาในส่วนนี้

**8. Ditch key pairs in favor of AWS Systems Manager Session Manager**
![Alt Text](https://dev-to-uploads.s3.amazonaws.com/i/kdzj3vmaohf7q78jw7kq.png)
ปกติเวลาที่เข้าใช้งาน ec2 เราจะใช้ SSH key ในการเข้าถึง แต่ถ้าหากทีมของเราลาออกหรือมีการแชร์ไฟล์นี้ออกไป คนอื่นสามารถเข้าใช้งาน ec2 ของเราได้
Session Manager เป็นอีกทางเลือกหนึ่งที่ปลอดภัยกว่า ซึ่งไม่จำเป็นต้องใช้ key เราสามารถดูการเคลื่อนไหวย้อนหลัง และสามารถจำกัดการเข้าใช้งาน

**9. Principle of least privilege via IAM policies**
![Alt Text](https://dev-to-uploads.s3.amazonaws.com/i/a1l9hievxt63rhiy36da.png)
ตั้งค่า IAM policy เป็นอีกสิ่งหนึ่งที่สำคัญมากสำหรับ production ซึ่ง AWS แนะนำให้ตั้งค่า action และ resources สำหรับสิ่งที่เราต้องการใช้จริงๆ 

**10. Lock Regions and services with service control policies
**
![Alt Text](https://dev-to-uploads.s3.amazonaws.com/i/3rkzckvee32wo7jlu9xs.png)
service control policies (SCP)เราสามารถตั้งค่าเพื่อจำกัดการใช้งานแต่ละ region ได้

**11. Allow trusted IPs through to AWS WAF**
![Alt Text](https://dev-to-uploads.s3.amazonaws.com/i/3xyb3oi8qef080s9p6zv.png)
AWS WAF ใช้สำหรับการตั้งค่า IP adress เฉพาะแอดมินแอคเคาท์ และบล๊อกการเค้าถึงจากบุคคลอื่นๆ

**12. Clearing an account with aws-nuke**
![Alt Text](https://dev-to-uploads.s3.amazonaws.com/i/c8jjt4f30hjrcoajpahx.png)
aws-nuke ช่วยในการลบแอคเคาท์ที่เราไม่ต้องการเพื่อลดค่าใช้จ่ายถ้าไม่มีการใช้งาน

**13. Start compliance with AWS Config conformance packs**
![Alt Text](https://dev-to-uploads.s3.amazonaws.com/i/0irefhbkckuv5f7rjjli.png)

**14. Avoid data unintended leaks with IAM Access Analyzer**
![Alt Text](https://dev-to-uploads.s3.amazonaws.com/i/dczn3ygl4rg9nuvxkbip.png)
AWS IAM Access Analyzer ช่วยในการดับจับความเคลื่อนไหวใน AWS แอคเคาท์ และการแชร์ resouces 

**15. Where to go next with AWS Well-Architected Tool(Security Pillar)**
![Alt Text](https://dev-to-uploads.s3.amazonaws.com/i/5ht7uh9vif3x3m2zgdl9.png)