# 管理解説書

## klog

目的

認証サーバーを使用して認証を行います。

構文

    klog  [-x]  [-principal <user name>]  [-password <user's password>]
          [-cell <cell name>]  [-servers <explicit list of servers>+]
          [-pipe]  [-silent]  [-lifetime <ticket lifetime in hh[:mm[:ss]]>]
          [-setpag]  [-tmp]  [-help]

    klog  [-x]  [-pr <user name>]  [-pa <user's password>]  [-c <cell name>]
          [-s <explicit list of servers>+]  [-pi]  [-si]
          [-l <ticket lifetime in hh[:mm[:ss]]>]  [-se]  [-t]  [-h]

構文

klog コマンドは、認証サーバーから AFS トークンを取得します。ローカル・マシン上のキャッシュ・マネージャーは、カーネル・メモリーの信用証明書構造体にそのトークンを保管し、 AFS ファイル・スペースへの認証アクセスを取得するときにそれを使用します。このコマンドは、ローカル・ファイル・システムでは、発行者の ID (UNIX UID) に影響を与えません。

デフォルトでは、コマンド・インタープリターは、ローカル・ファイル・システムの発行者 ID に一致する、 AFS ユーザー名のトークンを取得します。代替ユーザーを指定する場合には、 -principal 引き数を組み込んでください。 -principal 引き数に指定されたユーザーは、ローカル・パスワード・ファイル (/etc/passwd ファイル、または同等のファイル) に記録されている必要はありません。

デフォルトでは、コマンド・インタープリターは、コマンド・シェルで設定される AFSCELL 環境変数、あるいは、ローカル・マシン上の /usr/vice/etc/ThisCell ファイルが定義するように、ローカル・セル用のトークンを取得します。代替セルを指定する場合には、 -cell 引き数を組み込んでください。コマンド・インタープリターは、ローカルな /usr/afs/etc/CellServDB ファイルの、セルの項目からランダムに選択した認証サーバーと交信します。ただし、-servers 引き数を使用して、 1 つまたは複数のデータベース・サーバー・マシンを指定する場合は、この限りではありません。

ユーザーは、複数のセルで同時にトークンを持つことができますが、クライアント・マシンへの接続に関しては、1 回の接続につき、1 つのセルごとに 1 つのトークンしか使用できません。ユーザーの信用証明書構造体に、要求されたセルのトークンがすでにある場合には、このコマンドで取得されるトークンと置き換わります。

AFS 認証サーバーの代わりに、標準ケルベロス認証を使用するサイトでは、すべてのクライアント・マシンで、このコマンドのケルベロス・バージョン、 klog.krb を使用しなければなりません。そうすると、KRBTKFILE 環境変数が指名するファイルに、発行者のケルベロス・チケットが自動的に配置されます。 pagsh.krb コマンドは、自動的に、この環境変数を /tmp/tktp X と定義します。ここで、X はユーザーの PAG の数です。

次のもので最短のものが、このコマンドから取得したトークンの存続時間になります。

- 発行者が -lifetime 引き数で指定する存続時間。発行者がこの引き数を組み込んでいない場合は、デフォルト値は 720 時間 (30 日) です。
- 認証データベースの afs 項目で記録される、最大チケット存続時間。デフォルトは、100 時間です。
- 指定ユーザーの認証データベース項目に記録される最大チケット存続時間。デフォルトは、 AFS 3.1 以降を実行している認証サーバーが作成するユーザー項目で、25 時間です。
- 認証データベースの、 krbtgt.CELLNAME 項目に記録される最大チケット存続時間。この項目は、トークンの生成時に内部で使用されるチケット獲得チケットに相当します。デフォルトは、720 時間 (30 日) です。

kas examine コマンドの出力では、認証データベース項目の最大チケット存続時間は、 `Max ticket lifetime` と表示されます。管理者は任意の項目を検査でき、ユーザーはユーザー自身の項目を表示できます。

デフォルトが変更されていなければ、トークン存続時間は、 AFS 3.1 以降を実行する認証サーバーが作成するユーザー・アカウントの場合、 25 時間になります。トークンの最大存続時間は 720 時間 (30 日) で、最小存続時間は 5 分です。

最小値から最大値までの間で、認証サーバーは、以下の規則に従って一定の値のセットを設定します。 5 分から 10 時間 40 分までは、要求された存続時間は 5 分単位で許可され、端数は切り上げられます。たとえば、発行者が 12 分の存続時間を要求した場合、トークンの実際の存続時間は 15 分になります。

トークン存続時間が 10 時間 40 分より長い場合は、次の表を参考にしてください。この表では、使用可能なすべての時間を、 時:分:秒 単位で表しています。括弧内の数値は、同じ時間を、(文字 `d`、および `h` が示すように) 日と時間による近似値で表したものです。たとえば、`282:22:17` は、282 時間 22 分 17 秒の意味ですが、これを変換すると、およそ 11 日 と 18 時間 (`11d 18h`) になります。認証サーバーは、要求された存続時間を、それに最も近い可能な存続時間へと切り上げます。

       11:24:15 (0d 11h)    46:26:01 (1d 22h)  189:03:38 (7d 21h)
       12:11:34 (0d 12h)    49:38:40 (2d 01h)  202:08:00 (8d 10h)
       13:02:09 (0d 13h)    53:04:37 (2d 05h)  216:06:35 (9d 00h)
       13:56:14 (0d 13h)    56:44:49 (2d 08h)  231:03:09 (9d 15h)
       14:54:03 (0d 14h)    60:40:15 (2d 12h)  247:01:43 (10d 07h)
       15:55:52 (0d 15h)    64:51:57 (2d 16h)  264:06:34 (11d 00h)
       17:01:58 (0d 17h)    69:21:04 (2d 21h)  282:22:17 (11d 18h)
       18:12:38 (0d 18h)    74:08:46 (3d 02h)  301:53:45 (12d 13h)
       19:28:11 (0d 19h)    79:16:23 (3d 07h)  322:46:13 (13d 10h)
       20:48:57 (0d 20h)    84:45:16 (3d 12h)  345:05:18 (14d 09h)
       22:15:19 (0d 22h)    90:36:53 (3d 18h)  368:56:58 (15d 08h)
       23:47:38 (0d 23h)    96:52:49 (4d 00h)  394:27:37 (16d 10h)
       25:26:21 (1d 01h)   103:34:45 (4d 07h)  421:44:07 (17d 13h)
       27:11:54 (1d 03h)   110:44:28 (4d 14h)  450:53:46 (18d 18h)
       29:04:44 (1d 05h)   118:23:54 (4d 22h)  482:04:24 (20d 02h)
       31:05:22 (1d 07h)   126:35:05 (5d 06h)  515:24:22 (21d 11h)
       33:14:21 (1d 09h)   135:20:15 (5d 15h)  551:02:38 (22d 23h)
       35:32:15 (1d 11h)   144:41:44 (6d 00h)  589:08:45 (24d 13h)
       37:59:41 (1d 13h)   154:42:01 (6d 10h)  629:52:56 (26d 05h)
       40:37:19 (1d 16h)   165:23:50 (6d 21h)  673:26:07 (28d 01h)
       43:25:50 (1d 19h)   176:50:01 (7d 08h)

注意

デフォルトでは、このコマンドは新規のプロセス認証グループ (PAG) を作成しません。 PAG について知りたい場合は、 pagsh コマンドの説明を参照してください。セルが AFS 修正ログイン・ユーティリティーを使用しない場合は、ユーザーは、このコマンドに -setpag オプションを組み込むか、このコマンドに先立って pagsh コマンドを発行して、ローカル UID ではなく PAG が識別する信用証明書構造体に、トークンを保管しなければなりません。

信用証明書構造体がローカル UID によって識別される場合は、ローカル・スーパーユーザー root が、 UNIX の su コマンドを使用して、任意の他の ID を想定し、その UID に関連したトークンを自動的に継承することができるため、セキュリティーに穴が開く可能性があります。 PAG が信用証明書構造体を識別することによって、このような機密漏れを防ぐことができます。

-password 引き数が使用されている場合は、指定されたパスワードをハイフンで始めることはできません。そうすると、別のオプション名と解釈されてしまうからです。 -password 引き数の使用は、どのような場合でもお勧めできません。

デフォルトでは、適正に構成された NFS クライアント・マシン (NFS/AFS 変換プログラム経由で、 AFS にアクセスしているもの) 上でこのコマンドを発行し、 NFS クライアント・マシンがサポートされるシステム・タイプであると想定することが可能です。ただし、変換プログラム・マシンの管理者が、 -uidcheck on 引き数を、 fs exportafs コマンドに組み込んで、 UID 検査を使用可能にした場合は、コマンドは失敗し、以下のようなエラー・メッセージが出ます。

       警告 : translator_machine へのリモート pioctl は失敗しました (err=8). . .
       pioctl が失敗したため、AFS に対する認証は利用できません。

UID 検査を使用可能にするということは、トークンが保管されている変換プログラム・マシン上の信用証明書構造体が、そのトークンを信用証明書構造体に配置しているプロセスの、ローカル UID に一致する UID によって、識別される必要があるということです。 klog コマンド・インタープリターは、 NFS クライアント上でトークンを取得すると、それを、変換プログラム・マシン上のリモート実行プログラム・デーモンに渡します。するとリモート実行プログラム・デーモンはシステム呼び出しを行い、変換プログラム・マシン上の信用証明書構造体にトークンを保管します。リモート実行プログラムは一般に、ローカル・スーパーユーザー root として実行されます。したがって、ほとんどの場合、そのローカル UID (通常はゼロ) は、 NFS クライアント・マシン上で klog コマンドを発行したユーザーの、ローカル UID とは一致しません。

NFS クライアント・マシンで klog コマンドを発行すると、機密漏れが生じます。コマンド・インタープリターは、ネットワークを経由してリモート実行プログラム・デーモンにトークンを渡す際、明白なテキスト・モードを使用するからです。

オプション

-x
  後方互換性の場合のみ表示されます。前の機能が、このコマンドのデフォルトの振る舞いになっています。

-principal
  認証するユーザー名を指定します。この引き数を省略すると、認証サーバーは、ローカル・ファイル・システムにログインするユーザーを認証しようとします。

-password
  発行者のパスワード (あるいは、 -principal 引き数で識別される代替ユーザーのパスワード) を指定します。コマンド・インタープリターにパスワードのプロンプトを出させるには、この引き数を省略してください。この場合、入力されたパスワードは、外観では判別されないようにコマンド・シェルに表示されます。

-cell
  トークンを取得するセルを指定します。このコマンドは、そのセルの認証サーバーに対して指示されます。あるマシン上での単一ログイン・セッションの間、ユーザーは、同時に複数のセルで認証されることが可能ですが、それぞれのセルごとに、トークンは一度に 1 つしか所有することができません (つまり、 1 台のマシンにつき、1 つのセッションの 1 つのセルに対して、 1 つの ID で認証することしかできません)。セル名は、コマンドを発行するクライアント・マシンの、 /usr/vice/etc/CellServDB ファイルでリストされている、他のセルと区別できる最短形式に省略することが可能です。

  この引き数を省略すると、コマンドは、以下で定義されるローカル・セルで実行されます。

  - 第 1 に、環境変数 AFSCELL の値で定義されるローカル・セル
  - 第 2 に、コマンドを発行したクライアント・マシンの、 /usr/vice/etc/ThisCell ファイルで定義されるローカル・セル

-servers
  指定された個々のデータベース・サーバー・マシン上で実行されている、認証サーバーとの接続を確立します。次にコマンド・インタープリターが、この 1 つをランダムに選択し、コマンドを実行します。完全修飾ホスト名を提供するのが最も望ましいのですが、コマンド発行時のセルのネーム・サーバーの状態によっては、省略形式が許容される場合もあります。このオプションは、問題発生時に特定のサーバーをテストする場合に有効です。

  この引き数が省略されると、コマンド・インタープリターは、 /usr/vice/etc/CellServDB ファイルのローカル・コピーに、指定されたセルのためにリストされた個々のマシンとの接続を確立し、次に、その 1 つをランダムに選択してコマンドを実行します。

-pipe
  プロンプトおよびエラー・メッセージを含む、標準出力ストリームへのすべての出力を抑制します。 klog コマンド・インタープリターは、標準入力ストリームからのパスワードの受信を予期します。この引き数は使用しないでください。これは、ユーザーではなくアプリケーション・プログラムが使用するためのものです。

-silent
  klog コマンドが、デフォルトで標準出力ストリーム上に作成する、トレース・メッセージの一部を抑止します。重要な問題が発生した場合には、これまでどおり報告を行います。

-lifetime
  トークンに特定の存続時間を要求します。 hh[:mm[:ss]] の形式で、時間数を提供し、オプションで分数、秒数を提供します。 説明のセクションで述べた、トークンの存続時間を計算する際に、この値を使用します。

-setpag
  認証の要求前に、プロセス認証グループ (PAG) を作成します。トークンは、新しく作成された PAG に対応付けられます。

-tmp
  ローカル・マシンの /tmp ディレクトリーに、ケルベロス・スタイルのチケット・ファイルを作成します。このファイルは tkt.AFS_UID と呼ばれます。ここで AFS_UID は、発行者の AFS UID です。

-help
  このコマンドのオンライン・ヘルプを出力します。これ以外の有効なオプションはすべて無視されます。

注意

出力

次のメッセージは、認証失敗の連続が限度を超えて発生したことを示しています。管理者は kas unlock コマンドを使用して、そのアカウントのロックを解除することができます。あるいは発行者は、アカウントのロックアウト時間が過ぎるまで待機することができます。 (時間は、kas setfields コマンドの、 -locktime 引き数を使用して設定され、 kas examine コマンドの出力に表示されます)。

       ID がロックされているため、AFS への認証が利用できません。
       システム管理者にご連絡ください。

-tmp フラグが組み込まれている場合は、次のメッセージで、ケルベロス・スタイルのチケット・ファイルの作成が確認されます。

       チケット・ファイルを /tmp に書き込みました。

例

ほとんどの場合、このコマンドは引き数を伴わずに発行されます。該当するパスワードは、ローカル・ファイル・システムに現在ログインしている人のためのものです。チケットの存続時間は、説明セクションで述べた方法で、計算されます (デフォルトを変更していない場合、認証データベース項目を AFS 3.1 以降で作成したユーザーの場合は 25 時間です)。

       % klog
       パスワード :

次の例では、ユーザーを、 Example Corporation のテスト・セルの管理者として、認証しています。

       % klog -principal admin -cell test.example.com
       パスワード :

次の例では、発行者は、 104 時間 30 分 (4 日と 8 時間 30 分) のチケット存続時間を要求しています。この存続時間が、説明セクションで述べた、チケットの最大存続時間その他の要素によって許可されたとすると、トークンの存続時間は 110:44:28 です。これは、可能な値のうちでは 2 番目に大きなものです。

       % klog -lifetime 104:30
       パスワード :

必要となる特権

なし。

関連情報

fs exportafs

kas examine

kas setfields

kas unlock

kaserver

pagsh

tokens

[ ページのトップ | 前ページ | 次ページ | 目次 | 索引 ]

(C) IBM Corporation 2000. All Rights Reserved