Về cơ bản, bạn không được cho phép public access vào RDS, nhưng sẽ có trường hợp một người dùng IAM vô tình thiết lập public access, vì thế chúng tôi sẽ hướng dẫn bạn cách thiết lập để có thể tự động sửa chữa vấn đề này.

Hướng dẫn tự động sửa chữa trạng thái public access

Bước 1: Kiểm tra trạng thái ban đầu

Đầu tiên, có thể xác nhận rằng trạng thái ban đầu trước khi sửa chữa là [có thể public access].

IMG_256

Bước 2: Tạo IAM role

Đầu tiên, tạo một JSON policy như sau:

{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "VisualEditor0",
"Effect": "Allow",
"Action": [
"ssm:StartAutomationExecution",
"ssm:GetAutomationExecution",
"rds:DescribeDBInstances",
"rds:ModifyDBInstance"
],
"Resource": "*"
}
}

Tiếp theo, sử dụng policy ở trên để tạo IAM role.

Nếu tạo bằng cách thủ công, bạn không thể chọn SSM làm trusted service, vì vậy hãy tạo với EC2, sau đó thay đổi phần được đánh dấu màu đỏ từ ec2 sang ssm.

IMG_256

Ngoài ra, hãy sao chép ARN của IAM role đã tạo để sử dụng trong phần cài đặt hành động sửa chữa.

Bước 3: Tạo Config rule

Sau khi chọn dịch vụ Config, nhấp vào [rule] và chọn [Thêm rule].

Với rule, chọn managed rule [rds-instance-public-access-check].

IMG_256

Trên trang tiếp theo, nếu bạn không muốn thực hiện cài đặt cụ thể nào, hãy để mặc định.

IMG_256

Sau khi tạo, Config rule sẽ hoạt động.

Ở đây, chúng tôi đã tạo một public RDS instance, nên có thể xác nhận rằng nó là tài nguyên không phù hợp đã được phát hiện.

IMG_256

Bước 4: Thiết lập hành động tự động sửa chữa cho Config rule

Tại nút action ở góc trên bên phải chọn quản lý sửa chữa.

IMG_256

Trong phương pháp sửa chữa, chọn [tự động sửa chữa]

Trong hành động sửa chữa, chọn [AWSConfigRemediation-DisablePublicAccessToRDSInstance]

IMG_256

Chọn ‘DbiResourceId’ cho Resource ID parameter.

Sau đó, nhập ARN của IAM role đã tạo ở trên vào [AutomationAssumeRole].

IMG_256

Đến đây, cài đặt hành động sửa chữa đã hoàn tất.

Bước 5: Kiểm tra kết quả thực hiện

Khi hành động sửa chữa được thực hiện, quyền truy cập được thay đổi thành ‘không public access’.

IMG_256

Ngoài ra, nếu thiết lập thông báo bằng EventBridge, bạn sẽ nhận được thông báo như bên dưới.

Bạn có thể xác nhận rằng trạng thái đã thay đổi từ NOT_APPLICABLE sang COMPLIANT. 

IMG_256

Kết luận

Qua bài viết này, Sunny Cloud đã giúp bạn thiết lập cho phép tự động sửa chữa của Config, và thử nghiệm để tự động sửa chữa việc cài đặt RDS public access.

Config không chỉ phát hiện mà còn có thể nâng cao mức độ bảo mật bằng cách thực hiện hành động sửa chữa. Mặc dù có thể phát hiện bằng Security Hub, nhưng nếu thiết lập tự động sửa chữa với Config sẽ rất thuận tiện vì loại bỏ được việc sửa chữa thủ công.

Tham khảo: RDSのパブリックアクセス可能な状態をConfigで自動修復する | SunnyCloud