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

2015.09.14

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

本日は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を利用するアドレス範囲すべてを登録することを考えましたが、アドレス登録に手間がかかるので、この機能が利用できて安心しました。