Doas — полегшена альтернатива sudo для GNU/Linux і *BSD
Якщо ви користуєтеся Лінуксом лише на домашньому комп'ютері, то скоріш за все вам не потрібна уся та розширена функціональність sudo
, яка тримає в собі 30 років історії розвитку проекту.
OpenBSD, початково Тед Унанґст, свого часу створили doas, дуже легку утиліту, щоб керувати дозволами користувачів. Як стверджує офіційна документація, doas
надає 95% функціональностіsudo
з дрібкою основної бази коду.
Далебі, sudo
важить близько 5мб, натомість doas
доходить лише до кількох кілобайтів.
А головне — файл конфіґурації в doas
набагато простіший.
Кілька років як doas
вже портована на GNU/Linux і на FreeBSD.
Отаман Вочевидячки підказує: щоб користуватися doas
, треба спершу його встановити:
Gentoo:
emerge -a doas
FreeBSD:
pkg install doas
Коли встановилося, треба створити файл конфіґу doas.conf
, котрий наразі не існує.
В Лінуксі цільова директорія для файлу має бути /etc/
, у FreeBSD — /usr/local/etc/
.
Скористуйтеся текстовим редактором вашого вибору, щоб створити файл. Я користуюся Vim'ом:
vim /etc/doas.conf
або для більш упорядкованого FreeBSD:
vim /usr/local/etc/doas.conf
І додаєте два рядки, щоб активувати дозволи для користувача:
permit nopass keepenv :wheel
permit nopass keepenv root as root
Так, усього лиш два! На противагу купі визначень у конфіґурації sudo
.
Звісно ж, ваш обраний користувач має бути в групі wheel
.
Можна додавати й по імені користувача замість імені групи — :bebyx
, приміром.
Відтак вводьте команди з doas
попереду замість sudo
— і всьо буде чотко. Наприклад:
doas emerge -uaDN @world
Якщо не хочете давати безпарольного доступу користувачеві, замість nopass
поставте persist
:
permit persist keepenv :wheel
Це ввімкне стандартну в sudo
функцію просити пароля лише вперше за сесію.
Докладніше про трюки в doas
можна почитати англійською: flak.tedunangst.com/post/doas-mastery