FortiGate SSL-VPN 二要素認証(e-mail)設定 CLI設定必要
FortiGateにはSSL-VPNを使ったリモートアクセスが容易に構成できる事から、テレワーク利用にも使えます。
SSL-VPN設定については世の中にすで多くの情報が得られる状態になっているため、
本ページでは、二要素認証時にE-mailを使ったワンタイムパスワード(AuthCode)の通知設定と、
実用的な利用に必要となる修正箇所についてまとめております。
(2021/03/20公開、2021/05/24最終更新)
本ページは、弊社で案内している、FortiGateでv6Direct/固定IP1設定が完了しており、
SSL-VPNについて基本的な設定知識がある物として説明を開始しています。
下記動作確認においては
v6Direct/固定IP1契約
FortiGate-40F FortiOS Ver6.4.4
FortiClient VPN(無償版)Ver6.4.3.1608
を使用して確認しております。
下記は内容の正確性について保証するものでは御座いませんので参考としてご利用下さい。
1)基本設定について
v6Direct/固定IP1を使ったIPv4アドレスに対して、SSL-VPNを動かすには、
下図の様に、「SSL-VPN設定」の「リッスンするインターフェース」を下図赤枠のように「vne.root」に設定します。
また、定義したユーザーに、二要素認証としてE-mailを使う設定を行います。
WebGUIからはE-mailの二要素認証設定を有効に出来ない為、ユーザー定義(追加登録)を
WebGUIで設定するときは二要素認証はOFFのまま定義して問題有りません。
その後、各ユーザーに対して、二要素認証でメールアドレス設定をする場合は、CLIにて
例) config user local edit "ユーザー名" set two-factor email set email-to "メールアドレス" next endと、ユーザーに対し「set two-factor email」と「set email-to 」にてメールアドレス設定が完了したら、WebGUIからも
のようにWebGUIでは設定が不可能なE-mailの二要素認証が表示されるようになります。
上記まででSSL-VPNについて基本的な設定が完了した物として、実用上必要となりそうな調整について下記で示していきます。
2)標準、簡易設定後の問題点について
とにかく動作する様に最小限の設定をして見ると次の様な問題にあうことが有ります。
- AuthCodeメールが届かない事がある
- メール受信したコードを入力すると時間切れになる事が多い
- SSL-VPN接続が8時間で切れてしまう
- SSL-VPN接続したクライアント機器から宅内にアクセス出来るが...
適切な設定をして安定したテレワーク環境を構築して下さい。
3)メールサーバー設定
自社、自分でメールサーバーを持ち、FortiGateからの通知をそれらのメールサーバーを使って送るようにしていて
AuthCodeメールの不達などが無い場合は、こちらは読み飛ばして頂いて問題有りません。
自分でわざわざAuthCodeメールを送るためにメールサーバーを準備出来ない場合は、Fortinet社がメールサーバーを
準備してくれているのでそちらを使う事が可能です
標準的な設定をした場合でも、AuthCodeメールが届くサーバーもあるとは思いますが、ezwebの携帯メールなどには
届かない等の問題が生じます。
AuthCodeメールが届かない問題についてはメールサーバー設定を下記の様にすることで解決可能です。
メールが届かない原因は送信元メールアドレスと、利用しているメールアドレスサーバーが不一致であり、
メールヘッダー内で迷惑メールと疑われるような内容となり
着信側のメールサーバーによっては破棄されてしまう場合があるためです。
FortiGate-40F # show system email-server config system email-server set reply-to "noreply@notification.fortinet.net" ★1 set server "notification.fortinet.net" set port 465 set security smtps end上記★1に「noreply@notification.fortinet.net」を設定することで、送信元メールアドレスと、 メールサーバーが一致し、多くの場合、メール着信が可能になります。
弊社では 2021/03/19試験において
@ezweb.ne.jp
@dk.pdx.ne.jp
@gmail.com
@icloud.com
@yahoo.ne.jp
@yahoo.co.jp
のメールアドレスに通知が届くことを確認しております。
(当然着信側で、迷惑メールや、受信拒否されていないことが前提です)
上記設定であれば、発信者が「noreply@notification.fortinet.net」の場合、メールを受けとる設定を すれば良いので、迷惑メールを避けつつ、携帯メールの場合でもきちんと受信可能に出来るでしょう。
4)ワンタイムパスワード有効期間の調整
FortiTokenや、FortiToken Mobileを使ったワンタイムパスワードを利用する場合は、すぐに入力可能で問題無いのですが、
E-mailでワンタイムパスワードを入手する場合は、メールの遅延などですぐに取得出来ない場合が有ります。
標準設定であれば、E-mailでワンタイムパスワードを入手後、すぐに入力しても間に合わず、認証エラーになる事があります。
特にメールが遅延する様な状況の時、何度もメールでワンタイムパスワードを入手して
その都度エラーになると仕事などに支障をきたすことがあります。
ワンタイムパスワードの有効期間を調整することで、落ち着いてワンタイムパスワードを入力可能に設定変更するのがお勧めです。
参考URL https://kb.fortinet.com/kb/documentLink.do?externalID=FD47443
config system global set remoteauthtimeout 180 set two-factor-email-expiry 180 end上記では180秒(3分)にしたところ、
上記トークン入力画面で2分45秒くらいしてワンタイムパスワード(トークン)を入力しても 正しくログイン出来るようになりました。
設定時間については各自で判断して適切な運用として下さい。
5)SSL-VPN接続タイムアウト時間の調整
SSL-VPNのデフォルトのタイムアウト時間が8時間に設定されているようで、
テレワークなどで長時間接続利用する場合には問題が生じます。
下記にて適切に設定変更して利用することで、長時間接続も安心して使えるようになります。
参考URL https://kb.fortinet.com/kb/documentLink.do?externalID=FD39435
config vpn ssl settings set auth-timeout 86400 end
上記では86400秒の24時間にした場合です。0秒を指定することでタイムアウト無しにすることも可能の様です。
下図では、0秒(タイムアウト無し)としたとき、8時間以上の接続で切れないことを確認した物です。
6)SSL-VPNクライアントの通信ポリシー設定
SSL-VPNクライアントから宅内アクセスは問題無く出来る様になっても、
それ以外の通信も必要になる場合があります。
下図の赤線1〜4でそれぞれ
1) 宅内機器からSSL-VPN接続機器への通信を許可
2) SSL-VPN接続機器間の通信を許可
3) SSL-VPNから宅内への通信を許可(必ず設定有り)
4) SSL-VPNからFortiGateのvne.root経由でインターネット接続許可
を定義しています。取りあえず定義だけしておき、
不要な通信についてのポリシーを無効化すれば通信遮断等も可能です。
★ご注意)
上記4)のSSL-VPN機器から、FortiGate経由のインターネット通信を許可した場合、SSL-VPN接続の多くの機器が
SSL-VPNを動かしているFortiGateを使ったインターネット、上り下りのトラフィックを消費します。
WindowsUpdate等の通信も発生すると帯域を大量に使うことになる為、4)のポリシーは無効化し、
SSL-VPNと宅内間に必要な通信のみ利用することをお勧めします。
SSL-VPN接続PC等から宅内PCへリモートデスクトップ接続する様な利用の場合、仕事中はSSL-VPN端末から
インターネットの通信は無くても問題無いはずです。
WindowsUpdate等はSSL-VPN切断後に各自のインターネット回線経由で実施する事が望ましいです。
7)まとめ
上記設定で弊社、v6Direct/固定IP1とFortiGateを使った、SSL-VPNサーバー環境が整備できます。
上記のSSL-VPNサーバーへの接続には、ネットワーク的に近く、相性の良い、弊社v6Neoコースがお勧めです。
クライアント回線には是非、v6Neoを推奨、採用頂きますようお願い致します。