เหตุใดผู้ใช้ระบบบางรายจึงมี/ usr / bin / falseเป็นเชลล์และนั่นหมายความว่าอย่างไร
เหตุใดผู้ใช้ระบบบางรายจึงมี/ usr / bin / falseเป็นเชลล์และนั่นหมายความว่าอย่างไร
คำตอบ:
สิ่งนี้ช่วยป้องกันผู้ใช้จากการเข้าสู่ระบบ
บางครั้งคุณต้องมีบัญชีผู้ใช้สำหรับงานเฉพาะ อย่างไรก็ตามไม่มีใครสามารถโต้ตอบกับบัญชีนี้ในคอมพิวเตอร์ได้ สิ่งเหล่านี้อยู่ในบัญชีผู้ใช้ระบบมือเดียวในทางกลับกันนี่คือบัญชีซึ่งการเข้าถึง FTP หรือ POP3 เป็นไปได้ แต่ไม่มีการล็อกอินเชลล์โดยตรง
หากคุณดู/etc/passwd
ไฟล์อย่างใกล้ชิดคุณจะพบ/bin/false
คำสั่งเป็นเชลล์ล็อกอินสำหรับบัญชีระบบจำนวนมาก จริงเท็จไม่ได้เป็นเปลือก แต่คำสั่งที่ไม่ทำอะไรเลยแล้วยังมีลงท้ายด้วยรหัสสถานะที่ส่งสัญญาณความผิดพลาด ผลลัพธ์ที่ได้นั้นง่ายมาก ผู้ใช้เข้าสู่ระบบและเห็นพรอมต์การเข้าสู่ระบบอีกครั้งทันที
/random/path/foo-shell
และตั้งเป็นค่าเริ่มต้นของฉัน/etc/passwd
มา มีไม่มีการรับประกัน
มีผู้ใช้เหล่านี้เป็นเจ้าของไฟล์หรือกระบวนการที่เฉพาะเจาะจงและไม่ได้มีวัตถุประสงค์เพื่อเป็นบัญชีเข้าสู่ระบบ
หากค่าของฟิลด์ "shell" ไม่แสดงรายการ/etc/shells
โปรแกรมเช่น daemon FTP ไม่อนุญาตให้เข้าถึง
นอกจากนี้สำหรับโปรแกรมที่ไม่ได้ตรวจสอบ/etc/shells
เราใช้ประโยชน์จากความจริงที่/bin/false
จะส่งคืนทันทีดังนั้นการปฏิเสธเชลล์แบบโต้ตอบ
ผู้ใช้บางคนมี / usr / bin / false คนอื่นมี / sbin / nologin หรือแม้กระทั่ง / usr / bin / passwd พวกเขาอาจเป็นผู้ใช้ระบบที่จำเป็นในการแยกสิทธิ์โปรแกรมหรือผู้ใช้ที่เป็นมนุษย์ของโปรแกรมที่ใช้ไฟล์รหัสผ่านสำหรับการตรวจสอบสิทธิ์
/usr/bin/passwd
จะใช้เช่นสำหรับบัญชีอีเมลเท่านั้น ผู้ใช้สามารถใช้ ssh เพื่อเปลี่ยนรหัสผ่านของพวกเขา แต่ไม่มีอะไรอื่น