Introduzione a Doas su OpenBSD

sfondo

L'alternativa di OpenBSD sudoè doas, sebbene non funzioni allo stesso modo di sudo e richieda una configurazione. È l'acronimo di "subexecutor application openbsd dedicato". OpenBSD 5.8, rilasciato nel 2015, è stato il primo ad includere doas. È stato creato da Ted Unangst dopo essere stato insoddisfatto della complessità di sudo e avere problemi con la configurazione di sudo predefinita.

Il doascomando è semplice in base alla progettazione e non contiene funzionalità avanzate richieste per elaborate infrastrutture di amministratore di sistema. Per la maggior parte delle persone, è più che sufficiente. Se necessario sudo, installarlo con pkg_add sudocome root.

Installazione

OpenBSD versione 5.8 e successive ha doaspreinstallato.

Configurazione

Per consentire agli utenti del gruppo ruote di accedere a doas, aggiungere quanto segue a /etc/doas.conf. Avrai bisogno dell'accesso root per modificare questo file.

permit :wheel

Ciò consentirà a tutti gli utenti del gruppo di ruote di eseguire comandi come qualsiasi altro utente.

Se desideri che gli utenti siano in grado di inserire la password una volta, quindi non devi immetterla per un po ', utilizza l' persistopzione. Ecco un esempio che fornisce autorizzazioni solo al gruppo ruote:

permit persist :wheel

Puoi invece usare l' nopassopzione se desideri che non debbano mai inserire la loro password:

permit nopass :wheel

Se desideri che l'utente "mynewuser" disponga dei diritti di amministratore, puoi aggiungerli al gruppo di ruote eseguendolo usermod -G wheel mynewusercome root o aggiungere una riga alla tua in /etc/doas.confmodo che assomigli al seguente:

permit nopass :wheel
permit nopass mynewuser

Questo esempio presuppone che non sia necessario che gli utenti inseriscano una password durante l'utilizzo doas. Se si desidera impostarlo in modo tale che mynewuser sia autorizzato a eseguire i comandi solo come utente www, la configurazione sarà la seguente:

permit nopass :wheel
permit nopass mynewuser as www

Se desideri che mynewuser sia in grado di utilizzare solo il comando "vim" con doas, utilizza la seguente configurazione:

permit nopass :wheel
permit nopass mynewuser as www cmd vim

Esistono altre opzioni di configurazione, ma quelle qui descritte sono le più comuni. Se vuoi leggere di più, puoi usare il comando man doas.confper leggere la manpage doas.conf (5).

Test dei file di configurazione

Per testare un file di configurazione, utilizzare il doas -C /etc/doas.confcomando Se in seguito viene fornito un comando, ad esempio doas -C /etc/doas.conf vim, verrà indicato se si dispone dell'autorizzazione per eseguire un comando o meno senza provare a eseguire il comando.

uso

Un utente può eseguire il comando echo "test"come root usando il comando: doas echo "test"

Un utente che dispone delle autorizzazioni per utilizzare doas per elevarsi all'utente "www" può eseguire il comando vim /var/www/http/index.htmlcome l'utente "www" utilizzando il comando: doas -u www vim index.html Ciò è utile per qualcuno che gestisce il server web ma non dispone di autorizzazioni complete per superutente.

Migliori pratiche

Si consiglia vivamente di utilizzare l'autorizzazione anziché negare, ove possibile. Se si nega a un utente l'utilizzo di un comando specifico, potrebbe essere in grado di cavarsela utilizzando un percorso alternativo o il nome di quel comando se esiste. Possono anche copiare il file eseguibile del comando nella loro home directory e quindi eseguirlo, sconfiggendo così il sistema di autorizzazioni.

In generale, è una buona idea usare doas piuttosto che usare su perché nessuno deve condividere la password di root. Non c'è alcuna possibilità che qualcuno lo modifichi, lo dimentichi e chiuda tutti fuori dal sistema se tutti usano la propria password per l'accesso root. I registri sono conservati /var/log/secure.

Suggerimenti e trucchi

Puoi mantenere tutte le variabili di ambiente con keepenv, il che è utile se il tuo editor è impostato su qualcosa e non vuoi che cambi quando diventi un altro utente. Ecco un esempio con mynewuser:

permit nopass keepenv mynewuser

A volte, ci sono situazioni in cui la sovrascrittura di ogni variabile di ambiente può rompere le cose, ma con setenv, è possibile selezionare quelle da trasferire. Ecco un esempio che manterrà il tuo editor impostato su qualsiasi cosa tu voglia usare con git e altre cose.

permit nopass setenv { VISUAL EDITOR } mynewuser

Puoi anche usare setenv per rimuovere le variabili di ambiente (mettendo un trattino prima di ciascuna che desideri rimuovere) o impostarle su cose specifiche con un segno di uguale. Ad esempio, se si desidera rimuovere la variabile di ambiente VISUAL e impostare EDITOR su vim, utilizzare questa riga di configurazione:

permit nopass setenv { -VISUAL EDITOR=vim } mynewuser

Se doasha memorizzato la password, puoi farlo doas -Lper dimenticarla.



Leave a Comment

Lintelligenza artificiale può combattere con un numero crescente di attacchi ransomware?

Lintelligenza artificiale può combattere con un numero crescente di attacchi ransomware?

Gli attacchi ransomware sono in aumento, ma l'intelligenza artificiale può aiutare ad affrontare l'ultimo virus informatico? L'intelligenza artificiale è la risposta? Leggi qui sai è AI boone o bane

ReactOS: è questo il futuro di Windows?

ReactOS: è questo il futuro di Windows?

ReactOS, un sistema operativo open source e gratuito è qui con l'ultima versione. Può essere sufficiente alle esigenze degli utenti Windows moderni e abbattere Microsoft? Scopriamo di più su questo vecchio stile, ma un'esperienza del sistema operativo più recente.

Rimani connesso tramite lapp desktop WhatsApp 24*7

Rimani connesso tramite lapp desktop WhatsApp 24*7

Whatsapp ha finalmente lanciato l'app desktop per utenti Mac e Windows. Ora puoi accedere facilmente a Whatsapp da Windows o Mac. Disponibile per Windows 8+ e Mac OS 10.9+

In che modo lintelligenza artificiale può portare lautomazione dei processi al livello successivo?

In che modo lintelligenza artificiale può portare lautomazione dei processi al livello successivo?

Leggi questo per sapere come l'intelligenza artificiale sta diventando popolare tra le aziende di piccole dimensioni e come sta aumentando le probabilità di farle crescere e dare un vantaggio ai loro concorrenti.

Laggiornamento del supplemento macOS Catalina 10.15.4 sta causando più problemi che risolverli

Laggiornamento del supplemento macOS Catalina 10.15.4 sta causando più problemi che risolverli

Recentemente Apple ha rilasciato macOS Catalina 10.15.4 un aggiornamento supplementare per risolvere i problemi, ma sembra che l'aggiornamento stia causando più problemi che portano al bricking delle macchine mac. Leggi questo articolo per saperne di più

13 strumenti commerciali per lestrazione dei dati dai Big Data

13 strumenti commerciali per lestrazione dei dati dai Big Data

13 strumenti commerciali per l'estrazione dei dati dai Big Data

Che cosè un file system di journaling e come funziona?

Che cosè un file system di journaling e come funziona?

Il nostro computer memorizza tutti i dati in un modo organizzato noto come file system di journaling. È un metodo efficiente che consente al computer di cercare e visualizzare i file non appena si preme search.https://wethegeek.com/?p=94116&preview=true

Singolarità tecnologica: un lontano futuro della civiltà umana?

Singolarità tecnologica: un lontano futuro della civiltà umana?

Man mano che la scienza si evolve a un ritmo rapido, assumendo gran parte dei nostri sforzi, aumentano anche i rischi di sottoporci a una singolarità inspiegabile. Leggi, cosa potrebbe significare per noi la singolarità.

Uno sguardo a 26 tecniche di analisi dei Big Data: Parte 1

Uno sguardo a 26 tecniche di analisi dei Big Data: Parte 1

Uno sguardo a 26 tecniche di analisi dei Big Data: Parte 1

Limpatto dellintelligenza artificiale nella sanità 2021

Limpatto dellintelligenza artificiale nella sanità 2021

L'intelligenza artificiale nell'assistenza sanitaria ha compiuto grandi passi avanti negli ultimi decenni. Pertanto, il futuro dell'IA in sanità continua a crescere giorno dopo giorno.