1. บทนำ
ทำไมต้องจัดการผู้ใช้ใน Ubuntu?
เมื่อใช้ Ubuntu หรือระบบปฏิบัติการ Linux‑based อื่น ๆ บางครั้งคุณอาจต้องเพิ่มผู้ใช้หลายคนในระบบและกำหนดสิทธิ์ที่แตกต่างกันให้แต่ละคน
เช่น เมื่อแชร์คอมพิวเตอร์เครื่องเดียวที่บ้านหรือที่ทำงาน การแยกบัญชีผู้ใช้สำหรับแต่ละคนทำให้สามารถจัดการไฟล์และการตั้งค่าได้อย่างอิสระ ซึ่งช่วยรักษาความเป็นส่วนตัวและป้องกันปัญหาระบบที่อาจเกิดขึ้น
นอกจากนี้ การจำกัดคุณลักษณะและการดำเนินการที่อนุญาตให้กับผู้ใช้แต่ละคนยังช่วยเพิ่มความปลอดภัยโดยรวมของระบบได้อีกด้วย
โดยเฉพาะอย่างยิ่ง Linux ถูกใช้เป็นระบบปฏิบัติการเซิร์ฟเวอร์ในหลายบริษัท ผู้ดูแลระบบเซิร์ฟเวอร์มักให้สิทธิ์ผู้ดูแลระบบเฉพาะกับผู้ใช้ที่จำเป็นเท่านั้น และกำหนดสิทธิ์มาตรฐานให้กับผู้ใช้อื่น ๆ เพื่อลดความเสี่ยงจากการทำงานที่ไม่ตั้งใจทำให้ระบบล่ม
ความสำคัญและวัตถุประสงค์ของสิทธิ์ sudo
ใน Ubuntu คำสั่ง sudo (superuser do) ใช้เพื่อทำการดำเนินการที่ต้องการสิทธิ์ผู้ดูแลระบบ
คำสั่งนี้จะให้สิทธิ์ผู้ดูแลระบบแบบชั่วคราว ผู้ใช้ทั่วไปจะไม่ได้รับอนุญาตให้ทำการดำเนินการทั่วระบบโดยไม่มีการจำกัด; แทนที่ผู้ดูแลระบบจะกำหนดว่าการกระทำใดบ้างที่อนุญาตเมื่อจำเป็นต้องใช้สิทธิ์ระดับสูง
ด้วยสิทธิ์ sudo ผู้ใช้สามารถทำงานต่าง ๆ ดังต่อไปนี้
- ติดตั้งหรือถอดถอนซอฟต์แวร์
- รันการอัปเดตระบบ
- เปลี่ยนการตั้งค่าเครือข่าย
- เพิ่มหรือถอดผู้ใช้และกลุ่ม
การดำเนินการเหล่านี้ส่งผลโดยตรงต่อแกนหลักของระบบ คำสั่งที่ผิดพลาดอาจลบไฟล์สำคัญหรือทำให้ระบบมีช่องโหว่ด้านความปลอดภัย
ดังนั้น สิทธิ์ sudo ต้องได้รับการจัดการอย่างระมัดระวัง และควรให้เฉพาะผู้ใช้ที่จำเป็นเท่านั้น
วัตถุประสงค์ของบทความนี้
บทความนี้อธิบายอย่างชัดเจนว่าจะแอดผู้ใช้ใหม่ใน Ubuntu อย่างไรและจะมอบสิทธิ์ sudo ให้กับผู้ใช้นั้นอย่างไร
นอกจากนี้ยังครอบคลุมแนวปฏิบัติที่ดีที่สุดสำหรับการจัดการผู้ใช้ที่มีสิทธิ์ sudo และเน้นประเด็นสำคัญเพื่อให้ระบบของคุณปลอดภัย
2. วิธีพื้นฐานในการเพิ่มผู้ใช้
ความแตกต่างระหว่าง adduser และ useradd
เพื่อสร้างผู้ใช้ใหม่ใน Ubuntu คุณจะใช้คำสั่งสองตัวหลักคือ adduser หรือ useradd
ทั้งสองใช้เพื่อเพิ่มผู้ใช้ แต่พฤติกรรมของมันแตกต่างกันเล็กน้อย การเข้าใจลักษณะของแต่ละคำสั่งจะช่วยให้คุณเลือกใช้ได้อย่างเหมาะสม
คำสั่ง adduser
คำสั่ง adduser เป็นวิธีที่แนะนำให้ใช้เพื่อเพิ่มผู้ใช้ใหม่ใน Ubuntu
มันเป็นเครื่องมือระดับสูงกว่า useradd โดยอัตโนมัติสร้างไดเรกทอรีบ้านและจัดการการตั้งค่าเริ่มต้น
นอกจากนี้ยังนำผู้ใช้ผ่านกระบวนการโต้ตอบแบบง่าย ทำให้เป็นมิตรกับผู้เริ่มต้น ตัวอย่างการใช้งานพื้นฐานมีดังนี้
sudo adduser username
หลังจากรันคำสั่งนี้ ระบบจะถามให้คุณกรอกข้อมูลเพิ่มเติม เช่น
- ชื่อเต็ม
- เบอร์โทรทำงานและบ้าน
- หมายเหตุอื่น ๆ
เมื่อกรอกข้อมูลครบ ระบบจะสร้างไดเรกทอรีบ้านของผู้ใช้และทำการตั้งค่าพื้นฐานโดยอัตโนมัติ
คำสั่ง useradd
คำสั่ง useradd ให้การควบคุมที่ละเอียดกว่าเมื่อสร้างผู้ใช้และเหมาะกับการใช้งานขั้นสูง
มันไม่ทำการตั้งค่าสภาพแวดล้อมโดยอัตโนมัติ ดังนั้นคุณต้องระบุออปชันเพื่อสร้างส่วนประกอบต่าง ๆ เช่นไดเรกทอรีบ้าน ตัวอย่างมีดังนี้
sudo useradd -m username
ออปชัน -m จะสร้างไดเรกทอรีบ้านของผู้ใช้ เมื่อเทียบกับ adduser แล้ว useradd เหมาะกับสคริปต์อัตโนมัติและสถานการณ์ที่ต้องการการกำหนดค่าที่ละเอียด
การเลือกใช้ระหว่าง adduser และ useradd
ในสภาพแวดล้อม Ubuntu ส่วนใหญ่ adduser เป็นคำสั่งที่แนะนำสำหรับการเพิ่มผู้ใช้อย่างรวดเร็ว อย่างไรก็ตาม useradd เหมาะกับผู้ดูแลระบบหรือสคริปต์ที่ต้องการการควบคุมระดับละเอียด
การเข้าใจความแตกต่างเหล่านี้จะช่วยให้คุณจัดการผู้ใช้ Ubuntu ได้อย่างมีประสิทธิภาพ
3. วิธีมอบสิทธิ์ sudo
การเพิ่มผู้ใช้เข้าไปในกลุ่ม sudo
.
ใน Ubuntu วิธีมาตรฐานสำหรับการให้สิทธิ์ผู้ดูแลระบบคือการเพิ่มผู้ใช้เข้าไปใน กลุ่ม sudo
สมาชิกของกลุ่มนี้สามารถยืมสิทธิ์ผู้ดูแลระบบชั่วคราวเพื่อดำเนินการที่ต้องการสิทธิ์พิเศษ เช่น การเปลี่ยนแปลงการกำหนดค่า หรือการติดตั้งซอฟต์แวร์
คำสั่งเพื่อเพิ่มผู้ใช้เข้าสู่กลุ่ม sudo
- ใช้คำสั่ง usermod รันคำสั่งต่อไปนี้เพื่อเพิ่มผู้ใช้เข้าสู่กลุ่ม sudo:
sudo usermod -aG sudo username
ผู้ใช้ต้องออกจากระบบและเข้าสู่ระบบใหม่เพื่อให้การเปลี่ยนแปลงมีผล
- ใช้คำสั่ง gpasswd วิธีอื่นคือใช้
gpasswdเพื่อเพิ่มผู้ใช้เข้าสู่กลุ่ม:sudo gpasswd -a username sudo
การแก้ไขไฟล์ sudoers
คุณสามารถให้สิทธิ์ sudo ได้โดยการแก้ไขไฟล์ sudoers โดยตรง
ไฟล์นี้กำหนดว่าผู้ใช้คนใดสามารถเรียกใช้คำสั่ง sudo ได้และอนุญาตให้ควบคุมสิทธิ์อย่างละเอียด
- ทำไมต้องใช้ visudo? ใช้คำสั่ง
visudoเมื่อแก้ไขไฟล์sudoersเพื่อป้องกันข้อผิดพลาดด้านไวยากรณ์:sudo visudo
- ตัวอย่างการแก้ไข sudoers เพิ่มบรรทัดดังต่อไปนี้เพื่อให้สิทธิ์ sudo กับผู้ใช้เฉพาะคนหนึ่ง:
username ALL=(ALL:ALL) ALL
- จำกัดให้ใช้คำสั่งบางอย่างเท่านั้น คุณสามารถจำกัดสิทธิ์ sudo ให้ใช้ได้เฉพาะคำสั่งที่กำหนดเท่านั้น:
testuser ALL=(ALL) /usr/bin/apt
การตรวจสอบสิทธิ์ sudo
หลังจากให้สิทธิ์ sudo แล้ว ให้ตรวจสอบการตั้งค่าด้วยคำสั่งนี้:
sudo -l

4. การตรวจสอบการตั้งค่า sudo และข้อควรระวังด้านความปลอดภัย
วิธีตรวจสอบสิทธิ์ sudo
จำเป็นต้องยืนยันว่าการให้สิทธิ์ sudo ถูกนำไปใช้อย่างถูกต้องหลังจากทำการกำหนดค่า
เนื่องจากผู้ใช้ sudo สามารถทำการดำเนินการทั่วทั้งระบบ การตรวจสอบการตั้งค่าเหล่านี้ช่วยป้องกันข้อผิดพลาดร้ายแรงได้
ใช้ sudo -l
ใช้คำสั่งต่อไปนี้เพื่อแสดงรายการการดำเนินการ sudo ที่มีอยู่:
sudo -l
หากผลลัพธ์แสดง ALL ผู้ใช้จะมีสิทธิ์เข้าถึงคำสั่ง sudo ทั้งหมด
แนวปฏิบัติด้านความปลอดภัย
เมื่อกำหนดสิทธิ์ sudo ใน Ubuntu ควรพิจารณาข้อแนะนำต่อไปนี้เพื่อรักษาความปลอดภัย:
ให้สิทธิ์ที่จำเป็นเท่านั้น
จำกัดการเข้าถึง sudo ให้กับผู้ใช้ที่จำเป็นเท่านั้น เพื่อลดความเสี่ยงต่อการใช้ระบบในทางที่ไม่เหมาะสม
จัดการและสำรองไฟล์ sudoers
แม้ visudo จะป้องกันข้อผิดพลาดด้านไวยากรณ์ การสำรองไฟล์ก่อนทำการแก้ไขก็เพิ่มชั้นความปลอดภัยอีกชั้นหนึ่ง
ตรวจสอบประวัติการใช้ sudo
ตรวจสอบประวัติการดำเนินการ sudo ด้วยคำสั่งต่อไปนี้:
sudo cat /var/log/auth.log | grep sudo
ตรวจสอบสิทธิ์เป็นประจำ
เมื่อมีผู้ใช้เพิ่มขึ้นที่ได้รับสิทธิ์ sudo ความเสี่ยงด้านความปลอดภัยก็เพิ่มตามไปด้วย ควรตรวจสอบและอัปเดตสิทธิ์อย่างสม่ำเสมอเพื่อให้ระบบปลอดภัย
5. คำถามที่พบบ่อย
การตั้งค่ากลุ่ม sudo ไม่ถูกนำไปใช้?
หากสิทธิ์ sudo ไม่ปรากฏทันทีหลังจากเพิ่มผู้ใช้เข้าสู่กลุ่ม ให้ออกจากระบบและเข้าสู่ระบบใหม่เพื่อเปิดใช้งานการเปลี่ยนแปลง
หากปัญหายังคงอยู่ ให้ตรวจสอบสมาชิกของกลุ่มด้วยคำสั่ง id:
id username
วิธีลบสิทธิ์ sudo
เพื่อยกเลิกการเข้าถึง sudo ให้ลบผู้ใช้ออกจากกลุ่ม sudo:
sudo gpasswd -d username sudo
การเพิ่มผู้ใช้หลายกลุ่มพร้อมกัน
คุณสามารถกำหนดให้ผู้ใช้เป็นสมาชิกของหลายกลุ่มได้พร้อมกัน:
sudo usermod -aG group1,group2 username
ให้ sudo เฉพาะกับคำสั่งที่กำหนด
จำกัดการเข้าถึง sudo ให้กับคำสั่งเฉพาะโดยใช้ไฟล์ sudoers:
username ALL=(ALL) /usr/bin/apt
6. สรุป
บทความนี้อธิบายวิธีการจัดการผู้ใช้และสิทธิ์ใน Ubuntu
การเพิ่มผู้ใช้และมอบสิทธิ์ sudo อย่างถูกต้องเป็นทักษะสำคัญของการดูแลระบบ
โดยคำนึงถึงประเด็นต่อไปนี้ คุณจะสามารถเพิ่มความปลอดภัยและประสิทธิภาพของระบบได้:
- การเลือกคำสั่งสร้างผู้ใช้ที่เหมาะสม ใช้
adduserสำหรับการสร้างผู้ใช้ทั่วไปและuseraddสำหรับการกำหนดค่าขั้นสูง - การกำหนดและตรวจสอบสิทธิ์ sudo เพิ่มผู้ใช้ลงในกลุ่ม sudo หรือแก้ไขไฟล์ sudoers เพื่อให้สิทธิ์การเข้าถึงที่จำกัดหรือสิทธิ์บริหารเต็มรูปแบบ
- การรักษาความปลอดภัย ให้สิทธิ์การเข้าถึงเฉพาะเมื่อจำเป็นและตรวจสอบสิทธิ์อย่างสม่ำเสมอเพื่อรักษาความปลอดภัยของระบบ
การเชี่ยวชาญเทคนิคพื้นฐานเหล่านี้จะช่วยให้คุณใช้งาน Ubuntu ได้อย่างปลอดภัยและมีประสิทธิภาพ
ใช้ความรู้นี้เพื่อรักษาสภาพแวดล้อมระบบที่เสถียรและปลอดภัย


