2022-11-14 · 6

ネットワーク学習 1 — GRE と IPSec

network

この記事は公開から2年以上経過しています。

cryptography

symmetric key(対称鍵):DES、3DES、AES — 暗号化・復号鍵が同じ

asymmetric key(非対称鍵):DH(Key Exchange Protocol)、RSA(CA が必要)— 暗号化・復号鍵が異なる

PowerShell で certlm.msc と入力し Certificates を確認

実際に Windows が持っている証明書ドキュメントを確認できます。

Certificates の過程

Issuer Name

issuer name は、発行者またはその系列会社の名前、あるいはその系列会社の構成員・管理者、またはすべての商号・商標・ロゴ・サービスを意味し、含みます。発行者またはその系列会社が所有・使用する記号や略語、縮小またはシミュレーション、発行者サイトの名前を含みますが、これらに限られません。

CDP

発行 CA の基本証明書失効リスト(CRL)が公開される URL 形式の場所です。失効確認が有効な場合、アプリケーションは URL を使って更新版の CRL を取得します。URL は HTTP(Hypertext Transfer Protocol)や LDAP を使えます。

CDP の助けにより、アプリケーションやサイト訪問者は証明書失効リスト(CRL)を取得して、デジタル証明書が信頼できるかどうかを判断できます。

GRE (Generic Routing Encapsulation)

リモートネットワークをまるでローカルネットワークのように見せるトンネリングプロトコルで、任意の層プロトコルのカプセル化を可能にし、それをルーティングできるよう設計されています。

特徴

Site to Site IP トンネリングプロトコル:もともとシスコで開発されたプロトコル

データ暗号化機能は提供しない:セキュリティ確保のためには、IPsec 機能を追加で適用する必要があります。

トンネリング内で運搬可能なプロトコル:3 層(IPv4、IPv6、IPX、IPSec)、2 層用フレームなど多様です。

GRE トンネルを作るには、あらかじめ 2 つ以上の終端ルーター間に仮想のシリアルリンクインターフェイスを設定する必要があります。

GRE のヘッダー

元のパケットに GRE ヘッダーを付け、このパケットを 2 つ以上のルーター間であらかじめ設定した仮想リンク上で転送し、ルーター間では端対端で HDLC カプセル化したかのように扱います。

GRE のトンネリング区分

1. Point to Point

2. Multipoint

GRE トンネリングについて

GRE トンネルの従来の実装は、2 つのサイト間を移動する地点間トンネル構成を含んでいました。この種の構成は、これが動作であり構成すべきトンネル数が限られているときにはうまく機能します。しかしスポークサイトが多数ある場合、ハブルーターの構成と独立 IP アドレス範囲の数がむしろ早く過剰になり得ます。

GRE ヘッダーについて

基本的に IPv4 の MTU は 1500 byte です。そのうち Header は 20byte で構成されますが、GRE header が後から付きます。そうなると合計 1524 byte になり、このパケットは断片化されます。こうなってはいけないので、最初から後の 24 byte を引いた 1476byte を送ります。

IPSec VPN

0. IPSec VPN 設定の流れ

  • ACL を利用して VPN 対象とするトラフィックを定義します。
  • SA パラメータ値を指定するための IKE ポリシーを定義します。
  • 認証関連の設定値(共有鍵、パスワード、IP アドレス)を設定します。
  • IPSec 通信を行うための Transform-set を定義します。
  • IPSec ポリシーを定義します。
  • インターフェイスに IPSec ポリシーを適用します。

1. ACL を利用して VPN 対象とするトラフィックを定義します。

Extended ACL を使い、公衆網を利用して IPSec VPN を使うトラフィック対象を指定する必要があります。

Router(config)# access-list [number] [permit | deny] [protocol] [Source] [source wildcard-mask] [destination] [destination whildcard-mask]

VPN では Permit を使う必要があります!

2. ACL を利用して VPN 対象とするトラフィックを定義します。

ISAKMP SA(IKE 1)ポリシー定義

ISAKMP SA(IKE 1)の暗号化・認証に関するパラメータを設定します。設定は次のように 'config-isakmp' モードに入って行います。

Router(config)# crypto isakmp policy [policy number 1~10000]

3. 各パラメータ定義

  • 認証方式
  • 暗号化アルゴリズム
  • Diffie-Hellman グループ
  • ハッシュアルゴリズム
  • 有効期間
  • 認証設定(共有秘密鍵と IP アドレス関連)

4. 認証方式

認証方式には公開鍵方式と共有秘密鍵方式があります。デフォルト値は 'rsa-sig' です。

Router(config)# authentication [pre-share | rsa-encr | rsa-sig]

5. 暗号化アルゴリズム

暗号化アルゴリズムを指定します。デフォルト値は 'des' です。

Router(config)# encryption [3des | aes | des]

6. Diffie-Hellman グループ

秘密鍵を安全に送受信するための 'Diffie-Hellman' グループを選択します。デフォルト値は 'group 1' です。

数値が大きいほど暗号化強度は高いですが、オーバーヘッドが増加します。

Router(config-isakmp)# group [1 | 2 | 5 | 14 ...]

7. ハッシュアルゴリズム

認証アルゴリズムを指定し、'md5'、'sha' を選択できます。デフォルト値は 'sha' です。

Router(config-isakmp)# hash [md5 | sha ...]

8. 有効期間

SA を長時間使うとセキュリティ上脆弱なため、適当な時間間隔で新しく更新されるよう有効期間を指定します。デフォルト値は 86400 秒(1 日)です。

Router(config-isakmp)# lifetime [60~86400 second]

9. 認証関連の設定値(共有鍵、パスワード、IP アドレス)を設定します。

相互ルーター間で共用する共有鍵(パスワード)と IP アドレスを設定します。

Router(config)# crypto isakmp key [password] address [destination ipv4 address]

このときパスワードは相手と同一に指定します。

10. IPSec 通信を行うための Transform-set を定義します。

Transform-set では AH、ESP を定義し、ユーザーは認証プロトコルと暗号アルゴリズムを指定します。また、IPSec 通信モードの指定を行います。

Router(config)# crypto ipsec transform-set TS esp-3aes esp-sha-hmac

11. IPSec モード定義

IPSec 通信モードを指定します。モードは次のようにトランスポートモードとトンネルモードで指定できます。デフォルト値はトンネルモードです。

Router(cfg-crypto-trans)# mode [transport | tunnel]

12. IPSec ポリシーを定義します。

IPSEC SA(IKE 2)設定を行います。設定が完了したらインターフェイスに適用します。

crypto map 定義

Router(config)# crypto map [name: string] [number: 1~65535] jipsec-isakmp

13. IPSec 相手ルーターの IP アドレス指定

Router(config-crypto-map)# set peer [hostname | ip address]

14. Transform-set 指定

Router(config-crypto-map)# set transform-set [transform-set name]

15. IPSec SA 生存時間指定

IPSec SA の生存時間を指定します。指定にはパケットを使用したキロバイト数、秒を指定できます。どちらでも条件に先に合った基準で適用されます。デフォルト値は '4.6 ギガバイト'、'3600 秒(1 時間)' です。

Router(config-crypto-map)# set security-association lifetime [kilobytes | seconds]

16. インターフェイスに IPSec ポリシーを適用します。

設定した IPSec ポリシーを次のような方法でインターフェイスに適用します。

Router(config)# interface [interface name]
Router(config-if)# crypto map [crypto map name]

原文(韓国語): tistory — 2022-11-14 公開、当ブログへ移行。この翻訳は AI の協力で作成されました。

コメント

コメントを削除しますか?

関連記事

ネットワーク学習 1 — GRE と IPSec · 나봄하랑