[AWS Technical Support Note] วิธีรับมือหากไม่สามารถเชื่อมต่อ SSH กับ EC2 (Amazon Linux 2023) จาก terminal software ได้

จำเป็นต้องกำหนดค่า terminal software ที่รองรับ rsa-sha2-256/512 (RSA/SHA2) เพื่อตั้งค่าใช้งาน rsa-sha2-256/512 หรืออนุญาต ssh-rsa ในการตั้งค่า OpenSSH ที่ฝั่ง instance

ปัญหาที่เกิดขึ้น

หลังจากสร้าง instance ด้วย Amazon Linux 2023 แล้วก็ลองเชื่อมต่อ SSH ไปยัง EC2 instance ด้วย terminal software แต่ไม่สามารถเชื่อมต่อได้ ต้องแก้ไขอย่างไร

วิธีแก้ปัญหา

จาก Release Notes ของ OpenSSH ระบุว่า ตั้งแต่ OpenSSH 8.8 เป็นต้นไป การเชื่อมต่อด้วย ssh-rsa(RSA/SHA1)จะถูกปิดการใช้งานในค่าเริ่มต้น

This release disables RSA signatures using the SHA-1 hash algorithm by default.

ดังนั้นจึงจำเป็นต้องกำหนดค่า terminal software ที่รองรับ rsa-sha2-256/512 (RSA/SHA2) เพื่อตั้งค่าใช้งาน rsa-sha2-256/512 หรืออนุญาต ssh-rsa ในการตั้งค่า OpenSSH ที่ฝั่ง instance

ตรวจสอบข้อผิดพลาด

สภาพแวดล้อมที่เตรียมสำหรับการทดสอบในครั้งนี้มีรายละเอียดนี้

AMI:al2023-ami-2023.1.20230725.0-kernel-6.1-x86_64
terminal software:RLogin (x64) Version 2.28.4

จากนั้นเชื่อมต่อโดยสภาพแวดล้อมข้างต้นด้วยค่ามาตรฐานของ RLogin

จะแสดงข้อผิดพลาดขึ้น โดยจะระบุให้เปลี่ยนการตั้งค่าเป็น rsa-sha2-256/512

เปลี่ยนการตั้งค่า terminal software

เปลี่ยนการตั้งค่า RLogin ให้เชื่อมต่อด้วย rsa-sha2-256/512

  1. ในหน้าจอ RLogin ที่หัวข้อ [protocol] > [RSA2 authetication key signature method (only SHA1] จะแสดงตัวเลือกขึ้นมา
  2. เลือกที่ SHA2-512(หรือ SHA2-256)
  3. คลิกที่ปุ่ม [OK]

ทำการเชื่อมต่ออีกครั้ง

เมื่อทำการทดสอบอีกครั้งจะพบว่าสามารถเชื่อมต่อได้แล้ว

ตรวจสอบเวอร์ชั่นของ OpenSSH

หลังจากเชื่อมต่อได้แล้วมาลองตรวจสอบเวอร์ชั่นของ OpenSSH

$ ssh -V
OpenSSH_8.7p1, OpenSSL 3.0.8  7 Feb 2023

จะพบว่าถึงจะเป็นเวอร์ชั่นก่อน OpenSSH 8.8 แต่การเชื่อมต่อด้วย ssh-rsa จะถูกปิดใช้งานแล้วใน Amazon Linux 2023

โดยสามารถเพิ่มสิทธิ์ในการเชื่อมต่อได้ด้วยวิธีดังต่อไปนี้

วิธีอนุญาตการเชื่อมต่อกับ ssh-rsa(RSA/SHA1)

ใน

/etc/ssh/sshd_config

หากเพิ่มบรรทัดทางด้านล่างนี้เข้าไป

 PubkeyAcceptedAlgorithms=+ssh-rsa

ก็จะสามารถเชื่อมต่อได้ผ่าน ssh-rsa(RSA/SHA1)

※ในบางสภาพแวดล้อมอาจจะเป็น 「sshd_config」จึงอาจจะต้องเปลี่ยนตำแหน่งและชื่อของไฟล์การตั้งค่าตามสภาพแวดล้อม

สุดท้ายนี้

ครั้งนี้เป็นเหตุการณ์ที่เกิดขึ้นบน Amazon Linux 2023 แต่ก็มีโอกาสที่จะเกิดขึ้นได้ในระบบอื่นๆที่มีการอัปเดตของ OpenSSH

โดยยังสามารถเชื่อมต่อได้โดยการตั้งค่าอนุญาตให้กับ ssh-rsa
แต่อาจจะมีปัญหาด้านความปลอดภัย แนะนำให้พิจารณาเชื่อมต่อกับ rsa-sha2-256/512 จะดีกว่า

ปัจจุบัน terminal software บางตัวอาจยังไม่รองรับ rsa-sha2-256/512 ดังนั้นก่อนใช้งานแนะนำให้ตรวจสอบรายละเอียดอีกครั้ง

บทความอ้างอิง

บทความต้นฉบับ