1 julyclyde 2019-08-03 10:28:04 +08:00 那当然是不能阻止的 |
![]() | 2 iyaozhen 2019-08-03 10:37:46 +08:00 via Android ![]() 想起了大学宿舍群,4 个人都是管理员。 |
3 gam2046 2019-08-03 10:40:13 +08:00 ![]() sudo passwd 都可以修改 root 的密码,显然不能阻止 B 把 A 踢出。sudo 以后等同于 root 权限了 |
4 656002674 2019-08-03 10:59:29 +08:00 ![]() |
![]() | 5 yankebupt 2019-08-03 11:01:31 +08:00 我还以为肯定有人会说放个暗桩,当检测到 A 不是 sudo 组时把 B 踢出 sudo 组同时把 A 加回来,没想到现在都这么和谐了么... |
![]() | 6 alphatoad 2019-08-03 11:04:44 +08:00 via iPhone 感觉会有 racing condition 啊 指令还在队列里,然后被 t 了 |
7 exip 2019-08-03 11:07:56 +08:00 via Android 是可以实现的,不过不太完美,对蓄意修改者还是无效,对一般用户来说没问题。 实施限制 可以对用户能够运行的命令实施限制。假设有一个名为 dataex 的组,其成员是 “ alpha ”、“ bravo ” 和 “ charlie ”。现在,已经允许这个组运行 sudo 命令 /usr/local/bin/mis_ext *,这里的星号代表传递给脚本的许多参数。但是,如果参数是 import,就不允许用户 “ charlie ” 执行此脚本。可以使用逻辑否 '!' 操作符设置这种条件。下面是在 sudoers 中的实现方法: 1 %dataex rs6000 = (dbmis) NOPASSWD: /usr/local/bin/mis_ext * 2 charlie rs6000 = (dbmis) NOPASSWD: !/usr/local/bin/mis_ext import 参考:https://www.ibm.com/developerworks/cn/aix/library/au-sudo/index.html |
![]() | 8 ryd994 2019-08-03 14:39:02 +08:00 @alphatoad 不会,sudo 只在开始时验证权限 比如你 sudo bash,那即使你被剔出 sudoer,这个 bash 还是有 root 权限 |
![]() | 9 alphatoad 2019-08-03 15:09:46 +08:00 via iPhone @ryd994 其实我想的更多的是 shell 在 execl 的时候的表现,个人认为这里不会有 racing condition |
![]() | 10 elikoi17 2019-08-03 16:19:35 +08:00 via Android selinux ? |
![]() | 12 starsriver 2019-08-03 19:53:32 +08:00 via Android 任何人都可以踢人。 记住 linux 的提示,权限越大责任越大。 |
13 exip 2019-08-03 20:41:33 +08:00 via Android @ibreaker 你说的是这个吧,无线电中字母的读法。 A:ALFA B:BRAVO C:CHARLIE D:DELTA E:ECHO F:FOXTROT G:GOLF H:HOTEL I:INDIA J:JULIET K:KILO L:LIMA M:MIKE N:NOVEMBER O:OSCAR P:PAPA Q:QUE B EC R:ROMEO S:SIERRA T:TANGO U:UNIFORM V:VICTOR W:WHISKEY X:X-RAY Y:YANKEE Z:ZULO |
14 wangguoqin1001 2019-08-05 03:36:08 +08:00 设定允许 /禁止 sudo 运行的命令,当然比较靠谱的就是把安全的命令穷举一下放在允许 sudo 执行的命令列表里面♂ |
![]() | 15 no1xsyzy 2019-08-05 10:24:13 +08:00 你可以通过 visudo 限制 sudo 能够执行的命令。 |