Tạo Security group

Tạo Security Group cho các thực thể EC2

ℹ️ Thông tin: Security Group (Nhóm bảo mật) đóng vai trò như một tường lửa ảo cho các thực thể Amazon EC2 để kiểm soát lưu lượng truy cập đầu vào (inbound) và đầu ra (outbound). Đối với việc triển khai RDS, chúng ta cần tạo một Security Group cho các thực thể EC2 sẽ kết nối với cơ sở dữ liệu.

Thực hiện các bước sau để tạo một Security Group với các cổng cần thiết:

  1. Tại khung điều hướng EC2, cuộn xuống phần Security. Nhấp vào Security Groups.

  2. Nhấp vào nút Create security group.

Create a Security Group

  1. Trong phần Basic details:

    • Security group name: ec2-sg
    • Cung cấp một Description (Mô tả) ý nghĩa: Security group for EC2 instances connecting to RDS
    • Chọn VPC mà bạn đã tạo ở bước trước đó. Create a Security Group
  2. Trong phần Inbound rules, nhấp Add rule để cấu hình các quyền truy cập sau:

    • Thêm quy tắc cho SSH (cổng 22) với Source: My IP để truy cập quản trị an toàn.
    • Thêm quy tắc cho HTTP (cổng 80) với Source: Anywhere-IPv4 cho lưu lượng web.
    • Thêm quy tắc cho HTTPS (cổng 443) với Source: Anywhere-IPv4 cho lưu lượng web bảo mật.
    • Thêm quy tắc cho Custom TCP (cổng 5000) với Source: Anywhere-IPv4 cho máy chủ web.

    🔒 Lưu ý về bảo mật: Đối với môi trường thực tế (production), hãy giới hạn các địa chỉ IP nguồn cho truy cập SSH chỉ trong các dải IP đáng tin cậy thay vì cho phép truy cập từ mọi nơi (0.0.0.0/0). Create a Security Group

  3. Xem lại các cài đặt và nhấp Create security group. Create a Security Group

  4. Sau khi được tạo, Security Group mới sẽ xuất hiện trong danh sách. Hãy ghi lại Security Group ID vì bạn sẽ cần nó khi khởi tạo các thực thể EC2. Create a Security Group

💡 Mẹo chuyên nghiệp: Bạn có thể sửa đổi các quy tắc của Security Group bất kỳ lúc nào và các thay đổi sẽ có hiệu lực ngay lập tức. Điều này cho phép bạn điều chỉnh kiểm soát truy cập khi yêu cầu ứng dụng thay đổi.

⚠️ Cảnh báo: Security Group có tính chất stateful (có trạng thái) — nếu bạn cho phép lưu lượng vào trên một cổng cụ thể, lưu lượng phản hồi tương ứng đi ra sẽ tự động được cho phép, bất kể các quy tắc outbound.

Tạo Security Group cho Amazon RDS

ℹ️ Thông tin: Security Group đóng vai trò là tường lửa ảo cho các thực thể Amazon RDS của bạn, kiểm soát lưu lượng truy cập ở cấp độ thực thể. Mỗi Security Group chứa một tập hợp các quy tắc lọc lưu lượng dựa trên giao thức, cổng và nguồn hoặc đích.

Thực hiện các bước sau để tạo một Security Group chuyên dụng cho thực thể cơ sở dữ liệu Amazon RDS của bạn:

  1. Tại khung điều hướng EC2, cuộn xuống phần Security. Nhấp vào Security Groups. Create a Security Group

  2. Trong phần Basic details:

    • Security group name: nhập rds-sg
    • Description: Security group for RDS MySQL database instances
    • Chọn VPC bạn đã tạo trước đó. Create a Security Group
  3. Cấu hình Inbound rules để kiểm soát nguồn lưu lượng nào có thể truy cập cơ sở dữ liệu của bạn:

    • Chọn MySQL/Aurora từ danh sách thả xuống Type.
    • Tại mục Source, chọn Security Group của các thực thể EC2 cần kết nối tới cơ sở dữ liệu (ec2-sg).

🔒 Lưu ý về bảo mật: Việc chỉ định Security Group của EC2 làm nguồn (thay vì một dải IP) đảm bảo rằng chỉ những thực thể thuộc Security Group đó mới có thể kết nối với cơ sở dữ liệu của bạn, giúp tăng cường tính bảo mật. Create a Security Group

  1. Xem lại các cài đặt và nhấp Create Security Group để hoàn tất quá trình. Create a Security Group

💡 Mẹo chuyên nghiệp: Tương tự, bạn có thể điều chỉnh các quy tắc này bất cứ lúc nào để phù hợp với sự phát triển của hệ thống.

⚠️ Cảnh báo: Việc sử dụng các Security Group riêng biệt cho thực thể RDS và thực thể EC2 là một thực hành tốt nhất (best practice). Sự tách biệt này giúp cách ly bảo mật tốt hơn và dễ dàng quản lý quyền hạn cho từng loại tài nguyên một cách độc lập.

⚠️ Cảnh báo: Security Group có tính chất stateful — nếu bạn cho phép lưu lượng vào trên một cổng cụ thể, lưu lượng phản hồi tương ứng đi ra sẽ tự động được cho phép.