ฉันต้องการใช้ logkeys เพื่อบันทึกการกดแป้นในกล่อง SSH'able Linux Logkeys จะดักจับอุปกรณ์นี้สามารถใช้สำหรับการเข้าถึง SSH ได้หรือไม่? เซสชัน SSH ใช้อุปกรณ์หรือไม่ หรือ SSH ข้ามระดับการป้อนข้อมูลนี้หรือไม่
ฉันต้องการใช้ logkeys เพื่อบันทึกการกดแป้นในกล่อง SSH'able Linux Logkeys จะดักจับอุปกรณ์นี้สามารถใช้สำหรับการเข้าถึง SSH ได้หรือไม่? เซสชัน SSH ใช้อุปกรณ์หรือไม่ หรือ SSH ข้ามระดับการป้อนข้อมูลนี้หรือไม่
คำตอบ:
logkeysจะบันทึกเฉพาะการกดแป้นพิมพ์ของแป้นพิมพ์ (USB หรืออนุกรม) ที่เชื่อมต่อกับเครื่องที่logkeysกำลังทำงาน
SSH daemon รับอินพุตผ่านการเชื่อมต่อ TCP ไม่ใช่จากอุปกรณ์ที่มีลักษณะเหมือนแป้นพิมพ์ อุปกรณ์sshdใช้เป็นขั้วหลอก มันทำงานในระดับที่แตกต่างจากอุปกรณ์แป้นพิมพ์และอยู่ระหว่างsshdและโปรแกรมที่กำลังทำงาน (ไม่ใช่ระหว่างsshdและผู้ใช้)
logkeysไม่ทำงานกับเทอร์มินัลดังนั้นคุณต้องใช้วิธีแก้ไขปัญหาอื่น มันจะค่อนข้าง "ตัวบันทึกเซสชัน / ตัวบันทึก" เนื่องจากไม่บันทึกการกดแป้นพิมพ์โดยตรงจากแป้นพิมพ์
authorized_keysคุณสามารถเรียกใช้ wrapper การบันทึกเซสชันแทนการเรียกใช้เชลล์หรือคำสั่งโดยตรง มันสามารถระบุได้ในไฟล์~/.ssh/authorized_keysโดยใช้commnadคำสั่ง ผู้ใช้จะต้องใช้การตรวจสอบความถูกต้องที่สำคัญสำหรับการทำงาน มันจะไม่ทำงานกับการตรวจสอบรหัสผ่าน ตัวอย่างสคริปต์ที่เตรียมไว้มีให้ที่นี่: การบันทึกเซสชัน SSH
แทนที่จะเป็นเชลล์ของผู้ใช้คุณสามารถเรียกใช้ wrapper การบันทึกเซสชัน มีหนึ่ง: rootsh (ฟังก์ชั่นพื้นฐานคล้ายกับเสื้อคลุมด้านบน) ตัวอย่างเช่นคุณสามารถแทนที่เปลือกเข้าสู่ระบบของผู้ใช้
teeจะบันทึกเฉพาะสิ่งที่เขียนไปยังเทอร์มินัล (รวมถึงการกดแป้น echoed) เป็นทางเลือกที่ดีกว่าอาจเป็นscript -c "ssh -p 12345 userid@server"เพราะเครื่องมือนี้มีตัวเลือกมากขึ้น man scriptดู --- นอกจากนี้เมื่อฉันเห็นว่าคุณสามารถจับภาพบนไคลเอนต์ - logkeysบนเครื่องไคลเอนต์ควรทำงาน