Oracle® Solaris 11.2 でのネットワークのセキュリティー保護

印刷ビューの終了

更新: 2014 年 9 月
 
 

IPsec のサービス、ファイル、およびコマンド

このセクションには、IPsec サービス、一部の IPsec RFC、および IPsec に関連するファイルとコマンドがリストされます。

IPsec サービス

    サービス管理機能 (SMF) は、次の IPsec サービスを提供します。

  • svc:/network/ipsec/policy サービス – IPsec ポリシーを管理します。デフォルトでは、このサービスは有効になっています。config_file プロパティーの値によって ipsecinit.conf ファイルの場所が決まります。DefaultFixed ネットワーク構成プロファイルを実行しているシステムの初期値は /etc/inet/ipsecinit.conf です。このプロファイルを実行していないシステムでは、プロパティー値が空です。

  • svc:/network/ipsec/ipsecalgs サービス – IPsec で使用できるアルゴリズムを管理します。デフォルトでは、このサービスは有効になっています。

  • svc:/network/ipsec/manual-key サービス – 手動鍵管理をアクティブにします。デフォルトでは、このサービスは無効になっています。config_file プロパティーの値によって ipseckeys 構成ファイルの場所が決まります。初期値は /etc/inet/secret/ipseckeys です。

  • svc:/network/ipsec/ike サービス – IKE を管理します。デフォルトでは、このサービスは無効になっています。構成可能なプロパティーについては、IKEv2 サービスおよび IKEv1 サービスを参照してください。

SMF については、Oracle Solaris 11.2 でのシステムサービスの管理 の第 1 章サービス管理機能の概要を参照してください。smf(5)svcadm(1M)、および svccfg(1M) のマニュアルページも参照してください。

ipsecconf コマンド

ホストの IPsec ポリシーを構成するには、ipsecconf コマンドを使用します。このコマンドを実行してポリシーを構成すると、IPsec ポリシーのエントリがカーネル内に作成されます。システムは、これらのエントリを使用して、インバウンドおよびアウトバウンドの IP パケットすべてがポリシーに沿っているかどうかを検査します。トンネリングされずに転送されるパケットは、このコマンドを使用して追加されるポリシー検査の対象になりません。また、ipsecconf コマンドはセキュリティーポリシーデータベース (SPD) 内の IPsec エントリも管理します。IPsec ポリシーオプションについては、ipsecconf(1M) のマニュアルページを参照してください。

ipsecconf コマンドを呼び出すには、root 役割になる必要があります。このコマンドは、両方向のトラフィックを保護するエントリを構成できます。このコマンドは、片方向だけのトラフィックを保護するエントリも構成できます。

ローカルアドレスとリモートアドレスというパターンのポリシーエントリは、1 つのポリシーエントリで両方向のトラフィックを保護します。たとえば、指定されたホストに対して方向が指定されていない場合、laddr host1raddr host2 というパターンを含むエントリは、両方向のトラフィックを保護します。そのため、各ホストにポリシーエントリを 1 つだけ設定すれば済みます。

ipsecconf コマンドで追加されたポリシーエントリには持続性がなく、システムのリブート時に失われます。システムのブート時に IPsec ポリシーが確実にアクティブになるようにするには、/etc/inet/ipsecinit.conf ファイルにポリシーエントリを追加したあと、policy サービスをリフレッシュするか有効化します。例については、IPsec によるネットワークトラフィックの保護を参照してください。

ipsecinit.conf 構成ファイル

Oracle Solaris を起動したときに IPsec セキュリティーポリシーを有効化するには、特定の IPsec ポリシーエントリを使用して構成ファイルを作成し IPsec を初期化します。このファイルのデフォルトの名前は /etc/inet/ipsecinit.conf です。ポリシーエントリとその形式の詳細については、ipsecconf(1M) のマニュアルページを参照してください。ポリシーの構成が完了したら、svcadm refresh ipsec/policy コマンドでポリシーをリフレッシュできます。

サンプルの ipsecinit.conf ファイル

Oracle Solaris ソフトウェアには、サンプルの IPsec ポリシーファイル ipsecinit.sample が含まれます。このファイルをテンプレートとして独自の ipsecinit.conf ファイルを作成できます。ipsecinit.sample ファイルには、次のエントリが含まれています。

...
# In the following simple example, outbound network traffic between the local
# host and a remote host will be encrypted. Inbound network traffic between
# these addresses is required to be encrypted as well.
#
# This example assumes that 10.0.0.1 is the IPv4 address of this host (laddr)
# and 10.0.0.2 is the IPv4 address of the remote host (raddr).
#

{laddr 10.0.0.1 raddr 10.0.0.2} ipsec
	{encr_algs aes encr_auth_algs sha256 sa shared}

# The policy syntax supports IPv4 and IPv6 addresses as well as symbolic names.
# Refer to the ipsecconf(1M) man page for warnings on using symbolic names and
# many more examples, configuration options and supported algorithms.
#
# This example assumes that 10.0.0.1 is the IPv4 address of this host (laddr)
# and 10.0.0.2 is the IPv4 address of the remote host (raddr).
#
# The remote host will also need an IPsec (and IKE) configuration that mirrors
# this one.
#
# The following line will allow ssh(1) traffic to pass without IPsec protection:

{lport 22 dir both} bypass {}

#
# {laddr 10.0.0.1 dir in} drop {}
#
# Uncommenting the above line will drop all network traffic to this host unless
# it matches the rules above. Leaving this rule commented out will allow
# network packets that do not match the above rules to pass up the IP
# network stack. ,,,
ipsecinit.confipsecconf のセキュリティーについて

確立された接続の IPsec ポリシーを変更することはできません。ポリシーの変更ができないソケットを、「ラッチされたソケット」と呼びます。新しいポリシーエントリは、すでにラッチされたソケットを保護しません。詳細は、connect(3SOCKET) および accept(3SOCKET) のマニュアルページを参照してください。自信がない場合は、接続を再起動してください。詳細は、ipsecconf(1M) のマニュアルページのセキュリティーのセクションを参照してください。

ipsecalgs コマンド

暗号化フレームワークは、認証と暗号化のアルゴリズムを IPsec に提供します。ipsecalgs コマンドを使用すると、各 IPsec プロトコルでサポートされているアルゴリズムを一覧表示できます。ipsecalgs の構成は /etc/inet/ipsecalgs ファイルに保存されます。通常、このファイルを変更する必要はなく、直接編集してはいけません。ただし、ファイルを変更する必要がある場合は、ipsecalgs コマンドを使用します。サポートされるアルゴリズムは、システムのブート時に svc:/network/ipsec/ipsecalgs:default サービスによってカーネルと同期されます。

有効な IPsec プロトコルおよびアルゴリズムは、RFC 2407 に記載されている ISAKMP 解釈ドメイン (DOI) によって記述されます。特に、ISAKMP DOI は、有効な IPsec アルゴリズム PROTO_IPSEC_AH とそのプロトコルの PROTO_IPSEC_ESP の命名規約や番号付け規約を定義します。1 つのアルゴリズムは 1 つのプロトコルだけに関連します。このような ISAKMP DOI 定義は、/etc/inet/ipsecalgs ファイルにあります。アルゴリズム番号とプロトコル番号は、Internet Assigned Numbers Authority (IANA) によって定義されます。ipsecalgs コマンドは、IPsec アルゴリズムのリストを拡張します。

アルゴリズムの詳細については、ipsecalgs(1M) のマニュアルページを参照してください。暗号化フレームワークの詳細については、Oracle Solaris 11.2 での暗号化と証明書の管理 の第 1 章暗号化フレームワークを参照してください。

ipseckey コマンド

ipseckey コマンドは、各種オプションとともに IPsec の鍵を手動で管理します。ipseckey コマンドの説明については、ipseckey(1M) のマニュアルページを参照してください。

ipseckey におけるセキュリティーについて

ipseckey コマンドを使用すると、Network Security または Network IPsec Management 権利プロファイルを持つ役割は、暗号鍵に関する機密情報を入力できます。場合によっては、不正にこの情報にアクセスして IPsec トラフィックのセキュリティーを損なうことも可能です。


注 -  可能な場合は、手動の鍵処理ではなく IKE を使用します。

詳細は、ipseckey(1M) のマニュアルページのセキュリティーのセクションを参照してください。

kstat コマンド

kstat コマンドは、ESP、AH、およびその他の IPsec データの統計を表示できます。IPsec 関連のオプションは、IPsec および IKE の意味上の誤りのトラブルシューティングにリストされています。kstat(1M) のマニュアルページも参照してください。

snoop コマンドと IPsec

snoop コマンドは、AH ヘッダーと ESP ヘッダーを構文解析できます。ESP はそのデータを暗号化するため、ESP で暗号化および保護されたヘッダーは snoop コマンドでは読み取ることができません。AH はデータを暗号化しないため、AH で保護されたトラフィックは snoop コマンドで検査できます。このコマンドに –V オプションを指定すると、いつ AH がパケットに使用されているかを表示できます。詳細は、snoop(1M) のマニュアルページを参照してください。

保護されたパケットに snoop コマンドを実行した場合の詳細な出力については、IPsec によってパケットが保護されていることを確認する方法を参照してください。

このリリースにバンドルされている無料のオープンソースソフトウェア Wireshark のように、サードパーティーのネットワークアナライザも利用できます。

IPsec RFC

    インターネットエンジニアリングタスクフォース (IETF) は、IP 層のセキュリティーアーキテクチャーを説明するいくつかの RFC (Requests for Comments) を公表しています。RFC へのリンクについては、http://www.ietf.org/http://www.ietf.org/を参照してください。次の RFC リストは、比較的一般的な IP セキュリティーの参考文献です。

  • RFC 2411、『IP Security Document Roadmap』、1998 年 11 月

  • RFC 2401、『Security Architecture for the Internet Protocol』、1998 年 11 月

  • RFC 2402、『IP Authentication Header』、1998 年 11 月

  • RFC 2406、『IP Encapsulating Security Payload (ESP)』、1998 年 11 月

  • RFC 2408、『Internet Security Association and Key Management Protocol (ISAKMP)』、1998 年 11 月

  • RFC 2407、『The Internet IP Security Domain of Interpretation for ISAKMP』、1998 年 11 月

  • RFC 2409、『The Internet Key Exchange (IKEv1)』、1998 年 11 月

  • RFC 5996、『Internet Key Exchange Protocol Version 2 (IKEv2)』、2010 年 9 月

  • RFC 3554、『On the Use of Stream Control Transmission Protocol (SCTP) with IPsec』、2003 年 7 月