คุณเคยอยู่ในสถานการณ์ที่ลืมรหัสผ่าน Windows หรือเพื่อนร่วมทีมที่สร้าง Amazon EC2 instance ไปลาป่วยหรือไปธุระต่างประเทศ และคุณไม่รู้รหัสผ่าน แต่อยากทำการเปลี่ยนแปลงบางอย่างในอีกไม่กี่นาที? ฉันเดาว่าเราทุกคนเคยเผชิญกับความท้าทายนี้ สิ่งที่แย่คือ คุณยังไม่มี key pair เพื่อถอดรหัสรหัสผ่านที่มีอยู่ มาหาวิธีแก้ไขกัน
ในบทความนี้ เราจะแสดงวิธีรีเซ็ตรหัสผ่าน Windows บน Amazon EC2 instance โดยใช้ AWS System Manager มีอีกวิธีหนึ่งคือการใช้ automation แต่ไม่อยู่ในบทความนี้ AWS System Manager เป็นบริการจัดการที่ช่วยให้คุณจัดการ Amazon EC2 instance ของคุณได้ เพื่อรีเซ็ตรหัสผ่านผ่าน AWS System Manager จำเป็นต้องรัน AWS Systems Manager Agent (SSM Agent) บน Amazon EC2 instance โปรดทราบว่า Agent มาติดตั้งไว้ล่วงหน้าบน Windows Server 2016 และ Windows Server 2019 instances
ขั้นตอนนี้ประกอบด้วย 3 ขั้นตอน รวมถึง:
- ขั้นตอนที่ 1: สร้าง IAM role
- ขั้นตอนที่ 2: แนบ IAM role เข้ากับ Amazon EC2 instance ที่กำลังทำงาน
- ขั้นตอนที่ 3: รีเซ็ตรหัสผ่านโดยใช้ AWS System Manager
ขั้นตอนที่ 1: สร้าง IAM Role
ในขั้นตอนแรก เราจะสร้าง IAM role IAM role เป็นเอนทิตีที่กำหนดชุดสิทธิ์สำหรับการสร้างคำขอบริการ AWS เนื่องจากเราจะดำเนินการขอรีเซ็ตรหัสผ่าน IAM role จึงต้องมีสิทธิ์เพียงพอ
- เข้าสู่ AWS Management Console
- พิมพ์ IAM ภายใต้ Find Services และรันมัน

- คลิก Roles ภายใต้ Access Management ภายใต้แถบนำทาง และจากนั้นคลิก Create role

- เลือก AWS service เป็น trusted entity และเลือก EC2 ภายใต้ Or select a service to view its use cases และจากนั้นเลือก EC2 Role for AWS System Manager ตามที่แสดงในภาพด้านล่าง เมื่อคุณทำเช่นนั้นแล้ว ให้คลิก Next: Permissions

- ตรวจสอบ ว่า role AmazonEC2RoleforSSM อยู่ในรายการ และจากนั้นคลิก Next: Tags

- สร้างคีย์เพื่อ role ของคุณ และจากนั้นคลิก Next: Review Tags อาจรวมข้อมูลผู้ใช้ เช่น ที่อยู่อีเมล หรืออาจเป็นคำอธิบาย เช่น ตำแหน่งงาน คุณสามารถใช้ tags เพื่อจัดระเบียบ ติดตาม หรือควบคุมการเข้าถึงสำหรับ role นี้ เนื่องจากเป็นเรื่องที่ไม่บังคับ เราจะข้ามไป

- พิมพ์ ชื่อสำหรับ role ใหม่ และตรวจสอบการตั้งค่า หากทุกอย่างถูกต้อง ให้คลิก Create role คุณจะต้องใช้ role นี้ ในกรณีของเรา role ใหม่ชื่อว่า

- คลิก ที่ role ที่คุณเพิ่งสร้าง
- คลิก Add inline policy
- เลือก JSON
- ลบ โค้ดที่มีอยู่ และ พิมพ์ โค้ด JSON ต่อไปนี้:
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "ssm:PutParameter" ], "Resource": [ "arn:aws:ssm:*:*:parameter/EC2Rescue/Passwords/i-*" ] } ] }

- คลิก Review Policy
- พิมพ์ ชื่อของ policy และคำอธิบาย และจากนั้นคลิก Create Policy ในกรณีของเรา ชื่อคือ ParameterStore

ขั้นตอนที่ 2: แนบ IAM role เข้ากับ instance ที่กำลังทำงาน
ในขั้นตอนที่สอง เราจะกำหนด IAM role ที่สร้างใหม่ให้กับ Amazon EC2 instance ที่มีอยู่ซึ่งเราต้องการรีเซ็ตรหัสผ่าน Windows
- ในเมนูหลัก คลิก Services
- ภายใต้ Compute คลิก EC2
- คลิก Running instances
- คลิกขวาที่ instance ที่กำลังทำงาน และจากนั้นเลือก Instance Settings > Attach/Replace IAM Role

- ภายใต้ Attach/Replace IAM Role ให้เลือก IAM role และคลิก Apply ตามที่คุณเห็น เราเลือก IAM Role ที่เราสร้างในขั้นตอนที่ 1: RoleforSSM

- คุณแนบ IAM role เข้ากับ instance สำเร็จแล้ว คลิก Close กระบวนการนี้อาจใช้เวลาสูงสุด 5 นาที สำหรับ instance ในการลงทะเบียนตัวเองกับบริการ AWS System Manager

ขั้นตอนที่ 3: รีเซ็ตรหัสผ่านโดยใช้ AWS System Manager
เมื่อเราสร้าง IAM role และกำหนดให้กับ Amazon EC2 instance แล้ว การรีเซ็ตรหัสผ่านบนเครื่อง Windows โดยใช้ AWS System Manager จึงถึงเวลาแล้ว
- ไปที่ AWS System Manager โดยคลิกที่ลิงก์นี้ จำเป็นต้องมีการล็อกอิน
- คลิก Get Started with System Manager
- คลิก Run Command ภายใต้ Instances & Nodes ในแถบนำทาง

- คลิก Run a Command ภายใต้ Manage your instance ด้านขวาของหน้าต่าง
- เลือก AWSSupport-RunEC2RescueForWindowsTool ภายใต้ Command document คุณสามารถพิมพ์ในช่องค้นหาและกด Enter

- ภายใต้ Targets คลิก Choose instances manually และจากนั้น เลือก instance ของคุณ
- คลิก Run ที่มุมขวาล่างของหน้าต่าง
- คำสั่งถูกส่งสำเร็จ ตามที่แสดงในภาพด้านล่าง คุณสามารถติดตามความคืบหน้าของคำสั่งที่ดำเนินการภายใต้ Status

- ภายใต้ Target and outputs ให้เลือก instance และจากนั้นคลิก View output ตามที่คุณเห็นที่นี่ คำสั่งถูกดำเนินการสำเร็จ ขยาย Step 2 – Output

- คัดลอก URL ที่กล่าวถึงในส่วน output และเปิดในแท็บใหม่
- คลิก Show ภายใต้ Value เพื่อดูรหัสผ่านใหม่

เพื่อวัตถุประสงค์ด้านความปลอดภัย เราขอแนะนำให้คุณล็อกอินเข้าสู่ Windows และเปลี่ยนรหัสผ่าน