Login - คำสั่ง Linux - คำสั่ง Unix

ชื่อ

เข้าสู่ระบบ - ลงชื่อเข้าใช้

สรุป

login [ name ]
login -p
login -h ชื่อโฮสต์
login -f ชื่อ

รายละเอียด

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

ถ้าอาร์กิวเมนต์ไม่ได้รับการ เข้าสู่ระบบ จะแจ้งให้ผู้ใช้

ถ้าผู้ใช้ ไม่ใช่ root และถ้า / etc / nologin มีอยู่เนื้อหาของไฟล์นี้จะถูกพิมพ์ลงบนหน้าจอและการเข้าสู่ระบบจะสิ้นสุดลง โดยทั่วไปจะใช้เพื่อป้องกันการเข้าสู่ระบบเมื่อระบบถูกนำตัวลง

หากมีการระบุข้อ จำกัด การเข้าถึงพิเศษสำหรับผู้ใช้ใน / etc / usertty ต้องทำตามขั้นตอนเหล่านี้หรือพยายามเข้าสู่ระบบจะถูกปฏิเสธและจะสร้างข้อความ syslog ขึ้น ดูหัวข้อ "ข้อ จำกัด การเข้าถึงพิเศษ"

ถ้าผู้ใช้เป็น root การเข้าสู่ระบบจะต้องเกิดขึ้นใน tty ที่ระบุไว้ใน / etc / securetty ความล้มเหลวจะถูกบันทึกด้วยระบบ syslog

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

หากมีไฟล์ hushlogin อยู่ระบบจะทำการล็อกอิน "เงียบ" (ซึ่งจะปิดใช้งานการตรวจสอบอีเมลและการพิมพ์เวลาเข้าสู่ระบบและข้อความล่าสุดของวัน) มิฉะนั้นถ้า / var / log / lastlog มีการพิมพ์ครั้งการล็อกอินครั้งสุดท้าย (และระบบจะบันทึกการล็อกอินปัจจุบัน)

สิ่งที่ผู้ดูแลระบบแบบสุ่มเช่นการตั้งค่า UID และ GID ของ tty จะดำเนินการ ตัวแปรสภาพแวดล้อม TERM จะถูกรักษาไว้ถ้ามีอยู่ (ตัวแปรสภาพแวดล้อมอื่น ๆ จะถูกรักษาไว้ถ้าใช้ตัวเลือก -p ) จากนั้นจะมีการตั้งค่าตัวแปรสภาพแวดล้อม HOME, PATH, SHELL, TERM, MAIL และ LOGNAME ค่าเริ่มต้นของ PATH เป็น / usr / local / bin: / bin: / usr / bin :. สำหรับผู้ใช้ปกติและไปที่ / sbin: / bin: / usr / sbin: / usr / bin สำหรับ root สุดท้ายถ้าไม่ใช่การเข้าสู่ระบบ "เงียบ" ข้อความของวันจะถูกพิมพ์ออกมาและจะมีการตรวจสอบไฟล์ที่มีชื่อผู้ใช้ใน / var / spool / mail และข้อความจะพิมพ์หากมีความยาวไม่เป็นศูนย์

เปลือกของผู้ใช้จะเริ่มทำงาน ถ้าไม่มีการระบุเชลล์สำหรับผู้ใช้ใน / etc / passwd ระบบ จะใช้ / bin / sh ถ้าไม่มีไดเร็กทอรีที่ระบุไว้ใน / etc / passwd ระบบ จะใช้ / ถูกใช้ (ไดเรกทอรีบ้านจะถูกตรวจสอบสำหรับไฟล์ . hushlogin ที่ อธิบายไว้ด้านบน)

ตัวเลือก

-p

ใช้โดย getty (8) เพื่อบอกให้ login ไม่ทำลายสิ่งแวดล้อม

-f

ใช้เพื่อข้ามการตรวจสอบสิทธิ์การเข้าสู่ระบบครั้งที่สอง การดำเนินการนี้ไม่ ได้ ผลสำหรับ root และดูเหมือนจะไม่ทำงานได้ดีภายใต้ Linux

-h

ใช้โดยเซิร์ฟเวอร์อื่น (เช่น telnetd (8)) เพื่อส่งชื่อโฮสต์ระยะไกลเพื่อ เข้าสู่ระบบ เพื่อให้สามารถใส่ลงใน utmp และ wtmp เฉพาะ superuser เท่านั้นที่สามารถใช้ตัวเลือกนี้ได้

ข้อ จำกัด การเข้าถึงพิเศษ

ไฟล์ / etc / securetty แสดงชื่อของ ttys ที่ root อนุญาตให้เข้าสู่ระบบชื่อหนึ่งของอุปกรณ์ tty โดยไม่ต้อง / dev / คำนำหน้าต้องระบุไว้ในแต่ละบรรทัด ถ้าไม่มีไฟล์ root จะได้รับอนุญาตให้เข้าสู่ tty ได้

ใช้ ระบบลีนุกซ์ที่ ทันสมัยที่สุด PAM (Pluggable Authentication Modules) ในระบบที่ไม่ใช้ PAM ไฟล์ / etc / usertty ระบุข้อ จำกัด การเข้าถึงเพิ่มเติมสำหรับผู้ใช้เฉพาะ หากไม่มีไฟล์นี้จะไม่มีข้อ จำกัด ในการเข้าถึงเพิ่มเติม ไฟล์ประกอบด้วยลำดับของส่วน มีสามประเภท ได้แก่ ประเภทชั้นเรียนกลุ่มและผู้ใช้ ส่วนชั้นเรียนจะกำหนดคลาสของ ttys และรูปแบบชื่อโฮสต์ส่วนกลุ่มกำหนดการอนุญาตและโฮสต์ที่ได้รับอนุญาตตามแต่ละกลุ่มและส่วน USERS จะกำหนดจำนวน ttys และโฮสต์ที่อนุญาตต่อผู้ใช้แต่ละราย

แต่ละบรรทัดในไฟล์นี้มีความยาวไม่เกิน 255 ตัวอักษร ความคิดเห็นเริ่มต้นด้วย # character และขยายไปยังส่วนท้ายของบรรทัด

หมวด CLASSES

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

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

ตัวอย่างหมวด CLASSES:

ชั้นเรียน myclass1 tty1 tty2 myclass2 tty3 @ .foo.com

นี้กำหนดคลาส myclass1 และ myclass2 เป็นด้านขวามือที่สอดคล้องกัน

กลุ่มหมวด

กลุ่มส่วนกำหนดอนุญาต ttys และโฮสต์บนพื้นฐานกลุ่มต่อยูนิกซ์ หากผู้ใช้เป็นสมาชิกของกลุ่ม Unix ตาม / etc / passwd และ / etc / group และกลุ่มดังกล่าวจะกล่าวถึงในส่วน GROUPS ใน / etc / usertty จากนั้นผู้ใช้จะได้รับสิทธิ์การเข้าถึงหากกลุ่มนี้เป็นกลุ่ม

ส่วน GROUPS เริ่มต้นด้วยคำ GROUPS ในกรณีที่เป็นตัวพิมพ์ใหญ่ทั้งหมดในตอนเริ่มต้นของบรรทัดและแต่ละบรรทัดต่อไปนี้เป็นลำดับของคำที่คั่นด้วยช่องว่างหรือแท็บ คำแรกในบรรทัดคือชื่อของกลุ่มและส่วนที่เหลือของคำในบรรทัดระบุ ttys และโฮสต์ที่สมาชิกของกลุ่มนั้นได้รับอนุญาตให้เข้าถึง ข้อกำหนดเหล่านี้อาจเกี่ยวข้องกับการใช้คลาสที่กำหนดไว้ในส่วน CLASSES ก่อนหน้านี้

กลุ่ม GROUPS ตัวอย่าง

กลุ่ม sys tty1 @ .bar.edu stud myclass1 tty4

ตัวอย่างนี้ระบุว่าสมาชิกของ sys กลุ่มอาจเข้าสู่ tty1 และจาก hosts ในโดเมน bar.edu ผู้ใช้ในกลุ่ม แกน อาจเข้าสู่ระบบจากโฮสต์ / ttys ที่ระบุไว้ในคลาส myclass1 หรือจาก tty4

ส่วน USERS

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

ตัวอย่างส่วน USERS:

USERS zacho tty1 @ 130.225.16.0 / 255.255.255.0 blue tty3 myclass2

ซึ่งอนุญาตให้ผู้ใช้เข้าสู่ระบบได้เฉพาะใน tty1 และจากโฮสต์ที่มี IP addreses ในช่วง 130.225.16.0 - 130.225.16.255 และผู้ใช้ blue สามารถเข้าสู่ระบบได้จาก tty3 และสิ่งที่ระบุไว้ในคลาส myclass2

อาจมีบรรทัดในส่วน USERS ที่ขึ้นต้นด้วยชื่อผู้ใช้ * นี่คือกฎเริ่มต้นและจะใช้กับผู้ใช้รายใดที่ไม่ตรงกับบรรทัดอื่น ๆ

ถ้าทั้งสาย USERS และ GROUPS ตรงกับผู้ใช้ผู้ใช้จะได้รับอนุญาตให้เข้าใช้งานจากยูทิลิตี้ทั้งหมด ttys / hosts ที่กล่าวถึงในข้อกำหนดเหล่านี้

ต้นกำเนิด

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

โอ

ชื่อของอุปกรณ์ tty โดยไม่มี / dev / prefix เช่น tty1 หรือ ttyS0

โอ

สตริง @localhost ซึ่งหมายความว่าผู้ใช้จะได้รับอนุญาตให้ telnet / rlogin จากโฮสต์ท้องถิ่นไปยังโฮสต์เดียวกัน นอกจากนี้ยังช่วยให้ผู้ใช้เช่นรันคำสั่ง: xterm -e / bin / login

โอ

คำต่อท้ายชื่อโดเมนเช่น @ .some.dom ซึ่งหมายความว่าผู้ใช้อาจใช้งาน rlogin / telnet จากโฮสต์ใด ๆ ที่มีชื่อโดเมนมีคำต่อท้ายชื่อโดเมน. som.dom

โอ

ช่วงที่อยู่ IPv4 เขียน @ xxxx / yyyy โดย xxxx เป็นที่อยู่ IP ในโน้ตทศนิยมรูปสี่เหลี่ยมแบบปกติและ yyyy เป็นบิตแมปในสัญกรณ์เดียวกันระบุบิตในที่อยู่เพื่อเปรียบเทียบกับที่ อยู่ IP ของ โฮสต์ระยะไกล . ตัวอย่างเช่น @ 130.225.16.0 / 255.255.254.0 หมายความว่าผู้ใช้อาจใช้งาน rlogin / telnet จากโฮสต์ที่มีที่ อยู่ IP อยู่ ในช่วง 130.225.16.0 - 130.225.17.255

ต้นกำเนิดใด ๆ ข้างต้นอาจมีคำนำหน้าโดยระบุเวลาตามไวยากรณ์:

timespec :: = '[' [':' ] * ']' วันที่ :: = 'mon' | 'tue' | 'แต่งงาน' | 'thu' | 'fri' | 'นั่ง' | 'sun' hour :: = '0' | '1' | ... | '23' hourspec :: = | '-' day-or-hour :: = |

ตัวอย่างเช่นต้นกำเนิด [mon: tue: wed: th: fri: 8-17] tty3 หมายความว่าสามารถเข้าสู่ระบบได้ในวันจันทร์ถึงวันศุกร์ระหว่างเวลา 8:00 ถึง 17:59 น. (5:59 pm) ใน tty3 นอกจากนี้ยังแสดงให้เห็นว่าช่วงชั่วโมง ab มีช่วงเวลาทั้งหมดระหว่าง: 00 และ b: 59 ข้อกำหนดหนึ่งชั่วโมง (เช่น 10) หมายถึงช่วงเวลาระหว่าง 10 ถึง 10:59

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

หากไม่มีกฎเริ่มต้นผู้ใช้ที่ไม่ตรงกับบรรทัดใด ๆ / etc / usertty จะได้รับอนุญาตให้เข้าสู่ระบบได้จากทุกที่เช่นเดียวกับพฤติกรรมมาตรฐาน

ดูสิ่งนี้ด้วย

init (8), การ ปิดเครื่อง (8)

สำคัญ: ใช้คำสั่ง man ( % man ) เพื่อดูว่าคำสั่งถูกใช้อย่างไรในคอมพิวเตอร์เครื่องใดเครื่องหนึ่งของคุณ