Introdução às doas no OpenBSD

fundo

A alternativa do OpenBSD sudoé doas, embora não funcione da mesma maneira que o sudo e exija alguma configuração. É um acrônimo para "subexecutor de aplicativo openbsd dedicado". O OpenBSD 5.8, lançado em 2015, foi o primeiro a incluir doas. Foi criado por Ted Unangst depois que ele ficou insatisfeito com a complexidade do sudo e teve problemas com a configuração padrão do sudo.

O doascomando é simples por design e não contém recursos avançados necessários para infra-estruturas de sysadmin elaboradas. Para a maioria das pessoas, é mais do que suficiente. Se você precisar sudo, instale-o pkg_add sudocomo root.

Instalação

O OpenBSD versão 5.8 e posterior foram doaspré - instalados.

Configuração

Para dar acesso aos usuários no grupo de rodadoas , adicione o seguinte a /etc/doas.conf. Você precisará de acesso root para editar este arquivo.

permit :wheel

Isso dará a todos os usuários do grupo roda permissão para executar comandos como qualquer usuário.

Se você deseja que os usuários possam digitar sua senha uma vez, não precisa digitá-la por um tempo, use a persistopção Aqui está um exemplo que concede permissões apenas ao grupo de roda:

permit persist :wheel

Em vez disso, você pode usar a nopassopção se desejar que eles nunca precisem digitar sua senha:

permit nopass :wheel

Se você deseja que o usuário "mynewuser" tenha direitos de administrador, adicione-os ao grupo de roda executando usermod -G wheel mynewusercomo root ou adicione uma linha ao seu, /etc/doas.confpara que se pareça com o seguinte:

permit nopass :wheel
permit nopass mynewuser

Este exemplo pressupõe que você não precisa que seus usuários insiram uma senha ao usar doas. Se você deseja configurá-lo para que mynewuser só tenha permissão para executar comandos como o usuário www, a configuração será a seguinte:

permit nopass :wheel
permit nopass mynewuser as www

Se você deseja que o mynewuser possa usar apenas o comando "vim" com doas, use a seguinte configuração:

permit nopass :wheel
permit nopass mynewuser as www cmd vim

Existem outras opções de configuração, mas as abordadas aqui são as mais comuns. Se você quiser ler mais, pode usar o comando man doas.confpara ler a página de manual doas.conf (5).

Testando arquivos de configuração

Para testar um arquivo de configuração, use o doas -C /etc/doas.confcomando Se você fornecer um comando posteriormente, por exemplo doas -C /etc/doas.conf vim, ele informará se você tem permissão para executar um comando ou não, sem tentar executá-lo.

Uso

Um usuário pode executar o comando echo "test"como root usando o comando: doas echo "test"

Um usuário que possui permissões para usar doas para se elevar ao usuário "www" pode executar o comando vim /var/www/http/index.htmlcomo o usuário "www" usando o comando: doas -u www vim index.html Isso é útil para alguém que gerencia o servidor da Web, mas não possui permissões completas de superusuário.

Melhores Práticas

É altamente recomendável usar permissão em vez de negar sempre que possível. Se você negar que um usuário use um comando específico, ele poderá usar um caminho ou nome alternativo para esse comando, se ele existir. Eles também podem copiar o executável do comando para o diretório inicial e, em seguida, executá-lo, derrotando o sistema de permissões.

De um modo geral, é melhor usar doas do que su, porque ninguém precisa compartilhar a senha root. Não há chance de alguém alterá-lo, esquecê-lo e bloquear todos fora do sistema se todos usarem sua própria senha para acesso root. Os logs são mantidos /var/log/secure.

Dicas e truques

Você pode manter todas as suas variáveis ​​de ambiente com keepenv, o que é útil se você tiver seu editor definido como algo e não quiser que ele mude quando se tornar outro usuário. Aqui está um exemplo com mynewuser:

permit nopass keepenv mynewuser

Às vezes, há situações em que a substituição de todas as variáveis ​​de ambiente pode quebrar as coisas, mas com o setenv, você pode escolher quais devem ser transportadas. Aqui está um exemplo que manterá seu editor definido para o que você deseja usar com o git e outras coisas.

permit nopass setenv { VISUAL EDITOR } mynewuser

Você também pode usar o setenv para remover variáveis ​​de ambiente (colocando um traço antes de cada uma que você deseja remover) ou configurá-las para itens específicos com um sinal de igual. Por exemplo, se você quisesse remover a variável de ambiente VISUAL e configurar EDITOR para vim, usaria esta linha de configuração:

permit nopass setenv { -VISUAL EDITOR=vim } mynewuser

Se a doassua senha foi lembrada, você pode fazer doas -Lisso para esquecer a senha.



Leave a Comment

Como instalar o Blacklistd no FreeBSD 11.1

Como instalar o Blacklistd no FreeBSD 11.1

Introdução Qualquer serviço conectado à Internet é um alvo em potencial para ataques de força bruta ou acesso injustificado. Existem ferramentas como fail2ba

Configure o OpenBSD 5.6 com criptografia de disco completo

Configure o OpenBSD 5.6 com criptografia de disco completo

Este tutorial mostrará como configurar o OpenBSD 5.6 com um disco totalmente criptografado no seu Vultr VPS. Uma observação sobre a parte de criptografia: a maioria dos datacenters em torno do

Como usar o Sudo no Debian, CentOS e FreeBSD

Como usar o Sudo no Debian, CentOS e FreeBSD

Usar um usuário sudo para acessar um servidor e executar comandos no nível raiz é uma prática muito comum entre o Linux e o Unix Systems Administrator. O uso de um sud

Como instalar o osTicket no FreeBSD 12

Como instalar o osTicket no FreeBSD 12

Usando um sistema diferente? o osTicket é um sistema de bilheteria de suporte ao cliente de código aberto. O código fonte do osTicket está hospedado publicamente no Github. Neste tutorial

Como instalar o Osclass no FreeBSD 12

Como instalar o Osclass no FreeBSD 12

Usando um sistema diferente? Osclass é um projeto de código aberto que permite criar facilmente um site classificado sem nenhum conhecimento técnico. Its sourc

Como instalar o Wiki.js no FreeBSD 11

Como instalar o Wiki.js no FreeBSD 11

Usando um sistema diferente? O Wiki.js é um aplicativo wiki moderno, de código aberto e gratuito, construído em Node.js, MongoDB, Git e Markdown. O código-fonte do Wiki.js é publicl

Como instalar o Directus 6.4 CMS em um FreeBSD 11 FAMP VPS

Como instalar o Directus 6.4 CMS em um FreeBSD 11 FAMP VPS

Usando um sistema diferente? O Directus 6.4 CMS é um sistema de gerenciamento de conteúdo sem cabeça (CMS) poderoso e flexível, gratuito e de código aberto que fornece

Instalando o Fork CMS no FreeBSD 12

Instalando o Fork CMS no FreeBSD 12

Usando um sistema diferente? Fork é um CMS de código aberto escrito em PHP. O código fonte do Forks está hospedado no GitHub. Este guia mostra como instalar o Fork CM

Criar arquivo de permuta no FreeBSD 10

Criar arquivo de permuta no FreeBSD 10

Pronto para uso, os servidores Vultr FreeBSD não estão configurados para incluir espaço de troca. Se sua intenção é uma instância de nuvem descartável, você provavelmente não precisará

Como redimensionar um disco no FreeBSD

Como redimensionar um disco no FreeBSD

O sistema operacional FreeBSD utiliza o UFS (Unix File System) para seu sistema de arquivos de partições raiz; também conhecido como freebsd-ufs No caso de uma atualização

Como instalar o Selfoss RSS Reader em um FreeBSD 11 FAMP VPS

Como instalar o Selfoss RSS Reader em um FreeBSD 11 FAMP VPS

Usando um sistema diferente? O Selfoss RSS Reader é um aplicativo gratuito e de código aberto, multi-hospedado na Web, de transmissão ao vivo, mashup e feed de notícias (RSS / Atom)

Como instalar o Craft CMS no FreeBSD 12

Como instalar o Craft CMS no FreeBSD 12

Usando um sistema diferente? Introdução O Craft CMS é um CMS de código aberto escrito em PHP. O código-fonte do Craft CMS está hospedado no GitHub. Este guia irá mostrar-lhe

Como instalar o Backdrop CMS em um FreeBSD 11 FAMP VPS

Como instalar o Backdrop CMS em um FreeBSD 11 FAMP VPS

Usando um sistema diferente? O Backdrop CMS 1.8.0 é um CMS (Content Management System) simples e flexível, fácil de usar, gratuito e de código aberto que permite que

Como instalar o ImpressPages CMS 5.0 em um FreeBSD 11 FAMP VPS

Como instalar o ImpressPages CMS 5.0 em um FreeBSD 11 FAMP VPS

Usando um sistema diferente? O ImpressPages CMS 5.0 é um sistema de gerenciamento de conteúdo (CMS) simples e eficaz, gratuito e de código aberto, fácil de usar e baseado em MVC

Como instalar o fórum NodeBB no FreeBSD 12

Como instalar o fórum NodeBB no FreeBSD 12

Usando um sistema diferente? NodeBB é um software de fórum baseado em Node.js. Ele utiliza soquetes da web para interações instantâneas e notificações em tempo real. The NodeB

Instale o eSpeak no FreeBSD 12

Instale o eSpeak no FreeBSD 12

Usando um sistema diferente? O ESpeak pode gerar arquivos de áudio de conversão de texto em fala (TTS). Isso pode ser útil por vários motivos, como criar seu próprio Turim

Como instalar o LimeSurvey CE no FreeBSD 12

Como instalar o LimeSurvey CE no FreeBSD 12

Usando um sistema diferente? LimeSurvey é um software de pesquisa de código aberto escrito em PHP. O código fonte do LimeSurvey está hospedado no GitHub. Este guia irá mostrar-lhe

Como instalar o Automad CMS no FreeBSD 12

Como instalar o Automad CMS no FreeBSD 12

Usando um sistema diferente? Automad é um sistema de gerenciamento de conteúdo (CMS) baseado em arquivo de código aberto e um mecanismo de modelo escrito em PHP. O código-fonte Automad i

Como instalar o ProcessWire CMS 3.0 em um FreeBSD 11 FAMP VPS

Como instalar o ProcessWire CMS 3.0 em um FreeBSD 11 FAMP VPS

Usando um sistema diferente? O ProcessWire CMS 3.0 é um CMS (Content Management System) simples, flexível e poderoso, de código aberto e gratuito. ProcessWire CMS 3.

Instalando o Akaunting no FreeBSD 12

Instalando o Akaunting no FreeBSD 12

Usando um sistema diferente? Introdução O Akaunting é um software de contabilidade on-line gratuito e de código aberto desenvolvido para pequenas empresas e freelancers. É eu

A IA pode lutar contra o aumento do número de ataques de ransomware

A IA pode lutar contra o aumento do número de ataques de ransomware

Os ataques de ransomware estão aumentando, mas a IA pode ajudar a lidar com os vírus de computador mais recentes? AI é a resposta? Leia aqui para saber se é AI boone ou bane

ReactOS: Este é o futuro do Windows?

ReactOS: Este é o futuro do Windows?

ReactOS, um sistema operacional de código aberto e gratuito está aqui com a versão mais recente. Será que ela pode atender às necessidades dos usuários modernos do Windows e derrubar a Microsoft? Vamos descobrir mais sobre esse estilo antigo, mas uma experiência de sistema operacional mais recente.

Fique conectado por meio do aplicativo WhatsApp Desktop 24 * 7

Fique conectado por meio do aplicativo WhatsApp Desktop 24 * 7

O Whatsapp finalmente lançou o aplicativo Desktop para usuários de Mac e Windows. Agora você pode acessar o Whatsapp do Windows ou Mac facilmente. Disponível para Windows 8+ e Mac OS 10.9+

Como a IA pode levar a automação de processos ao próximo nível?

Como a IA pode levar a automação de processos ao próximo nível?

Leia isto para saber como a Inteligência Artificial está se tornando popular entre as empresas de pequena escala e como está aumentando as probabilidades de fazê-las crescer e dar vantagem a seus concorrentes.

A atualização do suplemento do macOS Catalina 10.15.4 está causando mais problemas do que resolvendo

A atualização do suplemento do macOS Catalina 10.15.4 está causando mais problemas do que resolvendo

Recentemente, a Apple lançou o macOS Catalina 10.15.4, uma atualização suplementar para corrigir problemas, mas parece que a atualização está causando mais problemas, levando ao bloqueio de máquinas mac. Leia este artigo para saber mais

13 Ferramentas de Extração de Dados Comerciais de Big Data

13 Ferramentas de Extração de Dados Comerciais de Big Data

13 Ferramentas de Extração de Dados Comerciais de Big Data

O que é um sistema de arquivos de registro no diário e como ele funciona?

O que é um sistema de arquivos de registro no diário e como ele funciona?

Nosso computador armazena todos os dados de uma maneira organizada conhecida como sistema de arquivos Journaling. É um método eficiente que permite ao computador pesquisar e exibir arquivos assim que você clicar em search.https: //wethegeek.com/? P = 94116 & preview = true

Singularidade tecnológica: um futuro distante da civilização humana?

Singularidade tecnológica: um futuro distante da civilização humana?

À medida que a ciência evolui em um ritmo rápido, assumindo muitos de nossos esforços, os riscos de nos sujeitarmos a uma singularidade inexplicável também aumentam. Leia, o que a singularidade pode significar para nós.

Uma visão sobre 26 técnicas analíticas de Big Data: Parte 1

Uma visão sobre 26 técnicas analíticas de Big Data: Parte 1

Uma visão sobre 26 técnicas analíticas de Big Data: Parte 1

O impacto da inteligência artificial na saúde 2021

O impacto da inteligência artificial na saúde 2021

A IA na área da saúde deu grandes saltos nas últimas décadas. Portanto, o futuro da IA ​​na área da saúde ainda está crescendo dia a dia.