総合手引 | セクション 8 | English | オプション |
setkey
ユーティリティは、一連の操作を標準入力から受け取るか (
| |
SAD エントリをダンプします。
| |
| |
SAD エントリを捨てます。
| |
| |
setkey
は通常、
| |
| |
| |
| |
| |
| |
冗長になります。 プログラムは、 PF_KEY ソケット上で交換したメッセージをダンプします。 これには他プロセスからカーネルに送られたメッセージを含みます。 | |
| |
無限ループし、
PF_KEY
ソケットへ送られる全メッセージをダンプします。
| |
add
[ | |
get
[ | |
delete
[ | |
deleteall
[ | |
flush
[protocol]
;
オプションに適合する全 SAD エントリをクリアします。
コマンドラインに
| |
dump
[protocol]
;
オプションに適合する全 SAD エントリをダンプします。
コマンドラインに
| |
spdadd
[ | |
spddelete
[ | |
spdflush
;
全 SPD エントリをクリアします。
コマンドラインに
| |
spddump
;
全 SPD エントリをダンプします。
コマンドラインに
| |
メタ引数は下記の通りです:
src
dst | |
セキュアコミュニケーションの始点/終点を IPv4/v6 アドレスで指定します。
setkey
ユーティリティは FQDN を数値アドレスに解決可能です。
FQDN が複数のアドレスに解決された場合、
setkey
はすべての組み合わせを試みて、
複数の SAD/SPD エントリをカーネルにインストールします。
| |
protocol | protocol は次のいずれか 1 つです: |
esp | rfc2406 を基にした暗号ペイロード |
esp-old | |
rfc1827 を基にした暗号ペイロード | |
ah | rfc2402 を基にした認証ヘッダ |
ah-old | rfc1826 を基にした認証ヘッダ |
ipcomp | IPComp |
tcp | rfc2385 を基にした TCP-MD5 |
spi |
SAD および SPD 用の、セキュリティパラメータインデックス (SPI)。
spi
は 10 進数または
‘0x’
付きの 16 進数で指定する必要があります。
範囲 0 から 255 の SPI 値は、将来の使用のために IANA が予約しており、
使用できません。
TCP-MD5 関係は 0x1000 を使わないとなりませんので、
現時点ではホストごとの粒度しかありません。
|
extensions | |
次に示す引数を受け付けます: | |
| |
使用するセキュリティプロトコルモードを指定します。 mode は次のいずれか 1 つです: transport, tunnel, any 。 デフォルト値は any です。 | |
| |
繰り返し攻撃を防ぐためのウィンドウサイズをバイト数で指定します。 size は 32 ビットワードの 10 進数で指定する必要があります。 size が 0 または指定されなかった場合、繰り返しのチェックは行われません。 | |
| |
SAD 中のポリシエントリの識別子を指定します。 policy を参照してください。 | |
| |
ESP パディングの内容を指定します。 pad_option は次のいずれか 1 つです: | |
zero-pad | パディングはすべて 0。 |
random-pad | 一連の乱数値を設定。 |
seq-pad | 1 から開始して増加する一連の数を設定。 |
| |
周期的な順序番号を許可しません。 | |
| |
SA のハード有効期間/ソフト有効期間を指定します。 | |
algorithm | |
| |
ESP 用に暗号化アルゴリズム ealgo を指定します。 | |
| |
AH 用に認証アルゴリズムを指定します。 | |
| |
IPComp 用に圧縮アルゴリズムを指定します。
| |
key は、ダブルクォートで括られた文字列か、 一続きの ‘0x’ 付き 16 進数で指定する必要があります。
ealgo, aalgo, calgo が取り得る値は別の節で規定します。
src_range
dst_range | |
セキュアコミュニケーションの選択であり、
IPv4/v6 アドレスまたは IPv4/v6 アドレス範囲で指定します。
TCP/UDP ポート指定を付加することも可能です。
次の形式を受け付けます:
address address/prefixlen address[port] address/prefixlen[port] prefixlen と port は 10 進数で指定する必要があります。 port の周りの角括弧は、実際に必要です。 マニュアルページのメタ文字ではありません。 FQDN の解決に関しては、 src と dst に対して適用されるルールがここでも適用されます。
| |
upperspec | |
使用する上位層プロトコル。
upperspec
として、
/etc/protocols
中の 1 語を使用可能です。
または、
icmp6,
ip4,
any
を指定可能です。
any
は
"任意のプロトコル"
を意味します。
また、プロトコル番号を使用可能です。
上位層が ICMPv6 の場合、ICMPv6 用のタイプやコードを指定可能です。
仕様は
icmp6
の後に置きます。
タイプは、単一のコンマで区切ります。
コードは常に指定することが必要です。
0 が指定された場合、カーネルはこれをワイルドカードとして扱います。
カーネルはワイルドカードと ICMPv6 タイプ 0 とを区別できないことに
注意してください。
例えば下記は、
入力の近隣要請に対して IPsec が不要というポリシを意味します。
spdadd ::/0 ::/0 icmp6 135,0 -P in none;
注: upperspec は、現時点では転送に対して機能しません。 転送ノードにおいて、追加の再構成 (現時点では未実装) が必要となるからです。 /etc/protocols には多数のプロトコルが登録されていますが、 TCP, UDP, ICMP 以外は IPSec と共に使用するには不適切かもしれません。 そのようなプロトコルの使用には、注意してください。
| |
policy | |
policy は次の 3 種類の形式のうちいずれか 1 つです: | |
| |
protocol/mode/src-dst/level [...]
ポリシの方向を
direction
で指定する必要があります。
out
または
in
が使用されます。
discard
は、インデックスに適合するパケットが捨てられることを意味します。
none
は、パケットに対して IPsec 操作が実施されないことを意味します。
ipsec
は、パケットに対して IPsec 操作が実施されることを意味します。
protocol/mode/src-dst/level
の部分は、パケット処理方法のルールを指定します。
ah,
esp,
ipcomp
のいずれかを、
protocol
として設定します。
mode
は
transport
または
tunnel
のいずれかです。
mode
が
tunnel
の場合、
SA の末端アドレスを、
src
および
dst
で、両アドレス間に
'-'
を付けて指定する必要があります。
これは、使用する SA を指定するために用いられます。
mode
が
transport
の場合、
src
と
dst
は両方省略可能です。
level
は次のいずれかです:
default, use, require,
unique
。
すべてのレベルにおいて SA が利用可能でない場合、
SA 取得要求をカーネルは鍵交換デーモンに送ります。
default
は、カーネルがパケットを処理するとき、
指定したプロトコルについて、
システム全体のデフォルトを問い合わせることを意味します。
これは例えば
sysctl 変数
esp_trans_deflev
を指します。
use
は、カーネルが SA を使用可能であれば使用し、
使用不能の場合には通常操作を続けることを意味します。
require
は、ポリシに適合するパケットをカーネルが送る時には
いつも SA が必要であることを意味します。
unique
は require と同じです。
更に、ポリシが一意な外向き SA に結合することを許します。
ポリシレベルには
unique
を指定するだけで良く、
racoon(8)
がそのポリシのために SA を設定してくれます。
そのポリシ用に手動キー入力で SA を設定する場合、
unique
の後にコロン
‘:amp;’
で区切った後に 10 進数でポリシ識別子を指定可能であり、次のようにします:
unique:number
。
これでこのポリシが SA に結合されます。
number
は 1 から 32767 の範囲にあることが必要です。
これは、手動 SA 設定の
extensions esp/transport//require ah/transport//require; ルールの順序は非常に重要です。 "discard" と "none" は ipsec_set_policy(3) [英語] に記述されている構文には存在しないことに注意してください。 両者の構文にはちょっとした違いがあります。 詳細は ipsec_set_policy(3) [英語] を参照してください。
| |
アルゴリズム 鍵長 (ビット) コメント hmac-md5 128 ah: rfc2403 128 ah-old: rfc2085 hmac-sha1 160 ah: rfc2404 160 ah-old: 128bit ICV (文書無し) keyed-md5 128 ah: 96bit ICV (文書無し) 128 ah-old: rfc1828 keyed-sha1 160 ah: 96bit ICV (文書無し) 160 ah-old: 128bit ICV (文書無し) null 0 〜 2048 デバッグ用 hmac-sha2-256 256 ah: 96bit ICV (draft-ietf-ipsec-ciph-sha-256-00) hmac-sha2-384 384 ah: 96bit ICV (文書無し) 384 ah-old: 128bit ICV (文書無し) hmac-sha2-512 512 ah: 96bit ICV (文書無し) 512 ah-old: 128bit ICV (文書無し) hmac-ripemd160 160 ah: 96bit ICV (RFC2857) ah-old: 128bit ICV (文書無し) aes-xcbc-mac 128 ah: 96bit ICV (RFC3566) 128 ah-old: 128bit ICV (文書無し) tcp-md5 8 to 640 tcp: rfc2385
次に示すのは、
protocol
パラメータの
アルゴリズム 鍵長 (ビット) コメント des-cbc 64 esp-old: rfc1829, esp: rfc2405 3des-cbc 192 rfc2451 null 0 〜 2048 rfc2410 blowfish-cbc 40 〜 448 rfc2451 cast128-cbc 40 〜 128 rfc2451 des-deriv 64 ipsec-ciph-des-derived-01 3des-deriv 192 文書無し rijndael-cbc 128/192/256 rfc3602 aes-ctr 160/224/288 draft-ietf-ipsec-ciph-aes-ctr-03
aes-ctr 鍵の最初の 128 ビットは AES 鍵として使用され、 残りの 32 ビットは nonce として使用されることに注意してください。
次に示すのは、
protocol
パラメータの
アルゴリズム コメント deflate rfc2394
add 3ffe:501:4819::1 3ffe:501:481d::1 esp 123457 -E des-cbc 0x3ffe05014819ffff ;add -6 myhost.example.com yourhost.example.com ah 123456 -A hmac-sha1 "AH SA configuration!" ;
add 10.0.11.41 10.0.11.33 esp 0x10001 -E des-cbc 0x3ffe05014819ffff -A hmac-md5 "authentication!!" ;
get 3ffe:501:4819::1 3ffe:501:481d::1 ah 123456 ;
flush ;
dump esp ;
spdadd 10.0.11.41/32[21] 10.0.11.33/32[any] any -P out ipsec esp/tunnel/192.168.0.1-192.168.1.2/require ;
add 10.1.10.34 10.1.10.36 tcp 0x1000 -A tcp-md5 "TCP-MD5 BGP secret" ;
http://www.kame.net/newsletter/19991007/, Changed manual key configuration for IPsec, October 1999.
IPsec ゲートウェイ設定では、 TCP/UDP ポート番号付きの src_range と dst_range は動作しません。 これは、ゲートウェイがパケットを再組み立てしないからです (上位層ヘッダの検査はできません)。
SETKEY (8) | November 20, 2000 |
総合手引 | セクション 8 | English | オプション |
このマニュアルページサービスについてのご意見は Ben Bullock にお知らせください。 Privacy policy.