Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> การเขียนโปรแกรม Bash

รักษาความปลอดภัยระบบ Linux: เรียนรู้ visudo เพื่อแก้ไข sudoers อย่างปลอดภัย

เคล็ดลับ Linux: ใช้ visudo เพื่อแก้ไขไฟล์ sudoers เพื่อหลีกเลี่ยงข้อผิดพลาดที่อาจทำให้คุณล็อกอาทรจากระบบ Linux ได้ตลอดไป

ไฟล์ sudoers คืออะไร?

ไฟล์ sudoers กำหนดว่าผู้ใช้รายไหนมีสิทธิ์เข้าถึงคำสั่ง sudo บนระบบ Linux

ตำแหน่งของไฟล์อยู่ที่:

/etc/sudoers

…และเนื้อหาจะมีลักษณะดังนี้:

# # This file MUST be edited with the 'visudo' command as root. # # Please consider adding local content in /etc/sudoers.d/ instead of # directly modifying this file. # # See the man page for details on how to write a sudoers file. # Defaults env_reset Defaults mail_badpass Defaults secure_path="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/snap/bin" # Host alias specification # User alias specification # Cmnd alias specification # User privilege specification root ALL=(ALL:ALL) ALL # Members of the admin group may gain root privileges %admin ALL=(ALL) ALL # Allow members of group sudo to execute any command %sudo ALL=(ALL:ALL) ALL # See sudoers(5) for more information on "#include" directives: #includedir /etc/sudoers.d

คำสั่ง sudo

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

ทำไมต้องใช้ sudo แทนการล็อกอินเป็น root?

เพื่อความปลอดภัย การใช้ sudo รันคำสั่งใดคำสั่งหนึ่งจะทำให้คำสั่งนั้นรันด้วยสิทธิ์ root เท่านั้น – คุณอนุญาตให้สิทธิ์เหล่านั้นอย่างชัดเจน หากคุณล็อกอินเป็น root คำสั่งใดๆ ที่คุณรันจะมีสิทธิ์สูงสุด ทำให้สคริปต์เข้าถึงสิ่งที่ไม่ควร หรือข้อผิดพลาดเล็กน้อย เช่น พิมพ์ผิด อาจทำลายระบบได้

visudo – โปรแกรมสำหรับแก้ไขไฟล์ Sudoers อย่างปลอดภัย

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

visudo เป็นโปรแกรมที่ช่วยให้คุณแก้ไขไฟล์ sudoers อย่างปลอดภัย โดยตรวจสอบข้อผิดพลาดก่อนบันทึก เพื่อช่วยป้องกันข้อผิดพลาดเล็กน้อยที่อาจล็อกคุณออกจากคำสั่ง sudo

การใช้ visudo เพื่อแก้ไขไฟล์ sudoers

เพื่อแก้ไขไฟล์ sudoers อย่างปลอดภัยด้วย visudo ให้เรียกใช้ด้วยสิทธิ์ขlevated:

sudo visudo

visudo จะเปิดไฟล์ sudoers ด้วยโปรแกรมแก้ไขข้อความค่าเริ่มต้น

ไวยากรณ์ของไฟล์ sudoers

ไวยากรณ์ของไฟล์ sudoers ถูกอธิบายอย่างละเอียดในเอกสารทางการ

เคล็ดลับความปลอดภัยสำหรับ visudo และ sudoers

visudo ไม่ได้ป้องกัน ทุก ข้อผิดพลาด คุณยังต้องระมัดระวัง มันสามารถตรวจสอบว่าไม่มีข้อผิดพลาดด้านไวยากรณ์ในไฟล์ แต่ไม่สามารถตรวจจับข้อมูลที่ผิดพลาดได้

นั่นคือ – มันจะจับการกำหนดค่าที่จัดรูปแบบผิด แต่จะไม่สังเกตหากคุณสะกดชื่อผู้ใช้ผิด

เคล็ดลับเหล่านี้จะช่วยลดข้อผิดพลาดที่ visudo ไม่สามารถตรวจจับได้

สร้างไฟล์ sudoers ของคุณเอง

หลีกเลี่ยงการแก้ไขไฟล์กำหนดค่า sudoers เริ่มต้นโดยสร้างไฟล์กำหนดค่าของคุณเองเพื่อเพิ่มเติม

ขั้นแรก ใช้ visudo แก้ไขไฟล์ /etc/sudoers เริ่มต้นและยกความคิดเห็นบรรทัดต่อไปนี้:

#includedir /etc/sudoers.d

ตอนนี้ ระบบจะโหลดการกำหนดค่าเพิ่มเติมจากเส้นทาง /etc/sudoers.d/ ทำให้คุณสามารถเปลี่ยนแปลงการกำหนดค่าที่นั่นและทิ้งไฟล์กำหนดค่าเริ่มต้นไว้

สร้างและแก้ไขไฟล์กำหนดค่าใหม่ด้วยคำสั่งต่อไปนี้:

sudo visudo -f /etc/sudoers.d/mysudoersconfig

เก็บหน้าต่างเทอร์มินัลหรือเซสชันระยะไกลแยกต่างหากและล็อกอินไว้

หากคุณกำลังเปลี่ยนแปลงสิทธิ์ sudo ให้ทิ้งเซสชันเทอร์มินัลที่ล็อกอินเป็นผู้ใช้ที่มีสิทธิ์ sudo ไว้

คุณสามารถทดสอบการเปลี่ยนแปลงได้ และหากคุณทำให้ระบบเสีย คุณสามารถย้อนกลับจากเซสชันนั้นซึ่งยังคงมีสิทธิ์ sudo – แม้คุณจะทำผิดพลาดก็ตาม

สำรองข้อมูลระบบของคุณ

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