Linux
 Computer >> コンピューター >  >> システム >> Linux

Doasとは何ですか?それをインストールする方法

Doasとは何ですか?それをインストールする方法

Doasは、sudoに似た特権昇格プログラムです。可能な限り軽量でシンプルになるように設計されています。これはOpenBSDのデフォルトの特権昇格プログラムですが、OpenDoasプログラムを介して他のUNIXライクなオペレーティングシステムでも利用できます。

sudoの問題

何年にもわたって、sudoはUNIXの世界で事実上の特権昇格プログラムになりました。ただし、これは、sudoがUNIXライクなマシンを使用しているすべての人のすべてのユースケースに対応する必要があることを意味します。プログラム開発におけるこのアプローチにより、sudoは理解しにくく、使いにくいプログラムになりました。

たとえば、sudoの動作を変更するには、visudoというコマンドを実行する必要があります。 。これは、「/ etc/sudoers」ファイルを「セーフモード」で開く特別なローダープログラムです。

Visudoは、いくつかのことを行います。「/ etc / sudoers」ファイルの構文エラーを定期的にチェックし、「/ etc / sudoers」ファイルをロックして、現在のユーザー以外がファイルを編集できないようにします。これらは表面的には役立つように見えるかもしれませんが、visudoはsudoの複雑さが増していることの兆候です。

Doasとは何ですか?それをインストールする方法

これは、sudoersファイルの構文が複雑になり、潜在的な構文エラーをチェックする必要が生じたことを意味します。これは、sudoがシングルユーザー環境とマルチユーザー環境の両方に対応する必要があることも意味します。したがって、現在のユーザーのsudoersファイルをロックする必要があります。

須藤は素晴らしいプログラムです。その複雑な構成構文により、経験豊富なシステム管理者に役立つ可能性のある複雑な権限システムを作成できます。

ただし、ほとんどのユーザーにとって、sudoを使用してルートシェルを実行し、プログラムをインストールしてシステムをいじくり回すだけです。したがって、Sudoの複雑さは、これらの場合の機能というよりも、むしろ障害のように見えます。

なぜdoasを使用するのですか?

Doasの目的は、sudoの複雑さを解決することです。これはOpenBSD用に開発され、ほぼすべてのLinuxシステムにすぐに移植されました。迅速で使いやすいだけでなく、保守とセキュリティも簡単であることを目指しています。

doasの構文もsudoとは異なります。設定は、平易な英語で書くのと似ています。たとえば、sudoでは、グループホイールのすべてのユーザーがパスワードなしでrootとして実行できるようにするための構文は次のとおりです。

%wheel ALL=(ALL) NOPASSWD: ALL

一方、doasでは、構文がはるかに理解しやすくなっています。

permit nopass :wheel as root
Doasとは何ですか?それをインストールする方法

さらに、doasは、その構成を変更するためにvisudoのような特別なローダープログラムを必要としません。ユーザーは任意のテキストエディタで構成ファイルを編集するだけでよく、ユーザーが十分な権限を持っている限り、構成を変更できます。

これにより、doasの理解と理解が容易になります。特権ユーザーとグループを作成するための単純でわかりやすいアプローチにより、ユーザーにとってプロセスが透過的でエラーが発生しなくなります。

sudoを使用してdoasを設定する方法

Linuxシステムを使用している場合は、特権昇格プログラムとしてすでにsudoを使用している可能性が高く、そのためdoasのインストールは比較的簡単です。

DebianとUbuntuでは、aptを使用してdoasをインストールできます:

sudo apt install doas

Arch Linuxでは、pacmanを使用できます:

sudo pacman -Syu opendoas

Fedoraでは、dnfを使用できます:

sudo dnf install opendoas

Void Linuxの場合、xbpsを使用できます:

sudo xbps-install opendoas

私の場合、Void Linuxにdoasをインストールしているので、XBPSを使用しています。

Doasとは何ですか?それをインストールする方法 doas構成ファイル

doasをインストールすると、suを使用してrootユーザーに切り替えることで、「/ etc/doas.conf」ファイルを編集できるようになります。

su --command="nano /etc/doas.conf"

Suはrootパスワードを要求し、その後、nanoを使用して構成ファイルを開くか作成します。

Doasとは何ですか?それをインストールする方法

完了すると、「doas.conf」が空になっていることに気付くかもしれません。これはvisudoとは完全に異なります。ただし、前に説明したように、doasの構成は比較的簡単です。

構成構文

doas.confの構文は次のとおりです。

permit|deny [options] identity [as target] [cmd command [args ...]]
  • 許可 および拒否 doasがルールを許可するかどうかを設定します。
  • オプション doasの追加構成です。通常のユーザーにとって最も便利なオプションは、永続化です。 およびnopass
  • アイデンティティ doasを実行しているユーザーまたはグループです。
  • として ターゲット 「ID」を実行できるユーザーと実行できないユーザーです。
  • cmd 「ID」が「ターゲットとして」実行できる、または実行できないコマンドです。デフォルトはすべてのプログラムですが、このフィールドで特定のプログラムを指定できます。
  • 引数 指定したコマンドに固有の引数です。

たとえば、次のように記述すると、wheelグループ内のすべてのユーザーがrootとしてコマンドを実行できるようになります。ルートシェルも、ウィンドウが閉じられるまで存続します。

permit persist :wheel as root

特定のコマンドの特定のユーザーのみを対象とするルールを作成することもできます。たとえば、次のルールを使用して、ユーザー「bob」がパスワードを要求せずにrootとして「apt」プログラムを実行できるようにすることができます。

permit nopass bob as root cmd apt

私の場合、グループ「wheel」をパスワードなしでrootとして実行したいと思います。また、wheelグループの一部であるユーザーagaにrootとしてコマンドを実行させたくありません。そのため、「/ etc/doas.conf」に次のように記述します。

permit nopass :wheel as root
deny aga as root
Doasとは何ですか?それをインストールする方法 構成後

その後、いくつかのコマンドを実行して、doasが意図したとおりに機能していることを確認する必要があります。まず、doas.confの所有者をrootに適切に設定する必要があります:

sudo chown -c root:root /etc/doas.conf

また、構成ファイルのファイル権限を0644に設定して、rootユーザーのみがファイルにアクセスできるようにする必要があります。

sudo chmod -c 0644 /etc/doas.conf

最後に、構成内の構文エラーがないかdoas自体をチェックする必要があります。これを行うには、次のコマンドを実行します。

sudo doas -C /etc/doas.conf && echo "OK" || echo "ERROR"
Doasとは何ですか?それをインストールする方法

おめでとう!これで、システムのdoasが正常にインストールおよび構成されました。これで、sudoの代わりにdoasを使用したり、doas.confファイルを好みに合わせて微調整したりできます。 Linuxでのシステム管理の詳細については、この記事を参照してください。

よくある質問

1。構成が機能していないようです。特定のユーザー向けのルールと一般的なルールを追加しましたが、ユーザー向けのルールが機能していないようです。

doas構成ファイルは、最も一般的なルールから最も具体的なルールまで機能します。構成を機能させるには、最初にすべてのユーザーに適用されるルールを指定する必要があります。次に、その下にある1人のユーザーを対象とするルールを指定できます。

2。 sudoとdoasを同じシステムに保持することは可能ですか?

はい! Doasとsudoは2つの異なるプログラムです。これらは互いに競合しないため、sudoをシステムに残して、doasを使用することは問題ありません。

3。 doasを使用してルートシェルを取得することは可能ですか?

はい、構成ファイルを適切に構成していれば可能です。 doas -sを実行すると、ルートシェルを開始できます。 。


  1. LinuxでMicrosoftDefenderをインストールして使用する方法

    企業外の多くのLinuxユーザーは、Linux上のMicrosoftツールのポイントを理解していないかもしれませんが、内部のユーザーは、それらが非常に貴重である可能性があることを理解しています。 Active Directoryおよび職場を引き継いだMicrosoftエコシステムの多くと統合する機能は、デスクトップLinuxにとって非常に大きなものであり、お気に入りのディストリビューションを職場でより実行可能なOSにすることができます。企業の最も重要な部分の1つは、セキュリティです。このチュートリアルでは、LinuxにMicrosoft Defenderをインストールして使用し、IT部門がマシ

  2. BIOS とは? BIOS の更新方法は?

    BIOS とは何か、および BIOS を更新する方法: お使いの PC で、キーボード、電源、またはインターネット接続、PC の速度などのソフトウェアに関連する問題に直面するときはいつでも、ほとんどの場合、問題は何らかの方法で BIOS に関連しています。同じことに関して修理担当者または IT 担当者に相談すると、さらなるトラブルシューティングを行う前に、BIOS を更新するよう提案または指示されます。多くの場合、BIOS を更新するだけで問題が解決するため、それ以上のトラブルシューティングは必要ありません。