这关闭命令安排 Linux 系统断电的时间,它也可以用于当使用特定选项调用时重新启动指示系统重新启动。
默认情况下,某些 Linux 发行版(例如 Ubuntu、Linux Mint、Mandriva 等)可以以普通用户身份重新启动/停止/关闭系统。这不是理想的设置,尤其是在服务器上,它必须是值得担心的事情,尤其是对于系统管理员而言。
在本文中,我们将展示如何禁用关闭和重新启动Linux 中普通用户的命令。
在 Linux 中禁用关机和重新启动命令
最简单的禁用方法关闭和重新启动命令使用/etc/sudoers文件,在这里您可以指定一个用户(技术人员)或组(开发商) 不允许执行这些命令。
# 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
现在尝试执行关闭和重新启动以normail 用户身份执行命令(技术人员)。

另一种方法是删除执行权限关闭和重新启动除 root 之外的所有用户的命令。
# 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 root 登录并限制 SSH 访问、SELinux、Linux 中不需要的服务:
就是这样!在本文中,我们展示了如何在 Linux 中为普通系统用户禁用关闭和重新启动命令。您知道还有其他方法可以做到这一点,请在评论中与我们分享。
