เหตุใดผู้ใช้ระบบบางรายจึงมี / usr / bin / false เป็นเชลล์


คำตอบ:


73

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

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

หากคุณดู/etc/passwdไฟล์อย่างใกล้ชิดคุณจะพบ/bin/falseคำสั่งเป็นเชลล์ล็อกอินสำหรับบัญชีระบบจำนวนมาก จริงเท็จไม่ได้เป็นเปลือก แต่คำสั่งที่ไม่ทำอะไรเลยแล้วยังมีลงท้ายด้วยรหัสสถานะที่ส่งสัญญาณความผิดพลาด ผลลัพธ์ที่ได้นั้นง่ายมาก ผู้ใช้เข้าสู่ระบบและเห็นพรอมต์การเข้าสู่ระบบอีกครั้งทันที



5
ทราบว่าเป็นการประชุมเท่านั้น ฉันสามารถติดตั้งเปลือกของตัวเองเป็น/random/path/foo-shellและตั้งเป็นค่าเริ่มต้นของฉัน/etc/passwdมา มีไม่มีการรับประกัน
quixotic

16

มีผู้ใช้เหล่านี้เป็นเจ้าของไฟล์หรือกระบวนการที่เฉพาะเจาะจงและไม่ได้มีวัตถุประสงค์เพื่อเป็นบัญชีเข้าสู่ระบบ

หากค่าของฟิลด์ "shell" ไม่แสดงรายการ/etc/shellsโปรแกรมเช่น daemon FTP ไม่อนุญาตให้เข้าถึง

นอกจากนี้สำหรับโปรแกรมที่ไม่ได้ตรวจสอบ/etc/shellsเราใช้ประโยชน์จากความจริงที่/bin/falseจะส่งคืนทันทีดังนั้นการปฏิเสธเชลล์แบบโต้ตอบ


7

ผู้ใช้บางคนมี / usr / bin / false คนอื่นมี / sbin / nologin หรือแม้กระทั่ง / usr / bin / passwd พวกเขาอาจเป็นผู้ใช้ระบบที่จำเป็นในการแยกสิทธิ์โปรแกรมหรือผู้ใช้ที่เป็นมนุษย์ของโปรแกรมที่ใช้ไฟล์รหัสผ่านสำหรับการตรวจสอบสิทธิ์


1
/usr/bin/passwdจะใช้เช่นสำหรับบัญชีอีเมลเท่านั้น ผู้ใช้สามารถใช้ ssh เพื่อเปลี่ยนรหัสผ่านของพวกเขา แต่ไม่มีอะไรอื่น
Simon Richter
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.