Phần tiếp theo về EC2 services, ta đi cùng tìm hiểu về Security Groups, một dịch vụ tường lửa ảo của Amazon Web Service cung cấp cho EC2 instances. Hãy cùng xem xem dịch vụ này là gì, hoạt động ra sao và giúp ích gì cho việc bảo mật của ec2 Instance.
Định nghĩa về Security Groups
Security Groups là dịch vụ tạo ra một lớp tường lửa để điều khiển các truy cập vào hoặc ra của EC2 instance. Khi khởi tạo một instance, ta có thể gán một hoặc nhiều Security Groups cho instance đó. Với mỗi Security Groups, ta có thể tạo, tinh chỉnh các rule để kiểm soát truy cập đến hoặc đi phù hợp với mục đích sử dụng.
Security Group Rules
Rule của Security Group cho phép ta lọc lưu lượng truy cập dựa trên thành phần cổng (port number) và giao thức (protocol). Các rule trong Security Group được dùng để lọc traffic sẽ được chia làm 2 bảng : inbound và outbound . Với ‘Inbound‘ là các rule tường lửa lọc chiều traffic đi vào EC2 Instance. Còn ‘Outbound‘ là các rule tường lửa lọc chiều traffic đi ra từ EC2 Instance.
Security groups có một số đặc điểm sau:
- Mặc định Security Group cho phép mọi truy cập ra ngoài.
- Rule của Security Group chỉ có thể cấp quyền cho phép truy cập, không thể cấp quyền từ chối truy cập
- Security groups là stateful firewall – có nghĩa rằng nếu ta gửi yêu cầu từ instance của mình lưu lượng phản hồi cho yêu cầu đó sẽ được phép đi vào bất kể ta tùy chỉnh rule ra sao.
- Ta có thể thêm, sửa hay xóa rule của Security groups bất cứ lúc nào, thời điểm nào. Thay đổi sẽ tự động được áp dụng cho các instance mà ta gán Security groups cho nó
- Khi ta gán nhiều Security groups tới một 1 instance, Các luật từ mỗi Security groups sẽ được tổng hợp để ra 1 tập hợp các luật phù hợp. AWS sẽ dựa vào đó để xác định là có được phép truy cập không.
Mỗi rule của Security Group sẽ bao gồm 5 phần: ‘Type’, ‘Protocol’, ‘Port Range’, ‘Source’ và ‘Description‘ áp dụng cho cả 2 bảng ‘Inbound‘ và ‘Outbound‘.
- Type: một danh sách các giao thức dịch vụ phổ biến (well-known port ) sẽ được hiển thị để ta có thể lựa chọn nhanh chóng như SSH, RDP, HTTP…. Tuy nhiên, ta cũng có thể tùy chỉnh những thông tin giao thức cần mở rule. Ví dụ: ta chỉ cho phép một vài địa cố định có quyền truy cập SSH vào instance.
- Protocol: thông thường phần này sẽ bị disable nếu ta lựa chọn thông tin giao thức phổ biến ở phần ‘Type’. Còn nếu lựa chọn việc tinh chỉnh (custom) thì ta có thể chỉ định giao thức TCP hoặc UDP, ICMP…
- Port Range: Đây là nơi chỉ định một hoặc một dải port mong muốn lọc traffic. Ta chỉ có thể tùy chỉnh khi lựa chọn một số Type custom. Nếu chọn custom rule thì ta sẽ được chỉnh, còn chọn Type giao thức đã định sẵn thì không được.
- Source: Ta có thể chỉ định giá trị dãy mạng subnet hoặc một địa chỉ IP cụ thể. Muốn chỉ định tất cả các Ip đều được phép truy cập thì ta lựa chọn giá trị Anywhere tương ứng với (0.0.0.0/0). Nếu muốn chỉ định IP của mạng đang dùng hiện tại, ta lựa chọn giá trị My IP
- Description: phần này dùng để note lại thông tin miêu tả rule được tạo ra cho mục đích gì.
Security Group mặc định
Security Group mặc định có tên là “default” và được gán 1 ID định danh duy nhất bởi AWS. Ta có thể thêm hoặc xoá bất kì rule nào trong Security Group default Rule mặc định của Security Group default là :
- Cho phép tất cả traffic ngoài (inbound traffic) vào Instance.
- Cho phép tất cả traffic trong (outbound traffic) Instnace đi ra.
Security Group tuỳ biến (custom)
Security Group tùy biến là những Security Group được khởi tạo thêm bởi người dùng. Khi ta khởi tạo một Security Groups thì cần lưu ý các đặc điểm sau:
- Phải có thông tin tên Security Group.
- Trong một mạng network EC2-VPC thì Security Group phải có tên độc lập duy nhất không trùng lắp.
- Rule mặc định chiều inbound traffic: cấm tất cả traffic chiều vào.
- Rule mặc định chiều outbound traffic: cho phép tất cả traffic chiều ra.
Tổng kết lại, Security Group là một bức tường bảo mật rất tốt trong việc quản lý lưu lượng vào ra của EC2 Instance. Việc khởi tạo, sử dụng nó cho các EC2 instance khá là dễ dàng bằng cách tạo ra các quy tắc (rule) cho từng Security Group. Hy vọng rằng những kiến thức ở bài Tìm hiểu về Security Groups này sẽ giúp ích phần nào trong việc bảo mật các hệ thống instance của mọi người.
Tham khảo thêm tại:
- https://docs.aws.amazon.com/vpc/latest/userguide/VPC_SecurityGroups.html
- https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-security-groups.html