IPsec ポリシーはソケット単位レベルおよびシステム全体レベルで適用できます。
IPsec は、IPsec のポリシールールに一致するアウトバウンドパケットとインバウンドパケットにポリシーを適用します。各ポリシールールは 1 つ以上のアクションを持つことができます。アクションには、特定のアルゴリズムを使用してパケットを暗号化したり、暗号化せずにパケットを受け渡したりするものがあります。許容される複数のアルゴリズムを指定するために、ポリシールールで複数のアクションを使用することもあります。
IPsec ポリシールールには 3 つの部分があります。
セレクタ - ルールがネットワークパケットに一致するかどうかを判別します。トラフィックセレクタとも呼ばれます。空白 ({}) セレクタはすべてのトラフィックに一致します。セレクタは、アクションとパラメータのペアを複数持つことができます。
アクション - トラフィックがセレクタに一致したときに適用されます。アクションの例には ipsec および pass があります。
アクションパラメータ - アクションの追加の指定。pass や drop のような単純なアクションにパラメータはありません。ipsec などのアクションは、暗号化パラメータを指定できます。
IPsec ポリシーはインバウンドとアウトバウンドの両方のパケットに適用されます。すべてのルールに一致しないパケットは受け渡されます。パケットが複数のルールに一致する場合は、最初に一致したものが使用されます。
ルールは下記の順序で処理されます。
ソケット単位のルール
システム全体の pass、bypass、および drop ルール
ESP を使用するシステム全体の ipsec ルール
AH を使用するシステム全体の ipsec ルール
bypass および or pass オプションによって、パケットに適用される IPsec ポリシーに対して、例外を指定できます。
IPsec ルールのすべてまたは一部を bypass できます。バイパスルールに一致するパケットは IPsec 保護が適用されずに通過することが許可され、パケットに一致するほかの IPsec ポリシールールは適用されません。たとえば、Web クライアントからのパケットを暗号化する必要がなくなることがあります。IPsec を使用してほかのサーバーとの Web サーバー通信を保護する方法を参照してください。
IPsec ポリシールールの or pass アクションを使用すると、ルールの以前のアクションと一致する IPsec 以外のパケットをシステムに渡すことができます。encrypt アクションと or pass アクションを持つ IPsec ポリシールールは、暗号化されたパケット、およびクライアントシステムからの暗号化されていないパケットを受け入れます。
or pass アクションを使用すると、IPsec で構成されているクライアントに加えて、IPsec で構成されていないクライアントにサーバーが対応できます。1 つの使用例としては、すべてのシステムに IPsec を構成するためにネットワークを移行している場合があります。このオプションは、すべてのトラフィックを暗号化する必要がある環境には適していません。例については、使用例 30を参照してください。
ipsecinit.conf ファイルと ipsecconf コマンドを使用して、IPsec ポリシーを構成します。詳細と例については、ipsecconf(1M) のマニュアルページとIPsec の構成を参照してください。