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 を使用する前にシステムを再起動するか、設定を再読み込みすることを忘れないでください。