OpenBSDのdoasの概要

バックグラウンド

OpenBSDの代替sudoはですがdoas、sudoと同じようには機能せず、いくつかの設定が必要です。これは、「専用のopenbsdアプリケーションサブエグゼキュータ」の頭字語です。2015年にリリースされたOpenBSD 5.8が最初に組み込まれましたdoas。Ted Unangstは、sudoの複雑さに不満があり、デフォルトのsudo構成に問題があった後に作成されました。

このdoasコマンドは設計上単純であり、複雑なsysadminインフラストラクチャに必要な高度な機能は含まれていません。ほとんどの人にとって、それは十分すぎるほどです。必要な場合sudopkg_add sudo、ルートとしてインストールしてください。

取り付け

OpenBSDバージョン5.8以降がdoasプリインストールされています。

構成

wheelグループのユーザーにへのアクセスを許可するdoasには、に以下を追加します/etc/doas.conf。このファイルを編集するには、rootアクセスが必要です。

permit :wheel

これにより、wheelグループのすべてのユーザーに、任意のユーザーとしてコマンドを実行する権限が付与されます。

ユーザーが一度パスワードを入力できるようにして、しばらくの間パスワードを入力する必要がないようにする場合は、persistオプションを使用します。次に、wheelグループにのみ権限を付与する例を示します。

permit persist :wheel

nopassパスワードを入力する必要がないようにする場合は、代わりにオプションを使用できます。

permit nopass :wheel

ユーザー「mynewuser」に管理者権限を持たせたい場合は、usermod -G wheel mynewuserrootとして実行してユーザーをwheelグループに追加するか/etc/doas.conf、次のように行を追加してください。

permit nopass :wheel
permit nopass mynewuser

この例では、を使用するときにユーザーがパスワードを入力する必要がないことを前提としていますdoas。mynewuserがwwwユーザーとしてのみコマンドの実行を許可されるように設定する場合、構成は次のようになります。

permit nopass :wheel
permit nopass mynewuser as www

mynewuserがdoasで "vim"コマンドのみを使用できるようにするには、次の構成を使用します。

permit nopass :wheel
permit nopass mynewuser as www cmd vim

他にも設定オプションがありますが、ここで取り上げているものが最も一般的です。詳細については、コマンドman doas.confを使用してdoas.conf(5)のマンページを参照してください。

構成ファイルのテスト

構成ファイルをテストするには、doas -C /etc/doas.confコマンドを使用します。後でdoas -C /etc/doas.conf vimコマンドを指定すると、コマンドを実行することなく、コマンドを実行する権限があるかどうかがわかります。

使用法

ユーザーは、次のコマンドecho "test"を使用してrootとしてコマンドを実行できます。 doas echo "test"

doasを使用してユーザー「www」に昇格する権限を持つユーザーは、コマンドvim /var/www/http/index.htmlを使用してユーザー「www」としてコマンドを実行できます。 doas -u www vim index.html これは、Webサーバーを管理しているが、完全なスーパーユーザー権限を持っていないユーザーに役立ちます。

ベストプラクティス

可能であれば、拒否の代わりに許可を使用することを強くお勧めします。ユーザーが特定のコマンドの使用を拒否した場合、そのコマンドの代替パスまたは名前が存在する場合、そのコマンドを使用することで回避できる可能性があります。また、コマンドの実行可能ファイルをホームディレクトリにコピーし、その実行可能ファイルを実行して、権限システムを無効にすることもできます。

一般に、rootパスワードを共有する必要がないため、suを使用するよりもdoasを使用する方が適切です。誰もがrootアクセスに自分のパスワードを使用している場合、誰かがそれを変更し、忘れ、システムからロックアウトする可能性はありません。ログはに保持され/var/log/secureます。

ヒントとコツ

keepenvを使用してすべての環境変数を保持できます。これは、エディターを何かに設定していて、別のユーザーになったときに変更したくない場合に役立ちます。以下はmynewuserの例です:

permit nopass keepenv mynewuser

すべての環境変数を上書きすると問題が発生する場合がありますが、setenvを使用すると、引き継ぐ変数を選択できます。以下は、エディターをgitなどで使用したいものに設定しておく例です。

permit nopass setenv { VISUAL EDITOR } mynewuser

また、setenvを使用して環境変数を削除する(削除する変数の前にダッシュを付ける)か、等号で特定のものに設定することもできます。たとえば、環境変数VISUALを削除してEDITORをvimに設定する場合は、次の構成行を使用します。

permit nopass setenv { -VISUAL EDITOR=vim } mynewuser

doasパスワードを覚えている場合はdoas -L、パスワードを忘れさせることができます。



Leave a Comment

ヘルスケア2021における人工知能の影響

ヘルスケア2021における人工知能の影響

ヘルスケアにおけるAIは、過去数十年から大きな飛躍を遂げました。したがって、ヘルスケアにおけるAIの未来は、日々成長を続けています。

macOS Catalina 10.15.4サプリメントの更新により、解決するよりも多くの問題が発生しています

macOS Catalina 10.15.4サプリメントの更新により、解決するよりも多くの問題が発生しています

最近、Appleは問題を修正するための補足アップデートであるmacOS Catalina 10.15.4をリリースしましたが、このアップデートにより、Macマシンのブリックにつながる問題がさらに発生しているようです。詳細については、この記事をお読みください

原子力が必ずしも悪ではないことを証明する5つの例

原子力が必ずしも悪ではないことを証明する5つの例

原子力は、過去の出来事のために私たちが決して尊重しないことを常に軽蔑していますが、それは必ずしも悪ではありません。詳細については、投稿をお読みください。

AIはどのようにしてプロセス自動化を次のレベルに引き上げることができますか?

AIはどのようにしてプロセス自動化を次のレベルに引き上げることができますか?

これを読んで、人工知能が小規模企業の間でどのように人気を博しているか、そして人工知能がどのように成長し、競合他社に優位に立つ可能性を高めているかを理解してください。

ジャーナリングファイルシステムとは何ですか、そしてそれはどのように機能しますか?

ジャーナリングファイルシステムとは何ですか、そしてそれはどのように機能しますか?

私たちのコンピューターは、ジャーナリングファイルシステムと呼ばれる組織化された方法ですべてのデータを保存します。これは、検索を押すとすぐにコンピューターがファイルを検索して表示できるようにする効率的な方法です。https://wethegeek.com/?p = 94116&preview = true

ビッグデータは人工知能をどのように変えていますか?

ビッグデータは人工知能をどのように変えていますか?

ビッグデータと人工知能は流行語ですが、それらがどのように相互に関連しているか知っていますか?さて、この記事を最後まで読んで、同じことを知ってください。

LiteCartショッピングカートプラットフォームをUbuntu 16.04にインストールする方法

LiteCartショッピングカートプラットフォームをUbuntu 16.04にインストールする方法

LiteCartは、PHP、jQuery、およびHTML 5で記述された無料のオープンソースのショッピングカートプラットフォームです。シンプルで軽量、使いやすいeコマースソフトウォー

DebianでNFS共有をセットアップする

DebianでNFS共有をセットアップする

NFSはネットワークベースのファイルシステムであり、コンピューターはコンピューターネットワークを介してファイルにアクセスできます。このガイドでは、NFを介してフォルダーを公開する方法について説明します

Fedora 28にMatomo Analyticsをインストールする方法

Fedora 28にMatomo Analyticsをインストールする方法

別のシステムを使用していますか?Matomo(旧Piwik)は、Google Analyticsのオープンな代替手段であるオープンソースの分析プラットフォームです。Matomoのソースはoでホストされています

UbuntuでNginxをセットアップしてライブHLSビデオをストリーミングする

UbuntuでNginxをセットアップしてライブHLSビデオをストリーミングする

HTTPライブストリーミング(HLS)は、Apple Inc.によって実装された非常に堅牢なストリーミングビデオプロトコルです。HLSは、ファイアウォール、プロキシ、