การ เพิ่ม User และกำหนดสิทธ์
Last updated
Last updated
Adduser
การที่เราจะสามารถเพิ่มบัญชีผู้ใช้งานได้นั้น เราจำเป็นที่จะต้องทำให้เราเป็น Root โดยการใช้คำว่า sudo นำหน้าคำสั่งเพื่อให้สามารถที่จะรันคำสั่งได้
ขั้นที่ 1
- คำสั่งที่ใช้เพิ่มบัญชีผู้ใช้งาน คือ useradd ตามด้วยชื่อบัญชีที่เราต้องการจะเพิ่ม
ตัวอย่าง เราต้องการเพิ่มบัญชีผู้ใช้งาน ที่ชื่อว่า user1 คำสั่งคือ sudo useradd user1
เราก็จะได้ user1
หลังจากที่เราทำการเพิ่ม user เรียบร้อยแล้วเราจะใช้คำสั่ง id เพื่อดูรายละเอียดข้อมูลของuserที่เราได้ทำการเพิ่มเข้ามา
คำสั่งคือ id user1(ชื่อuserที่เราต้องการดูรายละเอียด)
uid ของแต่ละ userตัวเลขจะไม่ซ้ำกัน
ขั้นที่ 2
- การกำหนดรหัสผ่านให้กับ user ที่เราทำการเพิ่มเข้ามา คำสั่งคือ sudo passwd user1 (root เป็นคนกำหนด)
Enter new UNIX ให้เราทำการใส่รหัสผ่านที่เราต้องการตั้งให้กับUSER
Retype new UNIX ให้เราทำการใส่รหัสผ่านที่เดียวกันกับเราตั้งไว้อีกครั้ง
จากนั้นก็จะมีข้อความยืนยันการตั้งรหัสผ่านสำเร็จ
กรณีที่เราใส่รหัสผ่านไม่เหมือนกันจะเป็นดังนี้
ขั้นที่ 3
ทดสอบการ Login ของ userที่เราเพิ่มเข้ามา โดยเราทำการเพิ่ม user1 เข้ามาอีกครั้ง เราจะการ Login โดยการใช้ คำสั่ง sudo login
เราก็จะใส่ชื่อ user1 และPasswordของ user1คือ 1234
ก็จะมีการแจ้งเตือนขึ้นมาว่า Loginครั้งสุดท้ายเมื่อไหร่
ขั้นที่ 4
- หากเราต้องการลบ user ที่เราเพิ่มเข้ามา เราจำเป็นที่จะต้องใช้ คำสั่ง userdel
เราจะทำการลบ user 1 ที่เราเพิ่มเข้ามาด้วยคำสั่งคือ sudo userdel user1
แล้วเราก็ใส่ Password ของ Root ก็จะทำการบลบัญชีที่เราใส่ชื่อเข้าไป
ทีนี้เราลองใช้คำสั่ง id user1 เพื่อตรวจสอบดูว่ายังอยู่หรือไม่
จะไม่พบ user1 แล้วเนื่องจากเราได้ใช้คำสั่ง userdel เพื่อบลบบัญชีผู้ใช้งานออกไปแล้ว
Permission
Permission คือ สิทธิ์ในการเข้าถึง Files หรือ Directories ภายใน Linux สามารถแบ่งออกได้เป็น 3 หมวดหมู่ ดังนี้
1. User ที่เป็นเจ้าของ File
2. Group ที่เป็นเจ้าของ File
3. Other คนอื่นๆ
โดยแต่ละหมวดหมู่ข้างต้น สามารถกำหนด permission ได้ 3 ประเภท ดังนี้
1. Read (r)
2. Write (w)
3. Execute (x)
Permission บน UNIX สามารถแสดงด้วย ตัวอักษร หรือ ตัวเลขฐานแปด (octal digits) ตามด้านล่างนี้
Octal
Symbol
Permission
0
---
ไม่มีสิทธิ์ใดๆ
1
--x
เข้าถึงข้อมูลได้
2
-w-
เพิ่ม ลบ แก้ไข ได้
3
-wx
เพิ่ม ลบ แก้ไข และ เข้าถึงข้อมูลได้
4
r--
อ่านข้อมูลได้
5
r-x
เข้าถึงและอ่านข้อมูลได้
6
rw-
อ่านข้อมูลและ เพิ่ม ลบ แก้ไข ได้
7
rwx
อ่าน เพิ่ม ลบ แก้ไข และ เข้าถึงข้อมูลทั้งหมดได้
ผลของ Permission จะขึ้นกับว่าเป็น Files หรือ Directories
1. '-' - Regular file
2. 'd' - Directory
เมื่อนำไปใช้กับ Regular file
1. Read permission อนุญาติให้ File สามารถเปิดได้
2. Write permission อนุญาติให้ File สามารถแก้ไขได้
3. Execute permission อนุญาติให้ File สามารถทำงานโดยตรงจาก Shell ถ้าเป็น Script หรือ Binary File
เมื่อนำไปใช้กับ Directory
1. Read permission อนุญาติให้ Directory สามารถแสดงลิสต์ภายในได้
2. Write permission อนุญาติให้ Files หรือ Directories สามารถถูกสร้างหรือลบภายใน Directory
3. Execute permission อนุญาติให้ข้อมูลใน Directory สามารถเข้าถึงได้
โดย UNIX จะพิจารณาลำดับความสำคัญเรียงลำดับจาก user > group > other
d
r
w
x
-
-
-
-
-
x
File Type: ‘d’ หมายถึง Directory ‘-‘ หมายถึง File
Permission ของ เจ้าของไฟล์
Permission ของ สมาชิกในกลุ่มเดียวกัน
Permission ของ บุคคลอื่นหรือสมาชิกอื่น
2
user1
user1
Link จำนวนลิงก์ทั้งหมดที่อยู่ภายในไดเรกทอรีนั้น ถ้าเป็นไฟล์จะมีแค่ 1 ลิงก์
Owner เจ้าของไฟล์
Group กลุ่ม
62
Apr 16
01:13
user1
Size ขนาด มีหน่วยเป็นไบต์ ถ้าเป็นไฟล์จะเป็นขนาดของไฟล์ ถ้าเป็นไดเรกทอรีจะเป็นจำนวนบล็อกที่ใช้ต่อ 1 ไดเรกทอรี
Date วันที่เข้าใช้งานล่าสุด
Time เวลาที่เข้าใช้งานล่าสุด
File Name ชื่อไฟล์หรือชื่อไดเรกทอรีนั้นๆ ถ้าเป็นลิงก์จะแสดงเครื่องหมาย -> ไปที่ตำแหน่งของไฟล์จริง
chmod
คำสั่ง chmod ใช้เปลี่ยน Permission ของ Files และ Directories สามารถใช้ได้ 2 แบบ
1. symbols (ตัวอักษร)
2. octal values (ตัวเลขฐานแปด)
วิธีการใช้แบบ Symbols (ตัวอักษร)
$ ls –l คำสั่งเพื่อตรวจสอบ File และ Directories
$ chmod go-rwx Direc1
chmod คำสั่งในการเปลี่ยนสิทธิ์ของ file หรือ directory
go อ้างอิงถึงหมวดหมู่ Group, Other [u = User, g = Group, o = Other]
- หมายถึงการลบหรือเอาออก [+ = เพิ่ม, - = ลบ]
rwx อ้างอิงถึง permission เป็น read, write, execute
Direc1 ระบุถึงชื่อ file หรือ directory ที่ต้องการเปลี่ยนสิทธิ์
วิธีการใช้แบบ octal values (ตัวเลขฐานแปด)
$ chmod 600 File1
ตัวแรก 6 เป็นการกำหนด permission ให้ user เป็น rw-
ตัวแรก 0 เป็นการกำหนด permission ให้ group เป็น ---
ตัวแรก 0 เป็นการกำหนด permission ให้ other เป็น ---
ถ้าต้องการเปลี่ยนแปลง Permission ทั้งหมดใน Directory ปัจจุบันไม่ลงไปถึง sub directories สามารถใช้ * ช่วยได้ เช่น
$ chmod 700 *
ถ้าต้องการเปลี่ยนแปลง Permission ทั้งหมดใน Directory ปัจจุบันและ sub directories ทั้งหมด สามารถใช้ Option : -R (Recursive) เช่น
$ chmod –R 770 Direc1