SSH - ระบุผู้ใช้ที่ยังคงเข้าสู่ระบบโดยใช้รหัสผ่าน


32

ฉันมีเซิร์ฟเวอร์ Ubuntu Linux ที่อนุญาตให้ใช้การพิสูจน์ตัวตนด้วยรหัสผ่านสำหรับ SSH และฉันต้องการเปลี่ยนเป็นปุ่ม SSH เท่านั้นและปิดใช้งานการเข้าสู่ระบบด้วยรหัสผ่าน

ก่อนที่ฉันจะปิดใช้งานการเข้าสู่ระบบด้วยรหัสผ่านฉันจะทราบได้อย่างไรว่าผู้ใช้รายใดที่ยังคงใช้รหัสผ่านอยู่


Btw. ในขณะที่หลายคนไม่รู้ว่าคุณสามารถขอรหัสผ่านและรหัสผ่านเซิร์ฟเวอร์ มากขึ้นอีกนิดน่ารำคาญ แต่แน่นอนปลอดภัยมากเกินไปถ้าคุณทำอย่างนั้น ...
deviantfan

34
ปิดการใช้งานรหัสผ่านโดยไม่ต้องแจ้งให้ทราบล่วงหน้าและดูว่ามีคนกรีดร้องกี่คน
ทำเครื่องหมาย


@deviantfan มันจะปลอดภัยกว่าถ้าจะต้องใช้keyfile ที่ยาวกว่าแต่ก็ต้องใช้สคริปต์สักหน่อย
jpaugh

1
@deviantfan ฉันเอาประเด็นของคุณ แต่คุณสมมติว่ารหัสผ่านสำหรับคีย์ส่วนตัวนั้นแตกต่างจากรหัสสำหรับเซิร์ฟเวอร์ (ในขณะที่ฉันสมมติไฟล์กุญแจส่วนตัวที่มีรหัสผ่านฉันรู้ว่า.)
jpaugh

คำตอบ:


48

คุณไม่สามารถทำสิ่งนั้นได้อย่างน่าเชื่อถือ 100% แต่มีข้อบ่งชี้ที่แข็งแกร่งสองประการ:

  • ก่อนอื่นการมี.ssh/authorized_keysไฟล์เป็นคำใบ้ที่ผู้ใช้เตรียมไว้อย่างน้อยเพื่อใช้การเข้าสู่ระบบด้วยคีย์
  • ประการที่สองในไฟล์บันทึกการตรวจสอบสิทธิ์ ( /var/log/secureบน CentOS /var/log/auth.logบน Debian / Ubuntu) วิธีการรับรองความถูกต้องจะถูกบันทึกไว้:

    Sep 28 13:44:28 hostname sshd[12084]: Accepted publickey for sven
    

    VS

    Sep 28 13:47:36 hostname sshd[12698]: Accepted password for sven
    

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


โดย 'สแกน' ไฟล์บันทึกฉันคิดว่าคุณหมายถึงตัวเลือกที่เหมาะสมเช่นการใช้ grep หรือไม่ grep 'password' /var/log/ssh/sshd.log
djsmiley2k - CoW

8
@ djsmiley2k: ใช่แน่นอน หรือวิธีอื่นใดที่คุณชอบสำหรับงานนั้น
สเวน

ไม่ใช่วิธีแรกที่ขัดขวางโดยแนวทางปฏิบัติด้านความปลอดภัยที่เหมาะสมเช่นการ700อนุญาตใน.sshไดเรกทอรีของผู้ใช้และสควอชรูทบนโฮมไดเร็กตอรี่ที่เมาท์?
Ogre Psalm33

1
@ OgrePsalm33: คุณสามารถทำการค้นหานี้บนเซิร์ฟเวอร์ NFS ...
Sven

1
@R .. : คุณสามารถทำให้ NFS ปลอดภัยพอสมควรด้วย NFSv4 และ Kerberos (ซึ่งการเข้าสู่ระบบตามคีย์กรณีจะซับซ้อน) อื่น ๆ กว่าที่: ใช่ที่สำคัญตามการเข้าสู่ระบบการทำงานโดยไม่มีปัญหาใด ๆ เมื่อ~/.sshมีการตั้งค่า700และในรากแบนไดเรกทอรีบ้าน NFS authorized_keysดังนั้นจึงเห็นได้ชัดว่ามีรหัสผู้ใช้สวิทช์อย่างน้อยสำหรับคีย์ตามรับรองความถูกต้องในการอ่าน
สเวน

19

วิธีที่เร็วที่สุดคือปิดใช้งานและดูว่าใครเคาะประตูสำนักงานของคุณ;


6
นี่ไม่ใช่วิธีที่เร็วที่สุดเพราะไม่ใช่ผู้ใช้ทุกคนอาจเข้าสู่ระบบทุกวันในขณะที่บันทึกสามารถแสดงได้อย่างชัดเจนเมื่อมีคนลงชื่อเข้าใช้ดังนั้นพวกเขาจึงให้ผลทันที
Ferrybig

3
นี่เป็นวิธีที่ช้าที่สุด คนเข้าสู่ระบบเซิร์ฟเวอร์เท่านั้นหากแอปพลิเคชันของพวกเขาไม่ทำงาน อาจใช้เวลาหลายปีกว่าจะเกิดขึ้น
Navin

@pete you are the top :)
c4f4t0r
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.