Doas
doas
は、OpenBSDをはじめとするUnix系システムにおいて、ユーザーが管理者権限を一時的に取得するためのツールです。sudo
と似たような機能を持ちますが、よりシンプルでセキュアな設計がされています。本書では、doas
の設定方法や使用方法について詳しく解説します。
doasの概要
編集doas
は、Unix系オペレーティングシステムで利用可能な、シンプルな権限昇格ツールです。主に管理者権限を一時的に得るために使用され、特定のユーザーに root
権限を一時的に与えることができます。doas
は、sudo
よりも設定が簡素であり、セキュリティ面で優れているとされています。
インストール
編集doas
は、多くのUnix系システムで利用可能です。OpenBSDには標準でインストールされていますが、他のシステムではインストールが必要です。
OpenBSD
編集OpenBSDでは、doas
はデフォルトでインストールされています。特別な手順は必要ありません。
FreeBSD
編集FreeBSDに doas
をインストールするには、以下のコマンドを使用します。
# pkg install doas
または、Portsコレクションを使用してインストールすることも可能です。
# cd /usr/ports/security/doas && make install clean
Linuxのディストリビューション
編集Debian/Ubuntu系では、以下のコマンドでインストールできます。
sudo apt-get install doas
Red Hat系(Fedora、CentOS、RHEL)では、以下のコマンドでインストールできます。
sudo dnf install doas
doas.confの設定
編集doas.conf
は、doas
の設定ファイルで、ユーザーやグループにどのコマンドの実行を許可するか、またパスワードの要求の有無などを設定するファイルです。
基本的な設定例
編集doas.conf
ファイルは通常 /etc/doas.conf
にあります(例外もあります。例えば、FreeBSDでは /usr/local/etc/doas.conf
にあります)。以下は基本的な設定例です。
# ユーザー 'username' に root 権限を付与 permit username as root # wheel グループに属するユーザーに root 権限を付与 permit :wheel as root # doas グループに属するユーザーにパスワードなしで root 権限を付与 permit nopass :doas as root
設定項目の解説
編集permit
: 権限を付与するコマンドです。nopass
: パスワードを求めない設定です。:wheel
:wheel
グループに属するユーザーに対して適用されます。as root
: コマンドをroot
権限で実行できるようにします。
doasの使用方法
編集doas
を使用してコマンドを実行するには、次のようにします。
doas コマンド
例えば、doas
を使ってシステムの更新を行う場合は次のようにします。
doas pkg_add -u
このコマンドは、root
権限でシステムのパッケージを更新します。
セキュリティ設定
編集doas
を適切に設定することは、システムのセキュリティを保つために重要です。次のポイントに留意してください。
- グループ制限:
doas
でroot
権限を与えるユーザーやグループを最小限に絞り、必要なユーザーのみにアクセスを許可しましょう。 - パスワード要求:
nopass
を設定する際は、慎重に使用しましょう。パスワードなしでの実行はセキュリティリスクを高める場合があります。
トラブルシューティング
編集doas
に関するトラブルシューティングの際は、まず設定ファイル /etc/doas.conf
を確認し、以下の点をチェックしましょう。
- 設定ミス: 設定ファイルに誤った構文がないか確認してください。
- パーミッションエラー:
doas.conf
のパーミッションが正しく設定されているか確認します(通常、600
が推奨されます)。
設定ファイルを変更した後、doas
を使用する前にシステムを再起動するか、設定を再読み込みすることを忘れないでください。