OpenBSD doas: различия между версиями

Материал из OpenBSD-Wiki
Перейти к навигации Перейти к поиску
м
м
 
(не показано 10 промежуточных версий этого же участника)
Строка 1: Строка 1:
[http://www.badbug.id.au/doas-or-how-i-use-sudo-on-openbsd-5-8/ Оригинал]
+
Ted Unangst (tedu@) представил [http://www.tedunangst.com/flak/post/doas doas] — «легкую» замену '''sudo''' в OpenBSD, поддерживающую только основные функции. Начиная с OpenBSD 5.8, '''doas''' входит в состав базовой системы. Использовать '''doas''' очень просто, достаточно создать файл конфигурации '''/etc/doas.conf'''.
  
There is a new sudo replacement in town and it's called doas which I use on OpenBSD 5.8 (snapshot). Ted Unangst (tedu) developed it as a simple replacement to sudo (without all bells and whistles) to support the use case for a simple, small sudo-like replacement for OpenBSD. Long live sudo, no more sudo1.
+
* Либеральная OpenBSD система:<br /><pre>permit nopass keepenv { ENV PS1 SSH_AUTH_SOCK } :wheel</pre> Пользователи из группы '''wheel''' выполняют команды как '''root''' (используется по умолчанию, если не указан иной пользователь). Разрешено запускать любые команды без запроса пароля, значения переменных '''ENV''', '''PS1''' и '''SSH_AUTH_SOCK''' наследуются.
  
Доступна в -current (OpenBSD 5.8). Ted Unangst (tedu@) разработал простую альтернативу sudo для OpenBSD 
+
* То же, что и выше, но с запросом пароля пользователя:<br /><pre>permit keepenv {ENV PS1 SSH_AUTH_SOCK} :wheel</pre>
  
Starting OpenBSD 5.8, doas comes pre-installed as part of base cd set. To use it is super simple; Create a configuration file /etc/doas.conf with the following configuration:
+
* Разрешает пользователю bob выполнить '''/bin/sh''' как fred:<br /><pre>permit bob as fred cmd /bin/sh</pre>
  
Super liberal OpenBSD system (ohai! happy sysadmin day):
+
* Запретить всё пользователям группы '''wheel''':<br /><pre>deny :wheel</pre>
<pre>permit nopass keepenv { ENV PS1 SSH_AUTH_SOCK } :wheel</pre>
 
  
Permit users in the wheel group to execute commands as root user (defaults to root user if not specified), allow to run everything without requiring password and preserve the environment variables ENV, PS1 and SSH_AUTH_SOCK
 
  
Same as above but do prompt the user for a valid password (implicitly, ask user for a password because it doesn't have nopass):
+
Правила в '''doas.conf''' читаются сверху вниз, поэтому если запрещающее правило следует сразу за разрешающим, то разрешающее будет действовать, так как имеет приоритет. Кроме того, '''doas.conf''' должен завершаться пустой строкой.
<pre>permit keepenv {ENV PS1 SSH_AUTH_SOCK} :wheel</pre>
 
  
Allow bob to run /bin/sh as fred
 
<pre>permit bob as fred cmd /bin/sh</pre>
 
  
Disallow users in wheel group to do anything:
+
[http://www.badbug.id.au/doas-or-how-i-use-sudo-on-openbsd-5-8/ По мотивам]
<pre>deny :wheel</pre>
 
 
 
The rules in doas.conf are read top-down. So, if you have a deny :wheel followed by permit nopass :wheel on the next line, then the permit rule will take precedence and be in effect. doas.conf also requires a new line at the end of the file.
 

Текущая версия на 06:54, 9 сентября 2015

Ted Unangst (tedu@) представил doas — «легкую» замену sudo в OpenBSD, поддерживающую только основные функции. Начиная с OpenBSD 5.8, doas входит в состав базовой системы. Использовать doas очень просто, достаточно создать файл конфигурации /etc/doas.conf.

  • Либеральная OpenBSD система:
    permit nopass keepenv { ENV PS1 SSH_AUTH_SOCK } :wheel
    Пользователи из группы wheel выполняют команды как root (используется по умолчанию, если не указан иной пользователь). Разрешено запускать любые команды без запроса пароля, значения переменных ENV, PS1 и SSH_AUTH_SOCK наследуются.
  • То же, что и выше, но с запросом пароля пользователя:
    permit keepenv {ENV PS1 SSH_AUTH_SOCK} :wheel
  • Разрешает пользователю bob выполнить /bin/sh как fred:
    permit bob as fred cmd /bin/sh
  • Запретить всё пользователям группы wheel:
    deny :wheel


Правила в doas.conf читаются сверху вниз, поэтому если запрещающее правило следует сразу за разрешающим, то разрешающее будет действовать, так как имеет приоритет. Кроме того, doas.conf должен завершаться пустой строкой.


По мотивам