國外許多的桌機或筆電Linux使用者漸漸從sudo改到doas,所以在這邊大略分享一下doas
的使用經驗。
1.什麼是doas?
doas的作者為Ted Unangst,用於openbsd上,而Linux上的doas則是由GitHub 使用者Dunc
aen 移植的opendoas。
GitHub: https://github.com/Duncaen/OpenDoas
2.為什麽要使用doas?
因為sudo在一般桌機或筆電使用者的用圖只是為了取得超級使用者的權利,doas的功能也
是一樣,但sudo確還有其它的功能導致其源碼相當的旁大,進而造成sudo有許多的潛在安
全漏洞。而doas只有為使用者取得超級使用者的功能,所以源碼相對簡單,潛在安漏洞則
較少。
3.doas有哪些功能?要怎麼設定doas?
功能:
nopass-使用者在使用doas時不需要密碼。
persist-使用者在輸入密碼成功後一段時間內無需再輸入密碼(這功能在Gentoo上沒用,
原因未知。)
設定:doas的設定非常簡單,只需要在/etc/doas.conf打上。(假設使用者的名字叫tux
。)
permit :tux
假如要使用功能的話(使用nopass做示範。)
permit nopass :tux
4.如何在終端機上從sudo改用doas?
這裡用Gentoo的emerge做示範,假如要安裝程式media-hentai/hendroid的話
sudo:
sudo emerge media-hentai/hendroid
doas:
doas emerge media-hentai/hendroid
5.相關資源
Arch wiki: https://wiki.archlinux.org/title/Doas
Gentoo wiki: https://wiki.gentoo.org/wiki/Doas
P.s 新鮮來潮寫的小介紹,如果文中有任何的錯誤還麻煩糾正我了,謝謝啦。
作者: ago1414 2021-09-28 10:02:00
有空研究看看 感謝分享
作者:
frankmito (frankmito)
2021-09-28 11:40:00用 doas 開的程式語言都會變英文,應該是 bug?
樓上有可能是沒有帶入 LC 系列的 locale 環境變數以往有 sudo -E ,doas 呢?
若要完整的切換到新使用者的環境,必須要使用 su - username 或 su -l username,才會連同PATH/USER/MAIL等變數都轉成新使用者的環境
nopass 後加 keepenv 會保留來的環境變數。
作者: roccqqck (ccqq) 2021-09-28 19:25:00
最近好像很多這種東西 但都沒有取代sudo
作者: roccqqck (ccqq) 2021-09-28 19:27:00
sudo漏洞 可能幾萬人會補 這個doas漏洞又有多少人補?
很多這種東西?我怎麼不知道?doas 本就是綁在OpenBSD 上的,只是有其他的 OS/distro port 過來用
作者: roccqqck (ccqq) 2021-09-28 19:34:00
會補的,一個人就夠了,不會補的幾萬人都沒用。一些陳年漏洞就是這樣留下來的。
作者:
qoopichu (非洲邊緣魯蛇)
2021-09-28 22:43:00media-hentai/hendroid是啥...有相關資源嗎 XD
使用官方正式的管理工具。pamac 要問 Manjaro 那邊。
然後 doas 又有分兩個不同的,兩邊都說對方不好
作者:
jobintan (Robin Artemstein)
2021-10-01 14:49:00寧可期待sudo改進,用sudo很久了,很難說換便換。有點懷念Debian,有時sudo操作系統不給過,說咋都得一定要切換到root才行,11 bulleyes出來了,試一下先。
作者: brli7848 (無理阿?) 2021-10-03 11:16:00
arch什麼時後推薦doas了…
作者:
frankmito (frankmito)
2021-10-03 14:11:00樓上原 po 是在說不同 doas 的版本
以實用性而言,當然是無腦用一個專案最爽最有效率但有複數個上得了檯面的類似專案,長遠來看或許是比較健康的回某樓一個人就夠了的論點doas 對 sudo, freebsd 對 linux distro 都類似的道理
不是很懂樓上的意思。只是陳述事實狀態。事實上我只在 OpenBSD 用 doas。在 Linux 上是用 sudo 的。
作者: chongzi138 2021-10-11 16:43:00
上網查了一下,github有人教如何讓yay使用doas,方便