KRB5.CONF(5) | FreeBSD File Formats Manual | KRB5.CONF(5) |
名称
krb5.conf — Kerberos 5 のための設定ファイル書式
#include < krb5.h>解説
krb5.conf ファイルはいくつかのプログラムと同様に、Kerberos 5 ライブラリのためにいくつかの設定パラメータを指定します。ファイルは多くのバインドを含んで、1 つ以上のセクションから成ります。それぞれのバインドの値は、他のバインドの文字列またはリストのどちらかを指定できます。文法は次のようになります:
file: /* 空 */ sections sections: section sections section section: '[' section_name ']' bindings section_name: STRING bindings: binding bindings binding binding: name '=' STRING name '=' '{' bindings '}' name: STRING
STRING
は、1 つ以上の空白類でない文字から成ります。
このマニュアルページの後で指定される STRING は次の記法を使用します。
- boolean
- 値は、yes/true または no/false を指定できます。
- time
- 値は、年、月、日、時、分、秒のリストを指定できます。例: 1 month 2 days 30 min。単位が与えないなら、秒を想定します。
- etypes
- 有効な暗号化タイプは次の通りです: des-cbc-crc, des-cbc-md4, des-cbc-md5, des3-cbc-sha1, arcfour-hmac-md5, aes128-cts-hmac-sha1-96 と aes256-cts-hmac-sha1-96 です。
- address
- アドレスは、IPv4 か IPv6 アドレスのどちらかを指定できます。
現在、認識されるセクションとバインドは次の通りです:
-
[appdefaults]
-
Kerberos アプリケーションに使用されるデフォルト値を指定します。利用者はアプリケーション、レルム (アドレス体系)、またはこれらの組み合わせ毎にデフォルトを指定することができます。優先順序は次の通りです:
- application realm option
- application option
- realm option
- option
サポートされているオプションは次の通りです:
-
forwardable =
boolean - 初期の資格証明を取得するとき、資格証明を転送可能にします。
-
proxiable =
boolean - 初期の資格証明を取得するとき、資格証明をプロキシ (代理) 可能にします。
-
no-addresses =
boolean - 初期の資格証明を取得するとき、アドレスの空集合のためにそれらを要求し、チケットをどんなアドレスからも有効にします。
-
ticket_lifetime =
time - デフォルトのチケットの存続期間。
-
renew_lifetime =
time - デフォルトの再生可能なチケットの存続期間。
-
encrypt =
boolean - 利用可能であるときに、暗号化を使用します。
-
forward =
boolean - 資格証明をリモートホスト ( rsh(1), telnet(1) などのための) に転送します。
-
[libdefaults]
-
-
default_realm =
REALM - 使用するデフォルトのレルム、また、これは利用者の“ローカルレルム”として知られています。デフォルトは、 krb5_get_host_realm( local hostname) の結果です。
-
allow_weak_crypto =
boolean - は、いくつかある、使用されることを許可されたウィーク (weak) な暗号のアルゴリズムで、DES は、ウィーク (weak) と見なされます。
-
clockskew =
time - 時間比較するとき許容された最大の時間の差異 (秒単位)。デフォルトは、300 秒 (5 分) です。
-
kdc_timeout =
time - kdc から応答を待つ最大の時間、デフォルトは、3 秒です。
-
v4_name_convert
-
v4_instance_resolve
- これらは krb5_425_conv_principal(3) マニュアルページで説明されています。
-
capath = {
-
-
destination-realm
=
next-hop-realm - ...
-
}
capaths
セクション参照。 -
destination-realm
-
default_cc_type =
cctype - は、デフォルトの資格証明タイプを設定します。
-
default_cc_name =
ccname -
デフォルトの資格証明は、名前をキャッシュします。タイプのみを変更したいなら、
default_cc_type
を使用します。文字列は、実行時に拡張された変数を含むことができます。現在、唯一のサポート変数は、現在のユーザ ID に拡張する%{uid}
です。 -
default_etypes =
etypes ... - 使用されるデフォルトの暗号化タイプのリスト。 (デフォルト: allow_weak_crypto = TRUE なら、すべて enctype します。そうでなければ、単一の DES enctypes を除いて、すべての enctype します。) 訳注: enctype は、意味不明。
-
default_as_etypes =
etypes ... - AS 要求で使用するデフォルトの暗号化タイプのリスト。 (デフォルト: default_etypes の値。)
-
default_tgs_etypes =
etypes ... - TGS 要求で使用するデフォルトの暗号化タイプのリスト。 (デフォルト: default_etypes の値。)
-
default_etypes_des =
etypes ... - DES 資格証明を要求するとき、使用されるデフォルトの暗号化タイプのリスト。
-
default_keytab_name =
keytab - 他が指定されていなければ、使用される keytab、デフォルトは、“FILE:/etc/krb5.keytab”です。
-
dns_lookup_kdc =
boolean - KDC サービス位置を検索するために DNS SRV レコードを使用します。
-
dns_lookup_realm =
boolean - ドメインからレルムのマッピングを検索するために DNS TXT レコードを使用します。
-
kdc_timesync =
boolean - ローカルマシンと KDC の間の時間の差異の経過を追うように試み、次に、要求を発行するとき、それを補正します。
-
max_retries =
number - 各 KDC に接続しようと試みる最大の回数。
-
large_msg_size =
number - 小さい最大のメッセージサイズがあるプロトコルが、メッセージを KDC に送信するために使用可能と見なされない敷居。
-
ticket_lifetime =
time - デフォルトのチケットの存続期間。
-
renew_lifetime =
time - デフォルトの再生可能なチケットの存続期間。
-
forwardable =
boolean - 初期の資格証明を取得するとき、資格証明を転送可能にします。また、このオプションは、[レルム] セクションで有効です。
-
proxiable =
boolean - 初期の資格証明を取得するとき、資格証明をプロキシ (代理) 可能にします。また、このオプションは、[レルム] セクションで有効です。
-
verify_ap_req_nofail =
boolean - 有効にされるなら、ローカルキーに対して資格証明について確かめないことは、致命的なエラーです。アプリケーションはこれが働けるように対応するサービスキーを読み込むことができなければなりません。 su(1) のような、いくつかのアプリケーションはこのオプションを無条件に有効にします。
-
warn_pwexpire =
time - パスワードの有効期限をいつまでに警告するか。デフォルトは、7 日間です。
-
http_proxy =
proxy-spec - HTTP を通して KDC と交信するとき使用する HTTP プロキシ。
-
dns_proxy =
proxy-spec - HTTP を通した DNS の使用を有効にします。
-
extra_addresses =
address ... - すべてのローカルアドレスとともにチケットを取得するアドレスのリスト。
-
time_format =
string - 時間の文字列をログにどのように印刷するか、この文字列は、 strftime(3) に渡されます。
-
date_format =
string - 日付の文字列をログにどのように印刷するか、この文字列は、 strftime(3) に渡されます。
-
log_utc =
boolean - 利用者のローカル時間ゾーンの代わりに UTC を使用してログエントリを書き込みます。
-
scan_interfaces =
boolean - 単にシステムのホスト名に関連しているアドレスを使用にするとは対照的に、アドレスのためにすべてのネットワークインタフェースをスキャンします。
-
fcache_version =
int - 指定されたファイル資格証明キャッシュ形式バージョンを使用します。
-
krb4_get_tickets =
boolean - また、 kinit, login と他のプログラムで Kerberos 4 チケットを取得します。また、このオプションは、[レルム] セクションで有効です。
-
fcc-mit-ticketflags =
boolean - ファイル資格証明キャッシュのための MIT 互換形式を使用する。それは、Heimdal 0.7 より古い逆のビット順で格納されるフィールド ticketflags です。 MIT 法で格納するためにこのフラグを TRUE に設定します、そして、これは、Heimdal 0.7 のデフォルトです。
-
check-rd-req-server
- "ignore"に設定するなら、フレームワークは、あらゆる krb5_rd_req(3) へのサーバ入力を無視します、これは、GSS-API サーバが、 gss_accept_sec_context 呼び出しに間違ったサーバ名を入力するとき、たいへん役に立ちます。
-
-
[domain_realm]
-
これは、DNS ドメインから Kerberos レルムへのマッピングのリストです。このセクションでの各バインドは次のようになります:
domain = realm
ドメインは、ホストのフルネームまたは後続する構成要素のいずれかを指定でき、後者の場合、ドメイン文字列はピリオドから始まるべきです。後続する構成要素は、同じドメインにあるホストのみにマッチします、すなわち、“.example.com”は、“foo.example.com”にマッチしますが、“foo.test.example.com”にはマッチしません。
レルムはトークン `dns_locate' であるかもしれません、その場合、実際のレルムは、(`dns_lookup_realm' オプションの設定とは無関係に) DNS を使用して決定されます。
-
[realms]
-
-
REALM
= {
-
-
kdc =
[service/]host[:port] -
このレルムのための kdcs のリストを指定します。オプションの
port がないなら、 (サービスによって) “kerberos/udp”“kerberos/tcp”と“http/tcp”ポートのためのデフォルト値が使用されます。 kdcs は指定されている順序で使用されます。
オプションの service は、kdc がどのメデアに接続されるべきであるかを指定します。あり得るサービスは、“udp”, “tcp”と“http”です。また、http は、“http://”と書くことができます。デフォルトのサービスは、“udp”と“tcp”です。
-
admin_server =
host[:port] - データベースへのすべての変更が実行される、このレルムのための admin サーバを指定します。
-
kpasswd_server =
host[:port] - すべてのパスワードの変更が実行されるサーバを示します。そのようなエントリがないなら、admin_server ホスト上の kpasswd ポートが試されます。
-
krb524_server =
host[:port] - 524 変換を行うサーバを示します。それが言及されないなら、kdcs 上の krb524 ポートが試されます。
-
v4_instance_convert
-
v4_name_convert
-
default_domain
- krb5_425_conv_principal(3) 参照。
-
tgs_require_subkey
- false (偽) をデフォルトとするブール変数。古い DCE secd (前の 1.1) は、これが true (真) である必要であるかもしれません。
-
-
}
-
REALM
-
[capaths]
-
-
client-realm
= {
-
-
server-realm
=
hop-realm ... - これは、2 つの目的に役立ちます。まず最初に、最初にリストされた hop-realm は、それが結局 server-realm でサービスのための資格証明を取得するためにどのレルムに接続するべきであるかをクライアントに伝えます。第二に、どのレルムが client-realm から server-realm までの複数の中継点の縦断で許可されているかを KDC (と、他のサーバ) に伝えます。クライアントの場合を除いて、レルムの順序は重要ではありません。
-
server-realm
- }
-
client-realm
-
[logging]
-
-
entity
=
destination -
ログ記録のために指定された
destination
を使用するべきである entity を指定します。定義された destination (宛先) のリストに関して krb5_openlog(3) マニュアルページを参照してください。
-
entity
-
[kdc]
-
-
database
= {
-
-
dbname
=
DATABASENAME - このレルムのためにこのデータベースを使用します。異なったデータベースのバックエンドを設定する方法については、 info 文書を参照してください。
-
realm
=
REALM -
このデータベースに格納されるレルムを指定します。そのレルムは、設定されず、デフォルトのデータベースとして使用され、
realm
スタンザ (節) がないエントリは、1 つに決まっています。 -
mkey_file
=
FILENAME - このデータベースのマスタキーのためにこの keytab ファイルを使用します。指定されていなければ、 DATABASENAME.mkey が使用されます。
-
acl_file
= PA FILENAME
- このデータベースの ACL リストのためにこのファイルを使用します。
-
log_file
=
FILENAME - データベースの変更を実行するログとして、このファイルを使用します。このファイルは、スレーブへの変更を伝えるために ipropd-master によって使用されます。
-
-
}
-
max-request =
SIZE - kdc 要求の最大サイズ。
-
require-preauth =
BOOL - 設定されるなら、事前の認証が必要です。 krb4 要求は事前の認証がされないので、それらは拒絶されます。
-
ports =
list of ports - kdc が listen (接続を受け付ける) するべきであるポートのリスト。
-
addresses =
list of interfaces - kdc がバインドするべきであるアドレスのリスト。
-
enable-kerberos4 =
BOOL - Kerberos 4 サポートをオンにします。
-
v4-realm =
REALM - どんなレルム v4 要求がマップされるべきであるか。
-
enable-524 =
BOOL - Kerberos 524 変換機能はオンにされるべきか。デフォルトは、 enable-kerberos4 と同じです。
-
enable-http =
BOOL - kdc は、http 上の kdc-要求に答えるべきか。
-
enable-kaserver =
BOOL - この kdc が AFS kaserver をエミュレートすべきであるなら。
-
tgt-use-strongest-session-key =
BOOL - これが TRUE であるなら、KDC は、ターゲットのプリンシパルが krbtgt プリンシパルであるとき、KDC とターゲットのプリンシパルによってサポートされるチケットセッションキーのために、クライアントの AS-REQ または TGS-REQ enctype リストから最も強いキーを選択します。さもなければ、KDC とターゲットのプリンシパルによってもサポートされるクライアントの ASREQ enctype リストからの最初のキーを選びます。デフォルトは、TRUE です。
-
svc-use-strongest-session-key =
BOOL - tgt-use-strongest-session-key に似ていますが、krbtgt プリンシパル以外のサービスのためのチケットのセッションキー enctype に適応します。デフォルトは、TRUE です。
-
preauth-use-strongest-session-key =
BOOL - TRUE であるなら、PA-ETYPE-INFO2 のための (すなわち、パスワードに基づいた事前認証のための) クライアントの AS-REQ から、できるだけ強い enctype を選択します。さもなければ、クライアントの AS-REQ から最初にサポートされた enctype を選択します。デフォルトは、TRUE です。
-
use-strongest-server-key =
BOOL - TRUE であるなら、暗号化されたチケットの部分キーのために、 KDC は、ターゲットサービスプリンシパルの hdb エントリの現在の keyset から最初にサポートされた暗号化を選びます。さもなければ、KDC は、ターゲットサービスプリンシパルの hdb エントリの現在の keyset から最初にサポートされた enctype を選びます。デフォルトは、TRUE です。
-
check-ticket-addresses =
BOOL - tgs 要求で使用されるチケット中のアドレスを検証します。
-
allow-null-ticket-addresses =
BOOL - アドレスなしのチケットを許可する。
-
allow-anonymous =
BOOL - kdc が匿名のチケットを配ることができるなら。
-
encode_as_rep_as_tgs_rep =
BOOL - as-rep を古い DCE secd が起こした誤りと互換の tgs-rep tobe としてエンコードします。
-
kdc_warn_pwexpire =
TIME - ユーザがユーザのパスワードがまさに期限が切れようとしていると警告すべきである期限切れの前の時間。
-
logging =
Logging - kdc が使用するべきであるログのタイプ、[logging]/kdc を参照。
-
use_2b = {
-
-
principal
=
BOOL - ブール値は、524 デーモンであるなら、 principal のために AFS 2b トークンを返すべきです。
- ...
-
principal
-
}
-
hdb-ldap-structural-object
structural object - LDAP バックエンドが、プリンシパルを格納するために使用されているなら、これは、作成するとき、およびオブジェクトを読み込むとき、使用される構造的なオブジェクトです。デフォルト値は、アカウントです。
-
hdb-ldap-create-base
creation dn - は、エントリを作成するときプリンシパルに追加される dn です。デフォルト値は、search dn です。
-
enable-digest =
BOOL - kdc アンサ (answer) 要約の要求するべきです。デフォルトは、FALSE です。
-
digests_allowed =
list of digests -
kdc 応答する要約を指定します。デフォルトは、
ntlm-v2
です。
-
-
[kadmin]
-
-
require-preauth =
BOOL - 事前の認証は、kadmin サーバと通信するのに必要であるなら。
-
password_lifetime =
time - プリンシパルが期限切れのために設定されるパスワードが既にあるなら、これは、変更の後に有効になる時間です。
-
default_keys =
keytypes... -
default_keys 中のエントリごとに、次のようなこの
etype:salttype:salt 構文のシーケンスとしてそれを解析することを試みます:
[(des|des3|etype):](pw-salt|afs3-salt)[:string]
etype が省略されるなら、すべてを意味し、そして、文字列が省略されるなら、 (そのプリンシパルと暗号化タイプのための) デフォルトのソルト (塩) 文字列を意味します。 keytypes の追加の特別な値は次の通りです:
-
v5
- Kerberos 5 のソルト (塩) pw-salt
-
v4
- Kerberos 4 のソルト (塩) des:pw-salt:
-
-
use_v4_salt =
BOOL -
true (真) のとき、これは、
default_keys = des3:pw-salt v4
と同じであり、後方互換性のためにのみ残されています。
-
-
[password_quality]
-
詳細については、info 文書のパスワードの品質保証をチェックしてください。
-
check_library =
library-name - パスワード check_function を含むライブラリ名
-
check_function =
function-name - check_library のパスワードをチェックするための関数名
-
policy_libraries =
library1 ... libraryN - パスワードポリシチェックができるライブラリのリスト
-
policies =
policy1 ... policyN - パスワードに適用するポリシ名のリスト。組み込みのポリシは、特に最小の長さ、文字クラス、外部チェックです。
-
環境変数
KRB5_CONFIG は、読み込むための設定ファイルを示します。関連ファイル
- /etc/krb5.conf
- Kerberos 5 のための設定ファイル。
使用例
[libdefaults] default_realm = FOO.SE [domain_realm] .foo.se = FOO.SE .bar.se = FOO.SE [realms] FOO.SE = { kdc = kerberos.foo.se v4_name_convert = { rcmd = host } v4_instance_convert = { xyz = xyz.bar.se } default_domain = foo.se } [logging] kdc = FILE:/var/heimdal/kdc.log kdc = SYSLOG:INFO default = SYSLOG:INFO:USER
診断
krb5.conf が krb5 ライブラリによって読み込まれ、解析されるので、どんなに役に立つ形式でエラーを解析するかをプログラムに報告する多くの機会はありません。この問題を克服するのを助けるために、 krb5.conf を読み込んで、構文解析エラーから役に立つ診断を出力しようとする、プログラム verify_krb5_conf があります。このプログラムはどんなオプションが実際に使用されるかを知る方法がなく、したがって、未知またはスペルミスに関して警告できないことに注意してください。May 4, 2005 | HEIMDAL |