kadmin コマンド

目的

Kerberos データベース管理プログラム。

注:
このコマンドには、Network Authentication Service バージョン 1.3 (IBM TotalStorage NAS Gateway 500 Supplementary CD-ROM にある) がインストールされていることが必要です。

構文

kadmin [ -r realm ] [ -p principal ] [ -q query ] [ -d dbase ] [ -e "enc:salt ..." ] [ -m ] [ parameters ]

説明

kadmin コマンドは、Kerberos データベース管理システムへのコマンド行インターフェースです。 kadmin はマスター鍵配布センター (KDC) で実行され、データベースへの認証には Kerberos を使用しません。

kadmin は、Kerberos 認証と暗号化されたリモート・プロシージャー・コール (RPC) を使用して、ネットワークのどこからでも安全に操作できます。このコマンドは管理サーバーへの認証を行います。クリデンシャル・キャッシュに kadmin/admin プリンシパルのチケットが含まれている場合、-c ccache フラグを指定すると、管理サーバーへの認証にそのチケットが使用されます。それ以外の場合は、認証に使用されるクライアント・プリンシパル名の指定に -p フラグと -k フラグが使用されます。プリンシパル名を判別した後、kadmin は KDC からの kadmin/admin サービス・チケットを要求し、管理サーバーへの認証にそのサービス・チケットを使用します。

kadmin コマンドは Kerberos プリンシパル、ポリシー、およびサービス鍵テーブル (keytab) の保守を提供します。認証に使用されるクライアント・プリンシパル名を指定するには -p フラグと -k フラグを使用します。

フラグ

-d dbase プリンシパル・データベースを保管するパスの名前を指定します。デフォルトでは、データベースは /var/krb5/krb5kdc に置かれます。
-e enctype データベースにエントリーを書き込むときに使用する暗号化タイプを指定します。
-m マスター・データベース・パスワードをファイルからではなくキーボードから取り出すことを指定します。
-p principal 認証にプリンシパルを使用します。指定しない場合、kadmin は、優先順に、デフォルト・キャッシュの 1 次プリンシパル名、USER 環境変数の値、またはユーザー名に、/admin を追加します。
-q query 照会を直接 kadmin に渡します。kadmin は照会を実行して終了します。これはスクリプトを作成するときに便利です。
-r realm デフォルト・データベース・レルムとして realm を使用します。

パラメーター

add_policy [Flags] Policy 指定されたポリシーをポリシー・データベースに追加します。 add 特権が必要です。別名: addpol

-history Number
1 つのプリンシパルに保持する過去の鍵の数を設定します。
-maxlife Time
パスワードの最大存続時間を設定します。
-minclasses Number
1 つのパスワードに許可される文字クラスの最小数を設定します。
-minlife Time
パスワードの最小存続時間を設定します。
-minlength Length
パスワードの最小長を設定します。
add_principal [Flags] Newprinc パスワードのプロンプトを 2 回出して、プリンシパル newprinc を作成します。 -policy フラグでポリシーを指定しなくても、デフォルト名のポリシーが存在する場合は、そのポリシーがプリンシパルに割り当てられます。
注:
ポリシー・デフォルトの割り当てはプリンシパルが最初に作成するされるときにのみ自動的に行われます。したがって、割り当てが行われるためにはポリシー・デフォルトがすでに存在している必要があります。このデフォルトの割り当ては、 -clearpolicy フラグを使用して抑制できます。
このパラメーターには、addprinc および ank という別名があります。

addpol フラグについては Add_principal フラグを参照してください。

change_password [Flags] Principal プリンシパルのパスワードを変更します。 -randkey-pw も指定しなかった場合は、新しいパスワードを求めるプロンプトが出されます。 changepw 特権を持っているか、あるいはプログラムを実行するプリンシパルが変更されるプリンシパルと同じである必要があります。別名: cpw。以下のフラグが使用できます。

-pw Password
指定した文字列にパスワードを設定します。これはお勧めしません。
-randkey
プリンシパルの鍵をランダム値に設定します。
delete_policy [-force] Policy 指定されたポリシーを削除します。 -force フラグが指定されていない場合は、削除の前に確認プロンプトが出されます。いずれかのプリンシパルがポリシーを使用中の場合は、コマンドは失敗します。 delete 特権が必要です。別名: delpol
delete_principal [-force] Principal 指定されたプリンシパルをデータベースから削除します。 -force フラグが指定されていない場合、このコマンドは削除に関するプロンプトを出します。別名: delprinc
get_policy [-terse] Policy 指定されたポリシーの値を表示します。 inquire 特権が必要です。 -terse フラグを指定すると、タブで区切られた引用符付きストリングとしてフィールドを出力します。別名: getpol
get_principal [-terse] Principal プリンシパルの属性とポリシーを取得します。 inquire 特権を持っているか、あるいはプログラムを実行するプリンシパルがリストされるプリンシパルと同じである必要があります。 -terse フラグを指定すると、タブで区切られた引用符付きストリングとしてフィールドを出力します。別名: getprinc
ktadd [-k Keytab] [-q] [Principal | -glob Princ-exp] [...] プロセス内の各プリンシパルの鍵をランダム化し、princ-exp と一致する 1 つのプリンシパルまたはすべてのプリンシパルを keytab に追加します。このパラメーターはデータベース内の鍵を更新し、既存の鍵をすべて無効にします。プリンシパルの固有の暗号化タイプごとにエントリーが追加され、暗号化タイプが同じでも salt タイプが異なる複数の鍵は無視されます。 -k 引数を指定しなかった場合は、デフォルトの keytab が使用されます。 -q オプションを指定すると、簡潔な状況情報が表示されます。 -glob フラグを指定するには list 特権が必要です。コマンド princ-exp は、list_principals コマンドについて説明したのと同じ規則に従います。
ktremove [-k Keytab] [-q] Principal [kvno | all | old] 指定されたプリンシパルのエントリーを keytab から除去します。文字列 all を指定すると、そのプリンシパルのすべてのエントリーが除去されます。文字列 old を指定すると、最高の kvno を持つエントリー以外の、そのプリンシパルのすべてのエントリーが除去されます。それ以外の場合、指定された値は整数として構文解析され、その整数に kvno が一致するすべてのエントリーが除去されます。 -k 引数を指定しなかった場合は、デフォルトの keytab が使用されます。 -q フラグを指定すると、簡潔な状況情報が表示されます。別名: ktrem
list_policies [Expression] 一部のポリシー名またはすべてのポリシー名を検索します。 Expression はシェル・タイプのグロブ式であり、ワイルドカード文字 ?、*、および [] を含めることができます。この式に一致するすべてのポリシー名が出力されます。式を指定しなかった場合は、すべての既存のポリシー名が出力されます。 list 特権が必要です。別名: getpolsget_policieslistpols
list_principals [Expression] 一部のプリンシパル名またはすべてのプリンシパル名を検索します。 Expression はシェル・タイプのグロブ式であり、ワイルドカード文字 ?、*、および [] を含めることができます。この式に一致するすべてのプリンシパル名が出力されます。式を指定しなかった場合は、すべてのプリンシパル名が出力されます。式に @ 文字が含まれていない場合は、@ 文字とそれに続くローカル・レルムが式に追加されます。別名: getprincsget_principalslistprincs
modify_policy [Flags] Policy 指定されたポリシーを変更します。フラグは上記の add_policy の場合と同じです。別名: modpol
modify_principal [Flags] Principal 指定されたとおりにフィールドを変更して、指定されたプリンシパルを変更します。フラグは上記の add_principal の場合と同じですが、このコマンドではパスワード変更は禁止されています。また、 -clearpolicy フラグを指定すると、プリンシパルの現行ポリシーがクリアされます。別名: modprinc

Add_principal フラグ

-clearpolicy
-policy を指定しなかった場合に、ポリシー・デフォルトの割り当てを防止します。ポリシー・デフォルトが存在しない場合は、このフラグには効果がありません。
-expire Expdate
プリンシパルの有効期限。
kvno Kvno
鍵バージョン番号を明示的に設定します。
-maxlife Maxlife
プリンシパルのチケットの最大存続期間。
-maxrenewlife Maxrenewlife
プリンシパルのチケットの最大更新可能期間。
-policy Policy
このプリンシパルが使用するポリシー。ポリシーが提供されておらず、 -clearpolicy も指定しない場合、ポリシー・デフォルトが存在していれば、そのポリシー・デフォルトが使用されます。デフォルトが存在しない場合は、プリンシパルはポリシーなしとなり、警告メッセージが表示されます。
-pw password
プリンシパルの鍵を指定された文字列に設定し、パスワードのプロンプトは出されません。
注:
このフラグをシェル・スクリプト内で使用すると、無許可ユーザーがスクリプトへの読み取りアクセスを獲得できるため危険です。
-pwexpire pwexpdate
パスワードの有効期限を設定します。
-randkey
プリンシパルの鍵をランダム値に設定します。
{-|+}allow_dup_skey
-allow_dup_skey は、このプリンシパルに別のユーザーのためのセッション鍵の入手を禁止して、このプリンシパルのユーザー間認証を使用不可にします。

+allow_dup_skey はこのフラグをクリアします。

{-|+}allow_forwardable
-allow_forwardable は、このプリンシパルに転送可能チケットの入手を禁止します。

+allow_forwardable はこのフラグをクリアします。

{-|+}allow_postdated
-allow_postdated は、このプリンシパルに事後日付のチケットの入手を禁止します。

+allow_postdated はこのフラグをクリアします。

{-|+}allow_proxiable
-allow_proxiable は、このプリンシパルに代理処理可能チケットの入手を禁止します。

+allow_proxiable はこのフラグをクリアします。

{-|+}allow_renewable
-allow_renewable は、このプリンシパルに更新可能チケットの入手を禁止します。

+allow_renewable はこのフラグをクリアします。

{-|+}allow_svr
-allow_svr は、このプリンシパル用のサービス・チケットの発行を禁止します。

+allow_svr はこのフラグをクリアします。

{-|+}allow_tgs_req
-allow_tgs_req は、このプリンシパル用のサービス・チケットに関するチケット許可サービス (TGS) 要求を許可しないことを指定します。

+allow_tgs_req はこのフラグをクリアします。デフォルトは +allow_tgs_req です。

{-|+}allow_tix
-allow_tix は、このプリンシパル用のすべてのチケットの発行を禁止します。

+allow_tix はこのフラグをクリアします。デフォルトは +allow_tix です。

{-|+}delegate_ok
+delegate_ok は、チケット内のサーバー・プリンシパルがクリデンシャル代行のための宛先として適切であることを指示します。このオプションは、データベース内のプリンシパルに KRB5_KDB_DELEGATE_OK フラグを設定します。

-delegate_ok オプションはこのフラグをクリアします。

{-|+}needchange
+needchange は、属性フィールドにフラグを設定して、パスワード変更を強制します。

-needchange はこのフラグをクリアします。デフォルトは -needchange です。

{-|+}password_changing_service
+password_changing_service は、属性フィールドにフラグを設定して、このフィールドにパスワード変更サービス・プリンシパルのマークを付けます。

-password_changing_service はこのフラグをクリアします。デフォルトは -password_changing_service です。

{-|+}requires_hwauth
+requires_hwauth では、このプリンシパルにハードウェア装置を使用した事前認証が必要です。

-requires_hwauth はこのフラグをクリアします。

{-|+}requires_preauth
+requires_preauth では、このプリンシパルが kinit を許可される前に事前認証が必要です。このフラグが明示的にクリアされていない場合、プリンシパルが作成されるとデフォルトで事前認証が必要です。

-requires_preauth はこのフラグをクリアします。

{-|+}support_desmd5
+support_desmd5 は、チケットおよび KDC 交換について、md5 暗号化チェックサム・アルゴリズムの使用をこのプリンシパルに許可します。このオプションをオンにすると、プリンシパルに GSS-API アプリケーションとのインターオペラビリティー問題が発生することがあります。

-support_desmd5 オプションはこのフラグをクリアします。

日付形式

kadmin コマンドでは、期間または絶対時刻の指定に各種の日付形式を使用できます。有効な日付形式の例は次のとおりです。

ago 指定子のない日付は、期間が予想されるフィールドに現れる場合を除いて、デフォルトで絶対日付になります。期間が予想されるフィールドでは、時間指定子は相対的と解釈されます。期間で ago を指定すると、予期しない結果になる可能性があります。

  1. add_principal または addprinc の例:
    kadmin: addprinc henry/admin  
    WARNING: no policy specified for/admin@AU.IBM.COM; defaulting to no policy. 
    Enter password for principal henry/admin@AU.IBM.COM: 
    Re-enter password for principal henry/admin@AU.IBM.COM: 
    Principal henry/admin@AU.IBM.COM created. 
     kadmin:   
  2. delete_principal または delprinc の例:
    kadmin: delprinc mwm_user 
    Are you sure you want to delete the principal "mwm_user@AU.IBM.COM"? (yes/no): yes 
    Principal "mwm_user@AU.IBM.COM" deleted.  
    Make sure that you have removed this principal from all ACLs before reusing. 
     kadmin:   
  3. change_password または cpw の例:
    kadmin: cpw systest Enter password for principal systest@AU.IBM.COM: 
    Re-enter password for principal systest@AU.IBM.COM: 
    Password for systest@AU.IBM.COM changed. 
     kadmin:   
  4. get_principal または getprinc の例:
    kadmin: getprinc henry/admin 
    Principal: henry/admin@AU.IBM.COM 
    Expiration date: [never] 
    Last password change: Mon Aug 12 14:16:47 EDT 2000 
    Password expiration date: [none] 
    Maximum ticket life: 0 days 10:00:00 
    Maximum renewable life: 7 days 00:00:00 
    Last modified: Mon Aug 12 14:16:47 EDT 1996 (admin/admin@au.IBM.COM) 
    Last successful authentication: [never] 
    Last failed authentication: [never] 
    Failed password attempts: 0 
    Number of keys: 2 
    Key: vno 1, DES cbc mode with CRC-32, 
    no salt Key: vno 1, DES cbc mode with CRC-32, Version 4 
    Attributes: 
    Policy: [none]   
    kadmin: getprinc -terse systest 
    systest@AU.IBM.COM 3 86400 604800 1 
    785926535 753241234 785900000 
    henry/admin@AU.IBM.COM 786100034 0 0 
    kadmin:
  5. list_principals または listprincs の例:
     kadmin:   listprincs test* 
    test3@AU.IBM.COM 
    test2@AU.IBM.COM 
    test1@AU.IBM.COM 
    testuser@AU.IBM.COM 
    kadmin:
  6. delete_policy または del_pol の例:
    kadmin: del_pol guests 
    Are you sure you want to delete the policy "guests"? (yes/no): yes 
    Policy "guests" deleted. 
    kadmin:
  7. get_policy または getpol の例:
    kadmin: getpol admin                        
    Policy: admin                                   
    Maximum password life: 180 days 00:00:00        
    Minimum password life: 00:00:00                 
    Minimum password length: 6                     
    Minimum number of password character classes: 2  
    Number of old keys kept: 5                      
    Reference count: 17                               
    kadmin: getpol -terse admin                 
    admin     15552000  0    6    2    5    17      
    kadmin:	  
  8. list_policieslistpols の例:
    kadmin:  listpols                                 
    test-pol                                          
    dict-only                                         
    once-a-min                                        
    test-pol-nopw                                    
    kadmin:  listpols t*                              
    test-pol                                          
    test-pol-nopw                                    
     kadmin:   
  9. ktadd の例:
    kadmin: ktadd -k /tmp/foo-new-keytab 
    host/foo.au.ibm.com 
    Entry for principal host/foo.au.ibm.com@AU.IBM.COM with kvno 3,  
    encryption type DES-CBC-CRC added to keytab 
    WRFILE:/tmp/foo-new-keytab 
     kadmin:   
  10. ktremove または ktrem の例:
    kadmin: ktremove -k 
    /var/krb5/krb5kdc/kadmind.keytab kadmin/admin 
    Entry for principal kadmin/admin with kvno 3 
    Removed from keytab WRFILE:/var/krb5/krb5kdc/kadmind.keytab. 
    kadmin:

関連情報

kadmin.local コマンド