linux 中禁止普通用户关机权限

来源:互联网 发布:方天画戟淘宝 编辑:程序博客网 时间:2024/04/30 00:16

方法一

系统默认情况下只有root用户才有执行他们的权限。你可以将/sbin/reboot和 
/sbin/halt的用户与用户组都设置为root,然后设置它们的执行权限。 
如下: 
#chown root:root /sbin/halt 
#chmod 744 /sbin/halt 
第一条命令将halt的用户和用户组设置为root,第二条命令设置它的拥有者即root有读写执行权限,其它用户为只读权限。

方法二

linux中普通用户默认能执行reboot,halt和poweroff等权限,一般为了安全起见,需要修改.
以root用户进入/etc/security/console.apps目录下,删除reboot和halt及poweroff即可.
[root@rac01 console.apps]# pwd
/etc/security/console.apps
[root@rac01 console.apps]# rm -rf poweroff
[root@rac01 console.apps]# rm -rf reboot
[root@rac01 console.apps]# rm -rf halt
[root@rac01 console.apps]#

再以普通用户登录,执行上述关机命令,系统能识别,但没有反应.

linux怎么给一个普通用户reboot权限?

  分四种情况讨论:
  1.让任何人(包括根本不拥有系统帐号的人)都可以通过控制台reboot
  在/etc/inittab文件中保留ca::ctrlaltdel:/sbin/shutdown -t3 -r now
  这一行。这样全国人民都可以reboot你的机器,只要你把控制台交出来。
  2.让所有系统用户都可以reboot
  执行# > /etc/security/console.apps/reboot即可。这就在console.apps目录下生成了一个空文件,文件名就是授权的application。以上路径是针对Mandrake系统而言的,其他系统我不清楚。不过,真正高雅的Mandraker或许根本就不会去靠“>”来生成这个文件——他们会使用msec来进行控制的。
  3.让指定的用户才可以reboot
  假设我们要让用户zhizunbao拥有reboot的权限,我们靠uid/gid来完成控制:
  # groupadd reboot
  # cd /usr/local
  # mkdir reboot
  # chown root:reboot reboot/
  # chmod 750 reboot/
  # cd reboot
  # cp /sbin/reboot .
  # chmod 4755 reboot
  # usermod -G reboot zhizunbao
  现在,zhizunbao就可以运行/usr/local/reboot/reboot来重启动机器。
  4.在一台不设普通用户的机器上启用口令验证reboot
  这实际上是靠添加一个关机帐号来实现的,该帐号的shell就是加了s位的/sbin/halt,并且口令只有少数维护人员知道。我们这里采用的就是第4套方案。


转自:http://hi.baidu.com/bing51027/item/b891400d4d0c79374ac4a3a0