MinikubeがPodmanにパスワードのないsudoを要求するのはなぜですか。

MinikubeがPodmanにパスワードのないsudoを要求するのはなぜですか。

Minikubeが指定する

Podmanではsudoをパスワードなしで実行する必要があります。 sudo のエラーが発生した場合は、次のようにします。

彼らは追加を提案します

username ALL=(ALL) NOPASSWD: /usr/bin/podman

しかし、これは今できるように非常に安全ではありません。

sudo podman run -ti -v /etc/shadow:/etc/shadow:rw alpine:3 /bin/sh

そして認証する必要もありません。

この要件が適用されるのはなぜですか?代替案はありますか?

答え1

この要件はアプリケーションから呼び出されるため適用されますsudo podman。 minikubeは、権限のないユーザーがアプリケーションを実行することを期待し、root権限を必要とするため、minikubeSudoはそのために設計されていません。 。

あるいは、root権限を必要とするほとんどのアプリケーションは起動時にrootであるかどうかを検出し、root以外の場合は失敗します。例:

$ dpkg -i *.deb
dpkg: error: requested operation requires superuser privilege
$ mount /dev/sda /mnt
mount: /mnt: must be superuser to use mount.

aptsudoerにパスワードのない項目を入れてから、ユーザーの明示的な同意を求めるのではなく、自分で昇格することを想像できますか?

他のオプションはGUIpolkitに似ていますsudoが、アプリケーションと対話型ではありませんが、ユーザーと対話して画面が表示される場合は、デスクトップ環境とのインターフェースを使用することです。グレーとパスワードのプロンプトが表示されたらpolkitです。polkitsudopolkit

だから本当に、私はそれがminikube「側」のデザインが良くないと思います。

root権限が必要なようですpodmanあなたユーザーには3つのオプションがあります。

  1. minikube必要に応じて、パスワードのないsudoアクセス権を付与してくださいpodman(異常です)。
  2. このソフトウェアにrootアクセス権を与えても問題ない場合は、rootとして実行してください。sudo minikubeすでにルートの場合は、パスワードなしのsudoアクセスは必要ありません。
  3. ルートアクセスを許可するのが問題ない場合は、別のソフトウェアを探してください。

関連情報