doas

sudo指令的替代品

doas (“do as”)是一個用來以其他使用者身份執行指令的程式。系统管理员可以對其進行設定,賦予指定使用者執行特定指令的權限。其為以ISC許可證授權的自由及开放源代码软件,可在UNIX類Unix操作系统中使用。

doas
原作者Ted Unangst
開發者OpenBSD計畫[1]
首次发布2015年10月18日,​8年前​(2015-10-18[1]
当前版本
  • 1.98 (2022年12月22日;穩定版本)[2]
編輯維基數據鏈接
源代码库 編輯維基數據鏈接
编程语言C
类型安全軟體
许可协议ISC許可證
网站https://man.openbsd.org/doas

doas是由Ted Unangst為OpenBSD所開發的,是一種更簡單且更安全的sudo替代品[3][4]

歷史 编辑

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被DragonFlyBSDFreeBSDNetBSD[7]打包。據作者介紹,其也可以在illumosmacOS上運作[8]。OpenDoas是Linux的移植版,被AlpineArchGentooGNU GuixHyperboloaManjaroParabolaNixOS英语NixOSUbuntuVoid Linux等散佈版打包[9]

參見 编辑

參考資料 编辑

  1. ^ 1.0 1.1 1.2 1.3 OpenBSD 5.8. www.openbsd.org. [2020-05-06]. (原始内容存档于2021-05-17). 
  2. ^ https://cvsweb.openbsd.org/src/usr.bin/doas/doas.c?rev=1.98; 检索日期: 2023年7月22日; 文件格式: 纯文本.
  3. ^ Yegulalp, Serdar. OpenBSD 6.0 tightens security by losing Linux compatibility. InfoWorld. 2016-07-25 [2020-05-06]. (原始内容存档于2021-07-25) (英语). 
  4. ^ 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). 
  5. ^ doas(1) – OpenBSD通用命令(General Commands)手册页
  6. ^ Privileges | OpenBSD Handbook. www.openbsdhandbook.com. [2020-05-06]. (原始内容存档于2021-03-03). 
  7. ^ The NetBSD Packages Collection: security/doas. ftp.netbsd.org. [2020-05-06]. (原始内容存档于2021-09-29). 
  8. ^ Smith, Jesse. doas. GitHub. [2020-08-24]. (原始内容存档于2021-04-27). 
  9. ^ opendoas. repology.org. [2021-07-25]. (原始内容存档于2021-03-03).