Skip to main content

วิธีการใช้คำสั่ง Linux - คำสั่ง Unix: เข้าสู่ระบบ

พื้นฐาน Linux #1 - การใช้คำสั่งเบื้องต้น (เมษายน 2025)

พื้นฐาน Linux #1 - การใช้คำสั่งเบื้องต้น (เมษายน 2025)
Anonim

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

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

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

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

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

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

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

สิ่งที่ผู้ดูแลระบบแบบสุ่มเช่นการตั้งค่า UID และ GID ของ tty จะดำเนินการ ตัวแปรสภาพแวดล้อมแบบ TERM จะถูกรักษาไว้ถ้ามีอยู่ (ตัวแปรสภาพแวดล้อมอื่น ๆ จะถูกรักษาไว้ถ้า-poption ถูกนำมาใช้). จากนั้นจะมีการตั้งค่าตัวแปรสภาพแวดล้อม 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) เพื่อบอกเข้าสู่ระบบ ไม่ทำลายสิ่งแวดล้อม
  • -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 และรูปแบบชื่อโฮสต์ส่วนกลุ่มกำหนด TTYs และโฮสต์ที่ได้รับอนุญาตตามแต่ละกลุ่มและส่วน USERS จะกำหนด TTYs และโฮสต์ที่ได้รับอนุญาตตามแต่ละผู้ใช้

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

หมวด CLASSES

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

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

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

เรียนmyclass1 tty1 tty2myclass2 tty3 @ .foo.com

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

กลุ่มหมวด

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

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

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

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

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

ส่วน USERS

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

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

ผู้ใช้zacho tty1 @ 130.225.16.0 / 255.255.255.0สีฟ้า tty3 myclass2

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

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

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

ต้นกำเนิด

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

  • ชื่อของอุปกรณ์ tty โดยไม่มี / dev / prefix เช่น tty1 หรือ ttyS0 .
  • สตริง @localhost ซึ่งหมายความว่าผู้ใช้จะได้รับอนุญาตให้ telnet / rlogin จากโฮสต์ท้องถิ่นไปยังโฮสต์เดียวกัน นอกจากนี้ยังช่วยให้ผู้ใช้เช่นเรียกใช้คำสั่ง: xterm -e / bin / เข้าสู่ระบบ.
  • คำต่อท้ายชื่อโดเมนเช่น @ .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' | 'นั่ง' | 'อาทิตย์'ชั่วโมง :: = '0' | '1' | … | '23'hourspec :: = | '-' วันหรือชั่วโมง :: = |

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

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

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

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