[AWS] Connect instance EC2 voi Session Manager

Hôm nay mình muốn giới thiệu đến các bạn một service của AWS đó là AWS System Manager Session Manager (gọi tắt là Session Manager đi cho gọn :D).

Tình huống đặt ra, giả sử bạn có con VPN, dùng để connect vào các instance ở subnet private, bỗng một ngày đẹp trời, con VPN lăn đùng ra chết rồi làm sao bạn SSH vào instance mình đây? 😐

Cách để giải quyết đó là hãy thiết lập một “backdoor” với SSM, mình có thể connect tới instance mà không cần thông qua SSH client nào hết. Cùng mình theo dõi nhé.

1. Cấu hình

Đầu tiên bạn phải tạo một EC2 IAM role với SSM policy cho EC2, để tạo một role bạn làm như sau:

Trong IAM >> Roles >> Create Role

Trong “Select type of trusted entity” >> Chọn AWS Service

Trong “Common use cases” >> Chọn EC2 >> Next: Permission

Tiếp đến, bạn search “AmazonEC2RoleforSSM” trong ô tìm kiếm, chọn role name vừa hiển thị.

Trong phần Add tags bạn bỏ qua và bấm tiếp Next: Review

Đặt tên cho Role name và bấm vào Create role.

Hoàn tất tạo role rồi đấy, buớc tiếp theo từ AWS console, bạn vào EC2 >> Action >> Security >> Modify IAM role

Tại IAM role chọn vào role mình đã tạo khi nãy >> save lại là xong.

Bước cuối, bây giờ bạn login vào instance vừa được add role, restart lại ssm-agent service:

systemctl restart amazon-ssm-agent

Truờng hợp bạn sử dụng Centos 7, bạn cần phải cài package này vào, bạn có thể làm như sau:

wget https://s3.ap-southeast-1.amazonaws.com/amazon-ssm-ap-southeast-1/latest/linux_amd64/amazon-ssm-agent.rpm

rpm -ivh amazon-ssm-agent.rpm

systemctl start amazon-ssm-agent

systemctl enable amazon-ssm-agent

Phần mình bôi đậm chính là region, instance bạn đang ở region nào thì change lại cho chính xác nhé. Mình hướng dẫn trên CenOS, với Debian bạn làm tương tự nhé. Các bạn có thể tham khảo link sau:

https://docs.aws.amazon.com/systems-manager/latest/userguide/sysman-manual-agent-install.html

2. Kiểm tra

Bây giờ quay trở lại giao diện của EC2 >> chọn instance, phía góc phải trên cùng bạn bấm vào Connect 

AWS mở ra cho bạn một console mới với giao diện dòng lệnh là đã thành công rồi đó. 🙂

3. Tổng kết

Bài hướng dẫn Connect instance EC2 voi Session Manager tới đây là hoàn tất rồi, cám ơn các bạn đã theo dõi và hy vọng giúp ích được phần nào cho mọi người. Hẹn gặp ở các bài viết sau.