# 管理解説書

## pagsh

目的

新規の PAG を作成します。

構文

    pagsh

構文

pagsh コマンドは、新規コマンド・シェル (所有者はそのコマンドの発行者) を作成し、新しいプロセス認証グループ (PAG) を、シェルおよびユーザーに関連付けます。 PAG は、コマンドの発行者が、新しいシェルで、ローカル・キャッシュ・マネージャーに一意的に識別されるようにするための番号です。 PAG は、発行者の UNIX UID の代わりに使用され、キャッシュ・マネージャーが、個々のユーザーを追跡するために作成した信用証明書構造体で、発行者を識別します。

これ以後に獲得される (おそらく他のセルの用の) トークンは、ユーザーの UNIX UID にではなく、PAG に関連付けられます。この方法でユーザーを識別すると、次の 2 つの利点があります。

- ユーザーによって作成されたプロセスは PAG を継承するので、トークンが共有されます。したがって、これらのプロセスは、認証されたユーザーとして AFS に対するアクセスが許可されます。たとえば、多くの環境では、AFS サーバー・プロセスが、 anonymous としてしか認識しない ID (たとえば、ローカル・スーパーユーザー root) で、プリンターその他のデーモンが実行されています。 PAG を使用しない限り、このようなデーモンは、アクセス制御リスト (ACL) のアクセス権が、 system:anyuser グループまで拡張されていないディレクトリーのファイルには、アクセスできません。
- 潜在的なセキュリティーの抜け穴をふさぎます。つまり、UNIX では、ローカル・スーパーユーザー root として、すでにマシンにログインした人間ならだれでも、 UNIX の su コマンドを発行することによって、他の任意の ID を予測することができます。信用証明書構造体が PAG ではなく UNIX UID によって識別される場合には、ローカル・スーパーユーザー root は、UNIX UID を予測し、その UID に関連したトークンを使用することができます。 PAG を ID として使用すると、この可能性を排除することができます。

注: | このコマンドの pagsh.krb バージョンは、クライアントのために標準ケルベロス認証を使用するサイトによる使用を、目的としています。 pagsh.krb コマンドは、 pagsh コマンドと機能的に同等です。また、このコマンドは、環境変数 KRBTKFILE (ケルベロス・チケットの記憶位置を指定します) を、ファイル /tmp/tktpX (X は、ユーザーの PAG の数です) と定義します。このコマンドの機能によって、 klog.krb コマンド、およびケルベロス化された AFS 修正ログイン・ユーティリティーによる、環境変数 KRBTKFILE で指定されたファイルへの、ケルベロス・チケットの配置がサポートされます。

注意

作成される PAG はそれぞれ、カーネルがユーザーと関連した UNIX グループを記録するために使用する、メモリー・スロットのうち 2 つを使用します。使用可能なスロットがないと、 pagsh コマンドは失敗します。ほとんどのオペレーティング・システムでは、ユーザーごとに少なくとも 16 のスロットが使用可能なので、このことは問題ではありません。

AFS 修正ログイン・ユーティリティーを使用しないセルでは、このコマンドを使用して、klog コマンドを発行する前に、 PAG を取得します (あるいは、klog コマンドに、 -setpag 引き数を組み込みます)。 PAG を獲得しない場合は、キャッシュ・マネージャーが、 PAG ではなくローカル UID が識別する信用証明書構造体に、トークンを保管します。これでは、説明セクションで述べた、セキュリティーの漏れが生じる可能性があります。

AFS をサポートする NFS クライアント・マシンのユーザーが、 AFS による認証の一部としてこのコマンドを発行する場合は、 fs exportafs コマンドの、 -uidcheck on 引き数を使用して、 NFS/AFS 変換プログラム・マシンで UID 検査を使用可能にすることは、やめてください。 UID 検査を使用可能にすると、このコマンドが正常に働かなくなります。 klog コマンドの解説ページを参照してください。

変換プログラム・マシン上で UID 検査が使用不能である場合は、デフォルトでは、適正に構成された NFS クライアント・マシン (NFS/AFS 変換プログラム経由で、 AFS にアクセスしているもの) 上でこのコマンドを発行し、 NFS クライアント・マシンがサポートされるシステム・タイプであると想定することが可能です。 NFS クライアントがアクセスする pagsh バイナリーは、ローカル・スーパーユーザー root が所有し、 setuid 特権を許可したものでなければなりません。モード・ビットの完全セットは、 -rwsr-xr-x でなければなりません。コマンドが AFS クライアント・マシン上で発行される場合は、これは必須条件ではありません。

ただし、変換プログラム・マシンの管理者が、 -uidcheck on 引き数を、 fs exportafs コマンドに組み込んで、 UID 検査を使用可能にした場合は、コマンドは失敗し、次のようなエラー・メッセージが表示されます。

       警告 : translator_machine へのリモート setpag は失敗しました (err=8). . .
       setpag: Exec 形式エラー

例

次の例では、発行者は、デフォルトの Bourne シェルの代わりに C シェル を呼び出しています。

       # pagsh -c /bin/csh

必要となる特権

なし。

関連情報

fs exportafs

klog

tokens

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

(C) IBM Corporation 2000. All Rights Reserved