Unix / Linux - การดูแลระบบผู้ใช้

ในบทนี้เราจะพูดถึงรายละเอียดเกี่ยวกับการดูแลระบบผู้ใช้ใน Unix

มีบัญชีสามประเภทในระบบ Unix -

บัญชีรูท

นี้เรียกอีกอย่างว่า superuserและจะมีการควบคุมระบบที่สมบูรณ์และไม่มีข้อ จำกัด superuser สามารถรันคำสั่งใด ๆ โดยไม่มีข้อ จำกัด ควรถือว่าผู้ใช้รายนี้เป็นผู้ดูแลระบบ

บัญชีระบบ

บัญชีระบบเป็นบัญชีที่จำเป็นสำหรับการทำงานของส่วนประกอบเฉพาะของระบบเช่นบัญชีอีเมลและ sshdบัญชี โดยปกติบัญชีเหล่านี้จำเป็นสำหรับฟังก์ชันเฉพาะบางอย่างในระบบของคุณและการแก้ไขใด ๆ ก็ตามอาจส่งผลเสียต่อระบบ

บัญชีผู้ใช้

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

Unix สนับสนุนแนวคิดของบัญชีกลุ่มซึ่งจัดกลุ่มบัญชีจำนวนหนึ่งอย่างมีเหตุผล ทุกบัญชีจะเป็นส่วนหนึ่งของบัญชีกลุ่มอื่น กลุ่ม Unix มีบทบาทสำคัญในการจัดการสิทธิ์ของไฟล์และการจัดการกระบวนการ

การจัดการผู้ใช้และกลุ่ม

มีไฟล์การดูแลระบบผู้ใช้หลักสี่ไฟล์ -

  • /etc/passwd- เก็บข้อมูลบัญชีผู้ใช้และรหัสผ่าน ไฟล์นี้เก็บข้อมูลส่วนใหญ่เกี่ยวกับบัญชีในระบบ Unix

  • /etc/shadow- ถือรหัสผ่านที่เข้ารหัสของบัญชีที่เกี่ยวข้อง ไม่ใช่ทุกระบบที่รองรับไฟล์นี้

  • /etc/group - ไฟล์นี้มีข้อมูลกลุ่มสำหรับแต่ละบัญชี

  • /etc/gshadow - ไฟล์นี้มีข้อมูลบัญชีกลุ่มที่ปลอดภัย

ตรวจสอบไฟล์ด้านบนทั้งหมดโดยใช้ไฟล์ cat คำสั่ง

ตารางต่อไปนี้แสดงรายการคำสั่งที่พร้อมใช้งานในระบบ Unix ส่วนใหญ่เพื่อสร้างและจัดการบัญชีและกลุ่ม -

ซีเนียร์ คำสั่งและคำอธิบาย
1

useradd

เพิ่มบัญชีในระบบ

2

usermod

แก้ไขแอตทริบิวต์ของบัญชี

3

userdel

ลบบัญชีออกจากระบบ

4

groupadd

เพิ่มกลุ่มในระบบ

5

groupmod

แก้ไขแอตทริบิวต์ของกลุ่ม

6

groupdel

ลบกลุ่มออกจากระบบ

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

สร้างกลุ่ม

ตอนนี้เราจะเข้าใจวิธีสร้างกลุ่ม สำหรับสิ่งนี้เราจำเป็นต้องสร้างกลุ่มก่อนที่จะสร้างบัญชีมิฉะนั้นเราสามารถใช้ประโยชน์จากกลุ่มที่มีอยู่ในระบบของเราได้ เรามีกลุ่มทั้งหมดที่ระบุไว้ใน/etc/groups ไฟล์.

กลุ่มเริ่มต้นทั้งหมดเป็นกลุ่มเฉพาะของบัญชีระบบและไม่แนะนำให้ใช้กับบัญชีธรรมดา ดังนั้นต่อไปนี้เป็นไวยากรณ์ในการสร้างบัญชีกลุ่มใหม่ -

groupadd [-g gid [-o]] [-r] [-f] groupname

ตารางต่อไปนี้แสดงรายการพารามิเตอร์ -

ซีเนียร์ ตัวเลือกและคำอธิบาย
1

-g GID

ค่าตัวเลขของ ID ของกลุ่ม

2

-o

ตัวเลือกนี้อนุญาตให้เพิ่มกลุ่มด้วย GID ที่ไม่ซ้ำกัน

3

-r

แฟล็กนี้สั่ง groupadd เพื่อเพิ่มบัญชีระบบ

4

-f

ตัวเลือกนี้ทำให้ออกจากสถานะสำเร็จหากมีกลุ่มที่ระบุอยู่แล้ว ด้วย -g หากมี GID ที่ระบุอยู่แล้วจะมีการเลือก GID อื่น ๆ (เฉพาะ)

5

groupname

ชื่อกลุ่มจริงที่จะสร้าง

หากคุณไม่ได้ระบุพารามิเตอร์ใด ๆ ระบบจะใช้ค่าเริ่มต้น

ตัวอย่างต่อไปนี้สร้างกลุ่มนักพัฒนาที่มีค่าเริ่มต้นซึ่งเป็นที่ยอมรับสำหรับผู้ดูแลระบบส่วนใหญ่

$ groupadd developers

ปรับเปลี่ยนกลุ่ม

หากต้องการแก้ไขกลุ่มให้ใช้ไฟล์ groupmod ไวยากรณ์ -

$ groupmod -n new_modified_group_name old_group_name

ในการเปลี่ยนชื่อกลุ่ม developer_2 เป็น developer ให้พิมพ์ -

$ groupmod -n developer developer_2

นี่คือวิธีที่คุณจะเปลี่ยน GID ทางการเงินเป็น 545 -

$ groupmod -g 545 developer

ลบกลุ่ม

ตอนนี้เราจะเข้าใจวิธีการลบกลุ่ม ในการลบกลุ่มที่มีอยู่สิ่งที่คุณต้องมีคือgroupdel command และ group name. ในการลบกลุ่มการเงินคำสั่งคือ -

$ groupdel developer

ซึ่งจะลบเฉพาะกลุ่มเท่านั้นไม่ใช่ไฟล์ที่เกี่ยวข้องกับกลุ่มนั้น ไฟล์ยังคงสามารถเข้าถึงได้โดยเจ้าของไฟล์

สร้างบัญชี

ให้เราดูวิธีสร้างบัญชีใหม่ในระบบ Unix ของคุณ ต่อไปนี้เป็นไวยากรณ์ในการสร้างบัญชีของผู้ใช้ -

useradd -d homedir -g groupname -m -s shell -u userid accountname

ตารางต่อไปนี้แสดงรายการพารามิเตอร์ -

ซีเนียร์ ตัวเลือกและคำอธิบาย
1

-d homedir

ระบุโฮมไดเร็กทอรีสำหรับบัญชี

2

-g groupname

ระบุบัญชีกลุ่มสำหรับบัญชีนี้

3

-m

สร้างโฮมไดเร็กทอรีหากไม่มีอยู่

4

-s shell

ระบุเชลล์เริ่มต้นสำหรับบัญชีนี้

5

-u userid

คุณสามารถระบุรหัสผู้ใช้สำหรับบัญชีนี้

6

accountname

ชื่อบัญชีจริงที่จะสร้าง

หากคุณไม่ได้ระบุพารามิเตอร์ใด ๆ ระบบจะใช้ค่าเริ่มต้น useradd คำสั่งปรับเปลี่ยน /etc/passwd, /etc/shadowและ /etc/group ไฟล์และสร้างโฮมไดเร็กทอรี

ต่อไปนี้เป็นตัวอย่างที่สร้างบัญชี mcmohdตั้งค่าโฮมไดเร็กทอรีเป็น /home/mcmohd และกลุ่มเป็น developers. ผู้ใช้รายนี้จะกำหนด Korn Shell ให้

$ useradd -d /home/mcmohd -g developers -s /bin/ksh mcmohd

ก่อนที่จะออกคำสั่งด้านบนตรวจสอบให้แน่ใจว่าคุณได้สร้างกลุ่มนักพัฒนาโดยใช้ไฟล์groupadd คำสั่ง

เมื่อสร้างบัญชีแล้วคุณสามารถตั้งรหัสผ่านโดยใช้ไฟล์ passwd คำสั่งดังนี้ -

$ passwd mcmohd20
Changing password for user mcmohd20.
New UNIX password:
Retype new UNIX password:
passwd: all authentication tokens updated successfully.

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

แก้ไขบัญชี

usermodคำสั่งช่วยให้คุณสามารถเปลี่ยนแปลงบัญชีที่มีอยู่ได้จากบรรทัดคำสั่ง มันใช้อาร์กิวเมนต์เดียวกับuseradd คำสั่งบวกอาร์กิวเมนต์ -l ซึ่งอนุญาตให้คุณเปลี่ยนชื่อบัญชี

ตัวอย่างเช่นในการเปลี่ยนชื่อบัญชี mcmohd ถึง mcmohd20 และหากต้องการเปลี่ยนโฮมไดเร็กทอรีคุณจะต้องออกคำสั่งต่อไปนี้ -

$ usermod -d /home/mcmohd20 -m -l mcmohd mcmohd20

ลบบัญชี

userdelคำสั่งสามารถใช้เพื่อลบผู้ใช้ที่มีอยู่ นี่เป็นคำสั่งที่อันตรายมากหากไม่ใช้ด้วยความระมัดระวัง

มีอาร์กิวเมนต์หรืออ็อพชันเดียวที่ใช้ได้สำหรับคำสั่ง .rสำหรับการลบโฮมไดเร็กทอรีและไฟล์เมลของบัญชี

ตัวอย่างเช่นหากต้องการลบบัญชีmcmohd20ให้ใช้คำสั่งต่อไปนี้ -

$ userdel -r mcmohd20

หากคุณต้องการเก็บโฮมไดเร็กทอรีไว้เพื่อวัตถุประสงค์ในการสำรองข้อมูลให้ละเว้นไฟล์ -rตัวเลือก คุณสามารถลบโฮมไดเร็กทอรีได้ตามต้องการในภายหลัง