1. Bảo Mật Kết Nối TLS (Transport Layer Security)
Đây là bước đầu tiên trong quy trình bảo mật, nơi TLS được sử dụng để mã hóa dữ liệu trong quá trình truyền tải. TLS giúp mã hóa dữ liệu khi bạn kết nối với Cubable, đảm bảo rằng thông tin của bạn không bị đọc lén hoặc thay đổi bởi bất kỳ bên thứ ba nào. Nó cũng xác thực danh tính của máy chủ Cubable, ngăn chặn nguy cơ tấn công man-in-the-middle, nơi kẻ tấn công có thể chèn mình vào giữa cuộc trao đổi dữ liệu. Với TLS, bạn có thể yên tâm rằng kết nối của mình không chỉ riêng tư mà còn an toàn.
2. Lớp Bảo Mật AWS (Amazon Web Services)
AWS (Amazon Web Services) cung cấp nhiều lớp bảo mật khác nhau để bảo vệ các tài nguyên và ứng dụng trong môi trường đám mây. Trong số đó, 5 lớp bảo mật quan trọng là VPC (Virtual Private Cloud), CloudFront và Inbound/Outbound rules, Route 53, Resolver DNS Firewall.
- VPC (Virtual Private Cloud): VPC là một dịch vụ mạng ảo trong AWS cho phép tạo ra một môi trường mạng riêng tư trong đám mây. Bằng cách sử dụng VPC, Cubable có thể tạo ra một môi trường mạng cách ly và an toàn cho các ứng dụng và dữ liệu của bạn trong AWS.
- Inbound/Outbound Rules: Quy tắc Inbound quản lý ai có thể truy cập vào VPC từ bên ngoài, còn Outbound quy định ai có thể gửi thông tin từ VPC ra ngoài. Điều này giúp Cubable kiểm soát ai có thể vào và ra khỏi mạng, bảo vệ dữ liệu khỏi các mối đe dọa từ internet.
- CloudFront: CloudFront là dịch vụ CDN (Content Delivery Network) của AWS cho phép Cubable phân phối nội dung tĩnh và động, giúp cải thiện tốc độ truy cập và hiệu suất của ứng dụng web. Bằng cách đặt CloudFront trước các ứng dụng web hoặc nội dung trên AWS, Cubable có thể tận dụng các tính năng bảo mật như bảo vệ chống DDoS và mã hóa SSL/TLS.
- Route 53: Route 53 là dịch vụ quản lý DNS (Domain Name System) của AWS. Nó cung cấp các chức năng quản lý tên miền, phân giải tên miền và quản lý tài nguyên DNS khác. Bằng cách sử dụng Route 53, Cubable áp dụng các quy tắc bảo mật như chặn các tên miền độc hại hoặc không an toàn và bảo vệ hệ thống DNS của bạn khỏi các cuộc tấn công liên quan đến tên miền.
- Resolver DNS Firewall: Resolver DNS Firewall là một tính năng mới được giới thiệu trong Route 53, cung cấp bảo mật DNS thông qua việc sử dụng các danh sách chặn DNS công cộng và cơ sở dữ liệu trí tuệ đám mây của AWS để xác định và chặn các yêu cầu truy cập đến các tên miền không an toàn.
EC2 (Elastic Compute Cloud) là một dịch vụ của AWS cho phép triển khai và quản lý các máy ảo trong môi trường đám mây. Khi làm việc với EC2, Cubable sử dụng các công cụ và tính năng bảo mật như fail2ban, rate-limiter và iptables để bảo vệ và quản lý máy chủ.
- Rate-limiter (giới hạn tốc độ) là một cơ chế để kiểm soát số lượng yêu cầu (requests) vào một tài nguyên trong một khoảng thời gian nhất định. Bằng cách giới hạn số lượng yêu cầu đến máy chủ, rate-limiter giúp ngăn chặn các cuộc tấn công DDoS và giữ cho máy chủ hoạt động ổn định.
- Iptables là một công cụ quản lý tường lửa (firewall) trong hệ điều hành Linux. Nó cho phép xác định và cấu hình các quy tắc bảo mật trên máy chủ EC2 để kiểm soát lưu lượng mạng vào và ra. Bằng cách sử dụng iptables, Cubable có thể tăng cường bảo mật và kiểm soát truy cập vào máy chủ EC2.
CORS cho phép ứng dụng Cubable quản lý việc chia sẻ dữ liệu giữa các trang web khác nhau, ngăn chặn truy cập không cho phép. JWT và OAuth2 là những cơ chế xác thực và ủy quyền, giúp đảm bảo rằng chỉ người dùng được ủy quyền mới có quyền truy cập vào dữ liệu và chức năng nhất định trong ứng dụng.
VPN giúp tạo ra một kết nối mạng riêng biệt và an toàn giữa người dùng và hệ thống, bảo vệ dữ liệu khi truyền tải qua các mạng công cộng hoặc không an toàn. Cubable sử dụng VPN để:
- Mã hóa kết nối: VPN mã hóa toàn bộ dữ liệu giữa người dùng và hệ thống, bảo vệ thông tin khỏi các cuộc tấn công như man-in-the-middle khi truyền tải qua các mạng công cộng.
- Truy cập mạng riêng tư: Với VPN, người dùng có thể kết nối vào các tài nguyên nội bộ của Cubable một cách an toàn, ví dụ như truy cập vào các ứng dụng và cơ sở dữ liệu trong môi trường VPC mà không cần phải công khai chúng ra internet.
- Chống lại giám sát và tấn công: VPN bảo vệ dữ liệu khỏi các cuộc tấn công hoặc giám sát từ các bên thứ ba khi truyền tải trên mạng không an toàn, đặc biệt là trong các kết nối internet công cộng.
- Mã hóa dữ liệu khi truyền tải: Mã hóa toàn bộ dữ liệu khi truyền tải qua mạng sử dụng TLS.
- Mã hóa dữ liệu khi lưu trữ: Sử dụng AWS KMS (Key Management Service) để mã hóa dữ liệu trong các dịch vụ như S3 và RDS, đảm bảo dữ liệu luôn được bảo vệ.
- IAM (Identity and Access Management): Quản lý quyền truy cập vào các tài nguyên AWS bằng cách tạo ra người dùng, nhóm người dùng và chính sách.
- MFA (Multi-Factor Authentication): Sử dụng MFA để bảo vệ các tài khoản quan trọng khỏi các mối đe dọa.
- AWS CloudTrail và CloudWatch: Ghi lại các hoạt động truy cập và thay đổi cấu hình, giám sát các chỉ số hệ thống và tạo cảnh báo khi có hoạt động đáng ngờ.
- Audit Logs: Ghi lại và theo dõi các nhật ký truy cập và thay đổi đối với hệ thống và dữ liệu.
- Web Application Firewall (WAF): Bảo vệ ứng dụng web khỏi các tấn công phổ biến như SQL injection, XSS, và các mối đe dọa từ ứng dụng web.
- Bảo vệ DDoS: Sử dụng AWS Shield để bảo vệ các tài nguyên khỏi tấn công DDoS.
- Security Groups và Network ACLs: Kiểm soát lưu lượng mạng vào và ra của các tài nguyên, bảo vệ hệ thống khỏi các tấn công.
- Private Subnets và NAT Gateways: Sử dụng Private Subnets để giữ các tài nguyên an toàn khỏi internet và sử dụng NAT Gateways để truy cập internet một cách an toàn.
- RBAC (Role-Based Access Control): Kiểm soát quyền truy cập của người dùng và dịch vụ trong Kubernetes.
- Pod Security Policies: Đảm bảo rằng các pod trong Kubernetes tuân thủ các chính sách bảo mật như cấm chạy root container, yêu cầu mã hóa lưu trữ.