【AWS】Sophos UTMを使ってFQDN(ELB)宛先でSSL-VPNスプリットトンネリング #Sophos

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。

コカコーラが大好きなカジです。

本日はSophos UTMのSSL-VPN接続する際に、指定されたFQDN宛への通信のみVPN接続する方法をご紹介します。

一昔前のSSL-VPN製品だとできない機能でしたが、今は可能だということに驚いています。

構成図

VPC、EC2、ELBを構築し、ELBのDNS名を「www.kajihiroyuki.classmethod.info」になるようにRoute53へエイリアス登録しています。 kaji-fqdn-ssl-vpn-split-tunneling-01

Sophos UTMと、WindowsのSSL-VPNセットアップ

【AWS】統合脅威管理「Sophos UTM」を使ってVPCへSSL-VPN接続する(Windows7編)

基本的に上記手順で登録しますが、以下の箇所だけ異なります。

追加設定項目

Sophos UTMにてDNSの名前解決可否をチェック

名前解決不可の場合は、VPCの設定か、Route53などの設定に誤りがあると思いますので確認ください。 kaji-fqdn-ssl-vpn-split-tunneling-02

ネットワーク定義にて宛先のFQDNを登録

登録時に「DNSホスト」で登録してしまうと、1IPでしか通信しなくなるため必ず、DNSグループで登録しましょう。 kaji-fqdn-ssl-vpn-split-tunneling-03

kaji-fqdn-ssl-vpn-split-tunneling-04

NAT設定を追加し、SSL-VPN ClientアドレスをSophos UTMのElastic IPへIPマスカレード

kaji-fqdn-ssl-vpn-split-tunneling-05

SSL-VPNの「ローカルネットワーク設定」へ最初に追加した宛先用の「ネットワーク定義」を追加

kaji-fqdn-ssl-vpn-split-tunneling-06

通信確認

ELBのIPアドレス確認

% dig www.kajihiroyuki.classmethod.info a +answer
<省略>
;; QUESTION SECTION:
;www.kajihiroyuki.classmethod.info. IN  A

;; ANSWER SECTION:
www.kajihiroyuki.classmethod.info. 3 IN A   54.64.254.67
www.kajihiroyuki.classmethod.info. 3 IN A   52.68.236.120
www.kajihiroyuki.classmethod.info. 3 IN A   52.69.116.5
www.kajihiroyuki.classmethod.info. 3 IN A   54.64.44.235
<省略>

Windowsの場合

SSL-VPNを接続して状態を確認します。

C:¥>ipconfig /all

<省略>

イーサネット アダプター イーサネット:

   接続固有の DNS サフィックス . . . . .:
   説明. . . . . . . . . . . . . . . . .: TAP-Windows Adapter V9
   物理アドレス. . . . . . . . . . . . .: 00-FF-DF-62-7D-DF
   DHCP 有効 . . . . . . . . . . . . . .: はい
   自動構成有効. . . . . . . . . . . . .: はい
   リンクローカル IPv6 アドレス. . . . .: fe80::b8cd:b6d4:4eda:c42c%20(優先)
   IPv4 アドレス . . . . . . . . . . . .: 10.242.2.10(優先)
   サブネット マスク . . . . . . . . . .: 255.255.255.252
   リース取得. . . . . . . . . . . . . .: 2015年9月11日 22:01:08
   リースの有効期限. . . . . . . . . . .: 2016年9月10日 22:01:08
   デフォルト ゲートウェイ . . . . . . .:
   DHCP サーバー . . . . . . . . . . . .: 10.242.2.9
   DHCPv6 IAID . . . . . . . . . . . . .: 335609823

<省略>

C:¥>netstat -rn
===========================================================================
インターフェイス一覧
 20...00 ff df 62 7d df ......TAP-Windows Adapter V9

<省略>
===========================================================================

IPv4 ルート テーブル
===========================================================================
アクティブ ルート:
ネットワーク宛先        ネットマスク          ゲートウェイ       インターフェイ
ス  メトリック
          0.0.0.0          0.0.0.0    192.168.159.2  192.168.159.148     10
        10.10.0.0      255.255.0.0       10.242.2.9      10.242.2.10      2
       10.242.2.1  255.255.255.255       10.242.2.9      10.242.2.10      2
       10.242.2.8  255.255.255.252            リンク上       10.242.2.10    257
      10.242.2.10  255.255.255.255            リンク上       10.242.2.10    257
      10.242.2.11  255.255.255.255            リンク上       10.242.2.10    257
    52.68.236.120  255.255.255.255       10.242.2.9      10.242.2.10      2  *ココ
      52.69.116.5  255.255.255.255       10.242.2.9      10.242.2.10      2  *ココ
    52.69.119.172  255.255.255.255    192.168.159.2  192.168.159.148     11
     54.64.44.235  255.255.255.255       10.242.2.9      10.242.2.10      2  *ココ
     54.64.254.67  255.255.255.255       10.242.2.9      10.242.2.10      2  *ココ
        127.0.0.0        255.0.0.0            リンク上         127.0.0.1    306
        127.0.0.1  255.255.255.255            リンク上         127.0.0.1    306

<省略>

MacOSの場合

% ifconfig utun0
utun0: flags=8051<UP,POINTOPOINT,RUNNING,MULTICAST> mtu 1500
    inet 10.242.2.6 --> 10.242.2.5 netmask 0xffffffff
% netstat -rn -f inet
Routing tables
Internet:
Destination        Gateway            Flags        Refs      Use   Netif Expire
default            172.16.0.254       UGSc           23        1     en0
10.10/16           10.242.2.5         UGSc            0        0   utun0
10.242.2.1/32      10.242.2.5         UGSc            0        0   utun0
10.242.2.5         10.242.2.6         UH              6        0   utun0
52.68.236.120/32   10.242.2.5         UGSc            0        0   utun0  *ココ
52.69.116.5/32     10.242.2.5         UGSc            0        0   utun0  *ココ
52.69.119.172/32   172.16.0.254       UGSc            1        0     en0
54.64.44.235/32    10.242.2.5         UGSc            0        0   utun0  *ココ
54.64.254.67/32    10.242.2.5         UGSc            0        0   utun0  *ココ
127                127.0.0.1          UCS             0       16     lo0
127.0.0.1          127.0.0.1          UH             16    36310     lo0
<省略>
%

SSL-VPNクライアントから、ブラウザアクセス後、ELBのログで確認

ELBのアクセスログを確認し、Sophos UTMのElastic IPからのアクセスされたことを確認します。

2015-09-11T13:07:39.377570Z test 52.69.xxx.xxx:49258 10.10.12.67:80 0.000042 0.002736 0.000022 200 200 0 173 "GET http://www.kajihiroyuki.classmethod.info:80/ HTTP/1.1" "Mozilla/5.0 (Windows NT 6.3; WOW64; Trident/7.0; Touch; rv:11.0) like Gecko" - -

まとめ

検証環境のRoute53に別な検証の設定が入っていて、検証がすんなりいかず、解決までに遠回りしてしまったので、確認方法に盛り込みました。

FQDN宛先指定でSSL-VPNできない場合は、宛先ネットワークにELBを利用するアドレス範囲すべてを登録することを考えましたが、アドレス登録に手間がかかるので、この機能が利用できて安心しました。