sudo 1.8.x ブランチが結成されてから 9 年が経過し、他のユーザーに代わってコマンドを実行するために使用されるユーティリティの重要な新バージョンがリリースされることが発表されました。新バージョンは「sudo 1.9.0」であり、これは新しいブランチの始まりでもあります。
sudoは、 Linux、BSD、Mac OS XなどのUnix系オペレーティングシステムにおいて最も重要かつ広く使用されているユーティリティです。なぜなら、前述のとおり、sudoを使用することで、ユーザーは他のユーザー(通常はrootユーザー)のセキュリティ権限でプログラムを安全に実行でき、一時的にスーパーユーザーになることができるからです。
デフォルトでは、sudoを実行する際にユーザーはパスワードで認証する必要があります。ユーザーが認証され、かつ/etc/sudoers設定ファイルで必要なコマンドへのアクセスが許可されている場合、システムはそのコマンドを実行します。
コマンド実行時にユーザーパスワードの入力を省略するために、NOPASSWD パラメータを有効にするオプションがあります。/etc/sudoers 設定ファイルでは、どのユーザーがどのコマンドを他のユーザーに代わって実行できるかを指定します。
sudoはこのファイルの形式に非常に厳密であり、エラーが発生すると深刻な問題が発生する可能性があるため、visudoユーティリティがあります。 このオプションは、/ etc / sudoersファイルがrootユーザーの別のセッションから使用されていないことを確認するために使用されます。これにより、ファイルが破損する可能性のあるマルチ編集を回避できます。
Sudo1.9.0の主な新機能
この新しいバージョンでは、他のシステムのログを一元管理するために設計されたバックグラウンドプロセス「sudo_logsrvd」をシステムに提供するための作業が強調されています。`sudo` を ` --enable-openssl`オプションとともに使用することで、データは暗号化された通信チャネル (TLS) を介して送信されます。
ログ記録はsudoersのlog_serversオプションを使用して設定され、新しいログ送信メカニズムのサポートを無効にするために、「 --disable-log-server 」と「--disable-log-client」オプションが追加されました。
さらに、成功した呼び出しと失敗した呼び出し、および発生したエラーに関するメッセージを送信する新しいタイプの「監査」プラグインが追加されました。また、標準機能に依存しない独自のログインコントローラを接続できる新しいタイプのプラグインも追加されました。たとえば、JSON形式でログを記録するコントローラはプラグインとして実装されています。
また、新しいタイプの「承認」プラグインが追加されました。これは、sudoersにおける基本的なルールベースの認証チェックが成功した後に、追加のチェックを実行します。このタイプのプラグインは複数設定ファイルに指定できますが、操作の確認は、設定ファイルにリストされているすべてのプラグインによって承認された場合にのみ発行されます。
`sudo` および`sudo_logsrvd`では、ホスト名を含む実行中のコマンドのすべてのパラメータに関する情報を反映した、JSON 形式の追加のログ ファイルが作成されます。このログは、ホスト名でコマンドをフィルタリングできる`sudoreplay`ユーティリティで使用されます。
SUDO_COMMAND環境変数を通して渡されるコマンドライン引数リストは、4096文字に切り詰められるようになりました。
今回の発表におけるその他の注目すべき変更点は以下のとおりです。
- sudo -Sコマンドは、端末制御デバイスにアクセスせずに、すべての要求を標準出力またはstderrに出力するようになりました。
- サーバーとの相互作用をテストしたり、既存のログを送信したりするために、sudo_sendlogユーティリティが提案されています。
- Pythonでsudoプラグインを開発する機能が追加されました。これは、コンパイル中にオプション«で有効になります。–有効-python"
- En スーダーズの代わりに Cmnd_Alias、Cmd_Alias 今ではそれも有効です。
- 新しい設定が追加されました pam_ruserおよびpam_rhost PAMを介してセッションを構成するときに、ユーザー名とホストの設定の構成を有効/無効にします。
- カンマ区切りのコマンドラインで複数のSHA-2ハッシュを指定することができます。 SHA-2ハッシュは、ハッシュが一致する場合にのみ実行できるコマンドを定義するために、「ALL」キーワードと組み合わせてsudoersで使用することもできます。