(NW)SSLVPN接続やってみる

投稿者: | 2020年10月8日
皆さんこんにちは。

今回はSSLVPN接続を試してみようかとおもいます。
手元のクライアントLinux <–> FortiGate 60E 間でSSLVPNをはってその通信とかを覗いてみようかとおもいます。

やることとしては、
1,FortigteにSSLVPNの設定を入れる
    – 今回は設定済み
    – まだ、画面ポチポチレベルの操作感なのでコマンド覚えたら別途まとめようとおもいます
2, Linux にクライアントソフトをインストールする
3, SSLVPN接続を行う
4, もろもろ確認

使用機材:
* L3SW : Catalyst 3560
* FW : Fortigate-60E
* ルータ : YAMAHA RTX1210
* クライアントPC : GentooLinux

SSLVPN設定

SSLVPNクライアントをインストールする

手元のクライアントPCにソフトをインストールします。
fortinetの公式サイトに各OSのインストール方法がまとまっています。
https://www.forticlient.com/downloads

Gentooのインストール方法が載って無かったのでパッケージが無いか探します。

「net-vpn/openfortivpn」がいけそうです。インストールします。
https://github.com/adrienverge/openfortivpn

SSLVPN接続をする

諸々確認

それではもろもろ確認していこうとおもいます。
まず接続時にログが流れていますが「ppp0」という仮想インターフェースが設定されているみたいです。 FortigateのSSLVPNアドレスプールに設定した「10.1.1.1」のIPアドレスが設定されています。うまく行ってそう。

つづいてルーティングテーブルを確認します。 VPN接続先のNW「192.168.1.0/24」宛の通信は、ppp0 を通って通信するように設定されています。
これでVPN先のNWにルーティングされるようになってるみたいです。

それでは最後にVPN接続先NWにいる「テストサーバ」にSSH接続をしてみようとおもいます。 SSLVPN接続をして、リモートのローカルNWのPCに接続することが出来ました。

ちょっと上記の通信を覗いてみようとおもいます。
まずはクライアントPCのppp0の通信を見ようとおもいます。 「10.1.1.1.40252 > 192.168.1.20.ssh」ローカルIP同士の通信になっていてVPN接続されていることが分かります。

つづいてミラーポートを設定してるL3SWに流れる通信を覗いてみようとおもいます。
SSLVPNなのでSSL/TLSで暗号化されたパケットが流れているはずです。
FortigateのグローバルIPv4アドレス宛の通信をキャプチャしました。
MAP-Eを使っているのでIPv6でカプセル化されたIPv4パケットの中にTLSで暗号化されたSSLVPNの通信が確認できます。
このなかに先ほどtcpdumpで確認した通信が暗号化されて入ってるはずです。


以上で今回の検証を終りたいとおもいます。
リモートワークなどで利用されるSSLVPNについて今回は試してみました。
そのうちL2TPなどの他のVPN手法も試してみようかなとおもいます。

それではまた。


参考:
https://www.jpne.co.jp/ebooks/v6plus-ebook.pdf