ผู้ใช้ที่เข้าสู่ระบบบนเซิร์ฟเวอร์ Linux ของฉันควรจะสามารถ ssh ไปยังเครื่องระยะไกลเฉพาะด้วยบัญชีเริ่มต้น การรับรองความถูกต้องบนเครื่องระยะไกลใช้รหัสสาธารณะดังนั้นบนเซิร์ฟเวอร์จึงมีรหัสส่วนตัวที่เกี่ยวข้อง
ฉันไม่ต้องการให้ผู้ใช้เซิร์ฟเวอร์อ่านรหัสส่วนตัวได้จริง โดยพื้นฐานแล้วความจริงที่ว่าพวกเขามีสิทธิ์เข้าถึงเซิร์ฟเวอร์จะอนุญาตให้ ssh ถูกต้องและการลบออกจากเซิร์ฟเวอร์ก็ควรไม่อนุญาตการเชื่อมต่อกับเครื่องระยะไกล
ฉันจะอนุญาตให้ผู้ใช้เปิดการเชื่อมต่อ ssh โดยไม่ให้สิทธิ์การเข้าถึงแบบอ่านแก่ไพรเวตคีย์ได้อย่างไร?
ความคิดของฉันจนถึงตอนนี้: เห็นได้ชัดว่าปฏิบัติการ ssh จะต้องสามารถอ่านคีย์ส่วนตัวดังนั้นจึงต้องทำงานภายใต้ผู้ใช้รายอื่นบนเซิร์ฟเวอร์ที่มีสิทธิ์เหล่านั้น เมื่อสร้างการเชื่อมต่อ ssh แล้วฉันสามารถ "ส่งต่อ" ไปยังผู้ใช้เพื่อให้เขาสามารถป้อนคำสั่งและโต้ตอบกับเครื่องระยะไกล
- นี่เป็นวิธีที่ดีหรือไม่?
- ฉันจะใช้การส่งต่อได้อย่างไร
- ผู้ใช้จะเริ่มต้นการเชื่อมต่อได้อย่างไร (นั่นคือการดำเนินการของ ssh โดยผู้ใช้ที่มีสิทธิ์อ่านบนคีย์)
- มีช่องโหว่ความปลอดภัยหรือไม่? - หากผู้ใช้สามารถรัน ssh ในฐานะผู้ใช้รายอื่นพวกเขาสามารถทำทุกสิ่งที่ผู้ใช้รายอื่นสามารถทำได้ (รวมถึงการอ่านคีย์ส่วนตัว) หรือไม่
~/.ssh/authorized_keys
ไฟล์หรือไม่?