Step-by-Step Guide to Setting Up a Bastion Host on AWS


Để tiếp nối series về chủ đề Bastion_host trên AWS ở phần trước, hôm nay mình sẽ hướng dẫn các bạn các bước để triển khai bastion_host server trên AWS.
Chuẩn bị
Đầu tiên, các bạn cần chuẩn bị tài khoản IAM user có quyền Administrator.
Các bước thực hiện
Tạo IAM role
- Mục đích của việc tạo IAM role là để cho phép người quản trị viên có quyền truy cập tới Bastion-host server thông qua tính năng Sessions Manager bên trong Systems Manager. Mà chúng ta không cần mở port 22 ssh trên con Bastion-host.
Click “Create role”
Tiếp đến tại “Trusted entity type” chúng ta chọn “AWS service” sau đó chọn "Service or use case “EC2” click “Next”.
Tại mục Permission policies gõ “AmazonSSM” sau đó chọn chính sách “AmazonSSMManagedInstanceCore” và nhấn “Next”
Role name: Allows-SSM-EC2-Role
Review về Policy name sau đó click “Create Role” để hoàn tất việc tạo.
Confirm về Role đã được tạo.
Tạo security group
Đầu tiên mình sẽ tạo Security group cho Bastion-host
Click “Create security group” trên giao diện.
Security group name: Bastion_host_SG
Description: This is security group for bastion_host
VPC: VPC default.
Inbound rule: ==> Để trống ( Vì chúng ta sẽ kết nối thông qua Sessions Manager)
Click “Create security group”
Tiếp theo chúng ta sẽ tạo security group cho EC2-Private với Security group name “EC2-Private-SG” và Inbound rules chúng ta sẽ allows traffic từ security group của Bastion-Host.
Confirm Security group
Tạo EC2 instances
Bước kế tiếp chúng ta sẽ tạo 2 con server “Bastion-Host-SV” và “EC2-Private”
Click “Launch instance” trên console.
Name and tags: Bastion_Host_SV
Chúng ta sử dung Amazon Linux 2023 OS nằm trong gói Free tier
Instances type: t2.micro
Key pair name: AWS-SINGAPORE-KEY
VPC: Chúng ta sẽ sử dụng VPC default
Click chọn “Select existing security group” sau đó chọn “Bastion_host_SG” mà chúng ta đã tạo trước đó.
Tại mục “Advanced details” ở phần “IAM instance profile” chọn “Allows-SSH-EC2-Role” mà đã được tạo trước đó.
Sau đó click “Launch instance”
Tiếp theo, chúng ta sẽ tạo server thứ 2.
Name and tags: EC2-Private
Operation System: Amazon Linux 2023
Instance type: t2.micro
Key pair name: AWS-SINGAPORE-KEY
VPC: VPC default
Click “Select existing security group” và chọn “EC2-Private-SG” sau đó click “Launch instance”
Quá trình khởi động của Server mất tầm từ 2-3 phút.
Kết nối tới Bastion-host.
Tiếp đến chúng ta sẽ kết nối tới Bastion-host.
Tại giao diện Instances click “Bastion_Host_SV” sau đó click “Connect”
- Chọn “Session Manager” sau đó click “Connect”
- Truy cập thành công tới giao diện của Bastion-host, thực hiện các lệnh chuyển đổi user
sudo su ec2-user
whoami
Tiếp đến chúng ta sẽ upload file AWS-SINGAPORE-KEY từ máy local của chúng ta lên Bastion-Host-SV.
Sau đó thực hiện lênh chmod 400 AWS-SINGAPORE-KEY.pem.
chmod 400 AWS-SINGAPORE-KEY.pem
ls -la
Tiếp đến chúng ta chuyển sang giao diện Instances chọn “EC2-Private” sau đó chọn “Connect”
Copy giá trị như trong ảnh.
Sau đó, quay lại giao diện terminal của Bastion-host thực hiện lệnh phía dưới.
sudo ssh -i "AWS-SINGAPORE-KEY.pem" ec2-user@ec2-54-151-153-232.ap-southeast-1.compute.amazonaws.com
Gõ “yes” để tiếp tục kết nối
Khi hiện địa chỉ IP private của EC2-Private là chúng ta đã kết nối thành công thông qua Bastion-host.
Ok vừa rồi mình đã hướng dẫn các bạn các bước để triển khai Bastion-Host trên AWS. Chúc các bạn triển khai thành công.
Thank you so much!
Subscribe to my newsletter
Read articles from Nguyen Sang directly inside your inbox. Subscribe to the newsletter, and don't miss out.
Written by

Nguyen Sang
Nguyen Sang
AWS projects for beginner.