前回は、VPN環境を構築したものの、正常に接続できないといったトラブルとして、拠点間VPNとリモートアクセスVPNの双方に共通するトラブルの解決方法を取り上げました。今回も引き続き、VPNで正常に通信できない場合のトラブルシューティングを紹介していきましょう。以下、PPTPおよびIPsecを用いたVPN接続における固有の注意点やトラブルの対処方法を解説していきます。

PPTPのおさらい

まず、PPTPについて、簡単に復習しておきましょう。

PPTP(Point-to-Point Tunneling Protocol)は、OSI参照モデルのデータリンク層(第2層)で動作するプロトコルです。PPPを拡張したトンネリングプロトコルで、送信と受信を1つのトンネルで実現するようにしたものなので、シンプルな構成のため高速での通信が可能です。

しかし、暗号アルゴリズムがRC4固定なため、セキュリティレベルが低く、安全性にはやや問題があります。とはいえ、高速通信が可能で、セットアップが簡単、古いデバイスでもサポートされているというメリットから、リモートアクセスVPNでは、L2TPと併用して使用されることが多いプロトコルです。ちなみに、L2TPもデータリンク層で動作するものです。

  • PPTPを使用したVPN拠点間接続の構成例

PPTPにおけるトラブル

PPTPでは、暗号アルゴリズムが決まっているので、暗号化に関しては、トラブルの原因にはなりません。原因となるようなものには、次のようなものがあります。

(1)ユーザーIDとパスワードのミス

単純なミスですが、ありがちです。入力し直してみましょう。

(2)PPTPが動作していない

ヤマハルータでは、かんたん設定でリモートアクセスVPNの構築ができてしまうのですが、コマンドから設定した場合は、以下のコマンドを発行しなければ、PPTPサーバーは動作しません。

pptp service on

(3)認証プロトコルの不整合

PPTPで使用できる認証プロトコルには、PAP、CHAP、MS-CHAP、MS-CHAPv2があります。ルータ側とクライアント側で使用する認証プロトコルに相違があると、ユーザー認証の段階で失敗してしまいます。ルータ、クライアント、双方の認証プロトコルを見直しましょう。

(4)MPPEの鍵の長さが一致しない

PPTPでは、MPPE(Microsoft Point-To-Point Encryption)による暗号化プロトコルをサポートしています。暗号化アルゴリズムとしてRC4を使い、鍵の長さは40ビット、または128ビットを使えます。

ここで、鍵長を明示的に128ビットに設定してしまうと、それに対応していないクライアントは認証に失敗して接続できません。接続できない場合は、認証プロトコルの不整合だけでなく、鍵の長さも確認してみてください。

なお、次のコマンドを使うと、PPTPの動作状況を表示できます。

show status pptp

正常に動作している時に上記のコマンドを発行して、その結果を保持しておけば、動作が怪しい時に取得したコマンド結果と比較することで、原因の追求が容易になります。

IPsecのおさらい

次に、IPsecに話題を移しましょう。こちらも、まずは復習です。

IPsec(Security Architecture for Internet Protocol)は、ネットワーク層(第3層)で動作するプロトコルで、IPレベルで動作することが大きな特徴と言えます。IPsecは、認証鍵と認証アルゴリズム、暗号アルゴリズムを通信拠点の双方であらかじめ取り決め、IKEという手順を使って、暗号化されたトンネルを構築して通信を行うことで、完全性や機密性を保持した通信を実現するものです。鍵交換用、送信用、受信用と、それぞれでトンネルを使い分けるところも特徴の1つです。現在の拠点間VPNでは、IPsecを使った構築が一般的でしょう。

IPsecはIKE、ESP、AHの3つのプロトコルから構成されます。IKEは秘密鍵情報の交換を安全に行うためのプロトコルで、UPDポート500番を使います。ESPは暗号化と改竄検知機能を持つプロトコルで、AHは改竄検知機能を持つものの、暗号化の仕組みを持たないプロトコルです。

  • IPsecを使用したVPN多拠点接続の構成例

IPsecにおけるトラブル

IPsecには使用するプロトコルが複数あり、用途によってトンネルを使い分けることなどから、トラブルが発生する場所は多岐にわたります。その中でも、発生する頻度の高いトラブルとしては次のようなものがあります。

(1)IPSecが動作していない

IPsecを動作させるには、次のコマンドを実行する必要があります。

ipsec auto refresh on

また、アグレッシブモードでは、動的IPアドレスを持つイニシエータ(鍵交換を始めようと接続要求する)側からしか通信を開始できない点にも注意が必要です。

(2)IPフィルターやNATディスクリプタの設定ミス

IPsecでは、IKEがUPDポート500番を使うことから、この通信がIPフィルターやNATを超えられるように設定しておく必要があります。

(3)IKEパラメータの不一致

そもそも、IKEを使用するには設定しなければならない項目が多く、かつ、それらはすべて正しく設定する必要があります。通信拠点の双方で一致させる設定には、事前共有鍵、暗号アルゴリズム、認証アルゴリズム、SAの寿命、ホスト名などがあるので、見直しましょう。

(4)鍵交換の失敗

イニシエータから鍵交換の接続要求を出しても、レスポンダーが反応しないときがあります。これは、レスポンダー側の設定か、通信経路の問題です。

通信経路に問題がある場合は、IPフィルターやNATディスクリプタの設定に問題がある場合が多いのですが、それを確認するには、IPsecを設定しないでpingが通るかを確認しましょう。

(5)IKE暗号化メッセージの復号失敗

IKEをメインモードで動作させている場合、3番目のメッセージ以降は暗号化されますが、レスポンダー側で正常に復号できず、通信に失敗する場合があります。この場合は、レスポンダー側のログに何らかのエラーメッセージが出ている可能性が高いので、それを確認してみましょう。

(6)ID送信の拒否

ESPやAHのトラフィックを識別するためにIDの送信を行うことがあります。しかし、このIDを受け取れないことが原因で、鍵交換に失敗するケースがあります。ヤマハルータでは、初期設定でIDを送信しないようになっていますが、もし鍵交換に失敗するようなら、IDを送信しない設定となっているかを確認してみてください。

今回も、VPNで正常に通信できない場合のトラブルシューティングとして、PPTPおよびIPsecにおける固有の注意点やトラブルシューティングを紹介しました。正常に通信ができないと焦ってしまいますが、ログなどを参照しながら、設定を一つ一つ確認しながら対処していきましょう。