Fortigateには、SSL-VPN機能が備わっており、比較的簡単にリモート環境からの接続が可能です。 Fortigateローカルに登録されたユーザで認証し、端末にForticlient(無償)をインストールするトンネルモードを使用して、接続する設定を確認します。

SSL-VPN ユーザ作成
今回、リモートユーザとしてhirotanoを作成します。 ユーザ&認証 – ユーザ定義へ移動し、新規作成をクリックします。

ローカルユーザを選択し、次へをクリックします。

ユーザ名とパスワードを入力し、次へをクリックします。

何も設定せず、次へをクリックします。

何も設定せず、サブミットをクリックします。

以下のように登録されます。

SSL-VPN設定
VPN – SSL-VPN設定 へ移動し、SSL-VPNの受付設定をします。

- リッスンするインタフェース:SSL-VPNを受け付けるインターネット側のインタフェースを指定します。今回、インターネットにはport1が接続されています。
- リッスンするポート:httpsの管理用として、443を使用しているため、それと被らないポート番号に指定します。今回は4443とします。

- アドレス範囲:SSL-VPNクライアントへ割り当てられるプールアドレスです。デフォルトでは、10.212.134.200〜210ですが、カスタムIP範囲を指定で変更することも可能です。今回は、デフォルトの自動的にアドレス割り当てを指定します。
- DNSサーバ:特定のDNSサーバを指定することができます。今回は、IPアドレスでの接続確認とするため、クライアントシステムのDNSと同じを指定します。
- 認証/ポータルマッピング:ポータルをtunnel-accessに設定します。これは、VPN – SSL-VPNポータルで予め設定されているポータルで、トンネルモードで接続するよう設定されています。
設定完了後、適用をクリックします。
ファイアウォールポリシー設定
ポリシー&オブジェクトへ移動し、SSL-VPN用のポリシーを設定します。 まず、アドレス より内部にあるRDP接続先の端末(10.0.1.10)をオブジェクトとして新規作成します。

ファイアウォールポリシー へ移動し、SSL-VPN用のポリシーを設定します。

- 着信インタフェース:SSL-VPN用のインタフェースを選択します。
- 発信インターフェース:内部向けのインタフェースを指定します。
- 送信元:SSL-VPNで使用するプールアドレスとユーザの両方を登録します。+をクリックすルと、アドレスとユーザを設定できます。


- 宛先:内部端末として登録したInternal-RDPを選択します。
- サービス:今回はテストですので、ALLとします。
- NAT:無効化します。
また、許可トラフィックをログ はすべてのセッション を取得するようにします。

端末側の設定
端末にForticlientをインストールします。Forticlientは https://www.forticlient.com/downloads よりダウンロードできます。 (Windows、MAC、モバイルなどサポートされています。以下はMAC端末で動作確認しています)

- Connection Name: 任意の名前を設定します。今回はSSL-VPN とします。
- Remote Gateway:FortigateでSSL-VPNを受け付けるグローバルアドレス
- Customize port: 4433
- Do not Warn Invalid Server Certificate :チェックを入れる
完了後、Saveをクリックします。
先ほど、設定したSSL-VPNという名称のプロファイルを選択し、ユーザ名とパスワードを入力し、Connectをクリックします。

しばらくすると、以下の画面のようにSSL-VPNが接続されたことが確認できます。

端末のIPアドレスを確認すると、PPP接続として、10.212.134.200 が割り当てられています。
$ ifconfig -a ppp0: flags=8051mtu 1354 inet 10.212.134.200 --> 169.254.38.179 netmask 0xff000000
また、ルーティングテーブルを見ると、SSL-VPNポリシーで宛先として設定した10.0.1.10/32がPPPインタフェース向けへ学習されています。
$ netstat -r
Routing tables
Internet:
Destination Gateway Flags Refs Use Netif Expire
default 192.168.3.1 UGSc 82 0 en1
10.0.1.10/32 169.254.38.179 UGSc 1 0 ppp0
169.254 link#6 UCS 1 0 en1 !
169.254.38.179 10.212.134.200 UH 2 0 ppp0
そのため、10.0.1.10以外の接続は、トンネル接続対象外となります。10.1.0.10へRDP接続してみます。

FortigateでダッシュボードからNetworkを選択し、SSL-VPNを確認すると、ユーザ名 hirotano でアクセスされていることが確認できます。

【ログ&レポート】-【転送トラフィック】で ユーザ名 hirotanoが10.1.0.10へRDP接続していることが確認できます。

ローカルユーザではなく、外部のLDAPサーバと連携してユーザ認証を行う場合は、以下の記事を参考にしてください。
>> 参考記事 : SSL-VPNリモート接続(トンネルモード、ActiveDirectory連携、LDAP連携)FortiOS6.2.4
コメント