ナビゲーションリンクをスキップ | |
印刷ビューの終了 | |
![]() |
Solaris のシステム管理: セキュリティーサービス Oracle Solaris 10 1/13 Information Library (日本語) |
パート II システム、ファイル、およびデバイスのセキュリティー
13. Oracle Solaris の暗号化フレームワーク (概要)
14. Oracle Solaris の暗号化フレームワーク (タスク)
24. Kerberos エラーメッセージとトラブルシューティング
26. Kerberos アプリケーションの使用 (タスク)
このセクションでは、チケットの取得、表示、および破棄を行う方法を説明します。チケットの概要については、「Kerberos サービスの動作」を参照してください。
すべての SEAM リリースまたは Oracle Solaris リリースがインストールされている場合、Kerberos は login コマンドに組み込まれており、チケットの取得はログイン時に自動的に行われます。Kerberos に対応するコマンドの rsh、rcp、rdist、telnet、および rlogin は通常、チケットのコピーをほかのマシンに転送するように設定されています。そうすると、ユーザーがチケットを明示的に要求しなくても、それらのマシンにアクセスできるようになるからです。これがデフォルトの動作ですが、特定のユーザーの構成はこの自動転送を含んでいない場合があります。チケットの転送については、「Kerberos コマンドの概要」および 「Kerberos チケットの転送」を参照してください。
チケットの有効期限については、「チケットの有効期限」を参照してください。
通常、PAM が適切に構成されている場合、ログインするとチケットが自動的に作成されるため、チケットを取得するために特別な作業をする必要はありません。ただし、チケットが期限切れになった場合は、チケットを作成する必要があります。また、デフォルトの主体に加えて別の主体を使用することが必要になる場合 (たとえば、rlogin -l を使用してほかのユーザーとしてマシンにログインする場合) があります。
チケットを作成するには、kinit コマンドを使用します。
% /usr/bin/kinit
kinit コマンドからはパスワードの入力を求めるプロンプトが表示されます。kinit コマンドの詳細な構文については、kinit(1) のマニュアルページを参照してください。
例 26-1 Kerberos チケットの作成
次の例では、ユーザー jennifer が自分のシステムにチケットを作成します。
% kinit Password for jennifer@ENG.EXAMPLE.COM: <Type password>
次の例では、ユーザー david が -l オプションを使用して 3 時間有効なチケットを作成します。
% kinit -l 3h david@EXAMPLE.ORG Password for david@EXAMPLE.ORG: <Type password>
この例は、ユーザー david が (-f オプションを使用して) 自分自身の転送可能チケットを作成しているようすを示しています。たとえば、この転送可能チケットを使用して、2 つ目のシステムにログインして、3 つ目のシステムに telnet を実行できます。
% kinit -f david@EXAMPLE.ORG Password for david@EXAMPLE.ORG: <Type password>
転送チケットをどのように使用するかについては、「Kerberos チケットの転送」および 「チケットの種類」を参照してください。
すべてのチケットが同じ属性を持つわけではありません。あるチケットが、たとえば、転送可能であることがあります。「遅延 (Postdated)」などがあります。また、1 つのチケットに「転送可能」と「遅延」の両方が指定されていることもあります。現在のチケットが何で、どのような属性を持つかを知るには、klist コマンドで -f オプションを使用します。
% /usr/bin/klist -f
次の記号はチケットに関連付けられる属性です。klist によって表示されます。
事前認証済み
遅延可能 (Postdatable)
遅延 (Postdated)
転送可能 (Forwardable)
転送済み (Forwarded)
初期 (Initial)
無効 (Invalid)
プロキシ可能 (Proxiable)
プロキシ (Proxy)
更新可能 (Renewable)
チケットに指定できる属性については、「チケットの種類」を参照してください。
例 26-2 Kerberos チケットの表示
この例は、ユーザー jennifer が、転送可能 (F) かつ遅延 (d) である初期チケットを持っているが、まだ検証されていない (i) ことを示しています。
% /usr/bin/klist -f Ticket cache: /tmp/krb5cc_74287 Default principal: jennifer@EXAMPLE.COM Valid starting Expires Service principal 09 Mar 04 15:09:51 09 Mar 04 21:09:51 nfs/EXAMPLE.COM@EXAMPLE.COM renew until 10 Mar 04 15:12:51, Flags: Fdi
次の例は、ユーザー david が別のホストから自分のホストに転送済み (f) チケットを 2 つ持っていることを示します。これらのチケットは転送可能 (F) です。
% klist -f Ticket cache: /tmp/krb5cc_74287 Default principal: david@EXAMPLE.COM Valid starting Expires Service principal 07 Mar 04 06:09:51 09 Mar 04 23:33:51 host/EXAMPLE.COM@EXAMPLE.COM renew until 10 Mar 04 17:09:51, Flags: fF Valid starting Expires Service principal 08 Mar 04 08:09:51 09 Mar 04 12:54:51 nfs/EXAMPLE.COM@EXAMPLE.COM renew until 10 Mar 04 15:22:51, Flags: fF
次の例は、-e オプションを使用してセッション鍵の暗号化タイプとチケットを表示させる方法を示しています。-a オプションは、ネームサービスが変換を実行できる場合に、ホストアドレスをホスト名にマップするために使用されます。
% klist -fea Ticket cache: /tmp/krb5cc_74287 Default principal: david@EXAMPLE.COM Valid starting Expires Service principal 07 Mar 04 06:09:51 09 Mar 04 23:33:51 krbtgt/EXAMPLE.COM@EXAMPLE.COM renew until 10 Mar 04 17:09:51, Flags: FRIA Etype(skey, tkt): DES cbc mode with RSA-MD5, DES cbc mode with CRC-32 Addresses: client.example.com
現在のセッション中に取得したすべての Kerberos チケットを破棄するには、kdestroy コマンドを使用します。このコマンドは、資格キャッシュを破棄して、すべての資格とチケットを破棄します。これは通常必要ありませんが、kdestroy を実行すると、ログインしていない期間中に資格キャッシュが危険にさらされる可能性が低くなります。
チケットを破棄するには、kdestroy コマンドを使用します。
% /usr/bin/kdestroy
kdestroy コマンドは、そのユーザーのすべてのチケットを破棄します。このコマンドを使用して、特定のチケットを選択して破棄することはできません。
システムから離れようとしているが、自分のアクセス権が侵入者に使用されないかどうか気になる場合は、kdestroy か、または画面をロックするスクリーンセーバーのどちらかを使用するようにしてください。