第8章 スマートカードを使用した sudo のリモート認証

本セクションでは、スマートカードを使用して sudo にリモートで認証する方法を説明します。ssh-agent サービスがローカルで実行され、ssh-agent ソケットをリモートマシンに転送できるようになると、sudo PAM モジュールの SSH 認証プロトコルを使用してユーザーをリモートで認証できます。

スマートカードを使用してローカルにログインした後、SSH 経由でリモートマシンにログインして、スマートカード認証の SSH 転送を使用してパスワードの入力を要求されずに sudo コマンドを実行できます。

この例では、クライアントは SSH 経由で IPA サーバーに接続され、スマートカードに保存されている認証情報を使用して IPA サーバーで sudo コマンドを実行します。

8.1. IdM での sudo ルールの作成

この手順では、リモートホストで sudo を実行する権限を ipauser1 に付与するために、IdM で sudo ルールを作成する方法を説明します。

この例では、手順をテストするために、less コマンドと whoami コマンドが sudo コマンドとして追加されます。

前提条件

  • IdM ユーザーが作成されている。この例では、ユーザーは ipauser1 です。
  • sudo をリモートで実行するシステムのホスト名を認識している。この例では、ホストは server.ipa.test です。

手順

  1. adminrule という名前の sudo ルールを作成し、ユーザーがコマンドを実行できるようにします。

    ipa sudorule-add adminrule
  2. sudo コマンドとして less および whoami を追加します。

    ipa sudocmd-add /usr/bin/less
    ipa sudocmd-add /usr/bin/whoami
  3. less および whoami コマンドを adminrule に追加します。

    ipa sudorule-add-allow-command adminrule --sudocmds /usr/bin/less
    ipa sudorule-add-allow-command adminrule --sudocmds /usr/bin/whoami
  4. ipauser1 ユーザーを adminrule に追加します。

    ipa sudorule-add-user adminrule --users ipauser1
  5. sudo を実行しているホストを adminrule に追加します。

    ipa sudorule-add-host adminrule --hosts server.ipa.test

関連情報

  • ipa sudorule-add --help を参照してください。
  • ipa sudocmd-add --help を参照してください。