ค้นหาเว็บไซต์

วิธีปิดการใช้งานคำสั่งปิดเครื่องและรีบูตใน Linux


คำสั่ง ปิดเครื่อง กำหนดเวลาในการปิดระบบ Linux ซึ่งอาจใช้เพื่อหยุด ปิดเครื่อง หรือรีบูตเครื่องเมื่อมีการเรียกใช้ด้วยตัวเลือกเฉพาะ และ รีบูต สั่งให้ระบบรีสตาร์ท

Linux distros บางตัวเช่น Ubuntu, Linux Mint, Mandriva และอีกมากมาย ทำให้สามารถรีบูต/หยุด/ปิดระบบในฐานะผู้ใช้ปกติได้ตามค่าเริ่มต้น นี่ไม่ใช่การตั้งค่าที่เหมาะสมที่สุดโดยเฉพาะบนเซิร์ฟเวอร์ แต่จะต้องเป็นสิ่งที่ต้องกังวลโดยเฉพาะสำหรับผู้ดูแลระบบ

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

ปิดการใช้งานคำสั่งปิดเครื่องและรีบูตใน Linux

วิธีที่ง่ายที่สุดในการปิดใช้งานคำสั่ง ปิดเครื่อง และ รีบูต โดยใช้ไฟล์ /etc/sudoers คุณสามารถระบุผู้ใช้ได้ที่นี่ (tecmint<) หรือกลุ่ม (นักพัฒนาซอฟต์แวร์) ซึ่งไม่ได้รับอนุญาตให้ดำเนินการคำสั่งเหล่านี้

vi /etc/sudoers

เพิ่มบรรทัดเหล่านี้ในส่วน นามแฝงคำสั่ง

Cmnd_Alias     SHUTDOWN = /sbin/shutdown,/sbin/reboot,/sbin/halt,/sbin/poweroff

User privilege specification
tecmint   ALL=(ALL:ALL) ALL, !SHUTDOWN

Allow members of group sudo to execute any command
%developers  ALL=(ALL:ALL) ALL,  !SHUTDOWN

ตอนนี้ให้ลองดำเนินการคำสั่ง ปิดเครื่อง และ รีบูต ในฐานะผู้ใช้ปกติ (tecmint)

อีกวิธีหนึ่งคือการลบสิทธิ์การดำเนินการในคำสั่ง ปิดเครื่อง และ รีบูต สำหรับผู้ใช้ทั้งหมดยกเว้นรูท

chmod o-x /sbin/shutdown
chmod o-x /sbin/reboot

หมายเหตุ: ภายใต้ systemd ไฟล์เหล่านี้ (/sbin/shutdown, /sbin/reboot, /sbin/halt, /sbin/poweroff) เป็นเพียงลิงก์สัญลักษณ์ไปยัง /bin/systemctl:

ls -l /sbin/shutdown
ls -l /sbin/reboot
ls -l /sbin/halt
ls -l /sbin/poweroff

เพื่อป้องกันไม่ให้ผู้ใช้รายอื่นเรียกใช้คำสั่งเหล่านี้ คุณเพียงแค่ลบสิทธิ์ในการดำเนินการตามที่อธิบายไว้ข้างต้น แต่จะไม่มีผลภายใต้ systemd คุณสามารถลบสิทธิ์ในการดำเนินการบน /bin/systemctl ซึ่งหมายความว่าผู้ใช้รายอื่นทั้งหมดยกเว้น root จะรันเฉพาะ systemctl เท่านั้น

chmod  o-x /bin/systemctl

คุณอาจต้องการเรียนรู้วิธีปิดการใช้งานฟังก์ชันบางอย่าง เช่น การเข้าสู่ระบบรูท SSH และการจำกัดการเข้าถึง SSH, SELinux, บริการที่ไม่พึงประสงค์ใน Linux โดยอ่านคำแนะนำเหล่านี้:

  1. วิธีเปิดใช้งานและปิดใช้งานการเข้าสู่ระบบรูทใน Ubuntu
  2. วิธีปิดการใช้งาน SELinux ชั่วคราวหรือถาวรใน RHEL/CentOS 7/6
  3. ปิดใช้งานหรือเปิดใช้งานการเข้าสู่ระบบรูท SSH และจำกัดการเข้าถึง SSH ใน Linux
  4. วิธีหยุดและปิดการใช้งานบริการที่ไม่ต้องการจากระบบ Linux

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