科技行者

行者学院 转型私董会 科技行者专题报道 网红大战科技行者

知识库

知识库 安全导航

至顶网软件频道RedHat中让普通用户安全执行管理员程序

RedHat中让普通用户安全执行管理员程序

  • 扫一扫
    分享文章到微信

  • 扫一扫
    关注官方公众号
    至顶头条

RedHat Linux是这样来处理的,现在新版本的具体是怎样的大家可以参考下发行的文档。本方法可能在其它Linux版本中是不通用的。

作者:shanyuan 来源:赛迪网技术社区 2007年10月19日

关键字: 操作系统 Linux 用户 Red hat

  • 评论
  • 分享微博
  • 分享邮件
 

RedHat Linux是这样来处理的,现在新版本的具体是怎样的大家可以参考下发行的文档。本方法可能在其它Linux版本中是不通用的。

在多人共用一台电脑或管理局域网时,常常会遇到这种情况:普通用户必须执行某个命令,比如关机。但普通用户却不具备足够的权限,而出于隐私和安全的考虑我们又不希望把root密码告诉别人。

有两种方法可以解决这一问题。

第一种方法是设置命令文件的suid,可以使普通用户以此文件的拥有者的身份运行该程序,具体命令为 chmod u+s file ,file为你想让别人执行的文件。还可以设置guid,让用户以文件所属组的身份运行程序,命令为 chmod g+s file。

第二种方法是使用sudo程序,它可以使某个用户以特定的身份去运行程序,当然也能以root身份去运行,它相比第一种方法更安全也便于维护。在 RedHat发行版的光盘里就有这个工具。使用方法为,在终端中输入visudo编辑sudoers文件,在空白处添加以下四行:

  Host_Alias MYHOST=localhost

  User_Alias MYUSER=A的用户名,B的用户名

  Cmnd_Alias MYFILE=A和B要运行的程序路径

  MYUSER MYHOST=NOPASSWD:MYFILE

注意大小写,以后要增加新的程序或用户时,直接更改前三行即可。如果要让某个不知道root密码的用户具有全部权限,除了运行某些危险程序(如格式化),只需增加:

  Cmnd_Alias DANGER=危险程序的路径

  C的用户名 ALL=(ALL) NOPASSWD:ALL,!DANGER

设置完成后,和vi一样保存退出,编辑器会自动检查你的语法是否正确,如果出错按 e 可以回去修改。然后该用户即可以“sudo+空格+某命令”的格式运行具体命令了。

    • 评论
    • 分享微博
    • 分享邮件
    邮件订阅

    如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。

    重磅专题
    往期文章
    最新文章