doas
sudo指令的替代品
doas (“do as”)是一个用来以其他使用者身份执行指令的程式。系统管理员可以对其进行设定,赋予指定使用者执行特定指令的权限。其为以ISC许可证授权的自由及开放源代码软件,可在UNIX与类Unix操作系统中使用。
原作者 | Ted Unangst |
---|---|
开发者 | OpenBSD计画[1] |
首次发布 | 2015年10月18日[1] |
当前版本 |
|
源代码库 | |
编程语言 | C |
类型 | 安全软体 |
许可协议 | ISC许可证 |
网站 | https://man.openbsd.org/doas |
历史
doas最初由Ted Unangst开发[5],并于2015年10月与OpenBSD 5.8一同发布,取代了sudo[1]。但OpenBSD仍然提供sudo作为可独立安装的软体包[1]。
设定
权限的定义皆编写于设定档/etc/doas.conf
中[6]。
范例
允许user1在不输入密码的情况下以root的身份执行procmap:
permit nopass user1 as root cmd /usr/sbin/procmap
允许wheel群组的成员以root身份执行任何指令:
permit :wheel as root
上方设定的简化版本(但仅在安装后,预设的使用者为root的情况下才有效):
permit :wheel
允许wheel群组的成员执行任何指令(预设使用者为root的情况下),并记住他们输入的密码:
permit persist :wheel
移植与可用性
Jesse Smith的移植版doas被DragonFlyBSD、FreeBSD与NetBSD[7]打包。据作者介绍,其也可以在illumos与macOS上运作[8]。OpenDoas是Linux的移植版,被Alpine、Arch、Gentoo、GNU Guix、Hyperboloa、Manjaro、Parabola、NixOS、Ubuntu与Void Linux等散布版打包[9]。
参见
参考资料
- ^ 1.0 1.1 1.2 1.3 OpenBSD 5.8. www.openbsd.org. [2020-05-06]. (原始内容存档于2021-05-17).
- ^ https://cvsweb.openbsd.org/src/usr.bin/doas/doas.c?rev=1.99; 检索日期: 2024年5月30日; 文件格式: 文本文件.
- ^ Yegulalp, Serdar. OpenBSD 6.0 tightens security by losing Linux compatibility. InfoWorld. 2016-07-25 [2020-05-06]. (原始内容存档于2021-07-25) (英语).
- ^ Millman, Rene. Linux Sudo bug could allow hackers root access. SC Media UK. SC Media UK. 2019-10-18 [2020-05-06]. (原始内容存档于2021-09-29).
- ^ OpenBSD通用命令(General Commands)手册页 –
- ^ Privileges | OpenBSD Handbook. www.openbsdhandbook.com. [2020-05-06]. (原始内容存档于2021-03-03).
- ^ The NetBSD Packages Collection: security/doas. ftp.netbsd.org. [2020-05-06]. (原始内容存档于2021-09-29).
- ^ Smith, Jesse. doas. GitHub. [2020-08-24]. (原始内容存档于2021-04-27).
- ^ opendoas. repology.org. [2021-07-25]. (原始内容存档于2021-03-03).