目次
YAMAHA RTXシリーズとWindows Serverを組み合わせ、ADユーザ認証が行えるVPNを構築する
昨今コロナウイルスの感染拡大に伴い、リモートワークの必要性が大きく増してきました。
リモートワークをすぐに始めるんだ、といっても全社員がアクセスできるVPNを構築する、という話はなかなかヘビーな話です。
しかし、状況は刻一刻と酷くなるばかりでなるべく早く環境を構築しなければなりません。
そこで、今回は比較的入手が簡単なYAMAHA RTXシリーズと、社内に既に用意されているリソースを活用し、最低限のセキュリティ要件だけを担保したVPNを構築する手順を紹介します。
またあくまでVPN環境の構築手順だけを紹介していますので、FWへのルーティングなどはそれぞれ自社の環境に合わせて追加で設定を実施してください。
L2TP/IPSecを利用する場合、ヤマハとしてサポートされている環境は以下の通り。
・Android端末のOS標準VPNクライアント
・iPhoneをはじめとするiOS端末のOS標準VPNクライアント
・「YMS-VPN8」を導入したWindowsPC
ですので、上記以外の構成で組むのであれば、PPTP接続を利用する方式を採用する必要があります。
また、「YMS-VPN8」を利用して2台以上接続する場合は、同時接続ライセンス版もしくはソフトウェアライセンス版が必要となります。
※@kaba_kichiさん、ありがとうございます。
必要な物
- VPN用の固定グローバルIPアドレス *
- YAMAHA RTXシリーズのルータ
- AD環境
- Windows Server(AD同居しない場合)
*固定IPが用意できない場合はネットボランチDNSを利用することで対応可能です。
Windows Serverにネットワークポリシーとアクセスサービスの役割を追加する
今回、VPNの認証としてADアカウントを利用するため、RADIUSサーバを用意する必要があります。
フリーのRADIUSサーバなどもあるのですが、今回は対応時間をできる限り圧縮するために、導入が容易なネットワークポリシーとアクセスサービスの役割(以下NPS)を活用します。
ですので、ADサーバに兼任させることはあまりオススメできません。
もちろん兼任することは可能ですが、そこは自社内のリソース状況を見て判断してください。
「役割と機能の追加ウィザード」を立ち上げ、「ネットワークポリシーとアクセスサービス」にチェックを入れ「次へ」を押下します。
NPSに必要な機能を追加するウィンドウが表示されるので「機能の追加」を押下します。
「ネットワークポリシーとアクセスサービス」にチェックが入っていることを確認して「次へ」を押下します。
「機能の選択ウィンドウ」はそのまま「次へ」を押下します。
注意事項が表示されるのでそのまま「次へ」を押下します。
確認ウィンドウが表示されるので「次へ」を押下します。
上手の通りインストールが完了したらウィザードを閉じます。
NPSの設定
Active Directoryにサーバを登録する
NPSのインストールが完了したら、サーバマネージャもしくはスタートから「ネットワークポリシーサーバー」スナップインを立ち上げます。
このNPSがADアカウントを参照できるようにするため、「操作」->「Active Directoryにサーバーを登録」を押下します。
確認ウィンドウが表示されるので「OK」を押下します。
完了ウィンドウが表示されるので「OK」を押下します。
ネットワークポリシーの作成
続いてネットワークポリシーの作成を行います。
「ポリシー」->「ネットワークポリシー」を右クリックし、「新規」を押下します。
「新しいネットワークポリシー」ウィザードが表示されるので、「ポリシー名」に適当な名前を入力して「次へ」を押下します。
「条件の指定」が表示されるので「追加」を押下します。
「条件の選択」ウィンドウが表示されるので「ユーザーグループ」を選択し、「次へ」を押下します。
「ユーザーグループ」ウィンドウが表示されるので、「グループの追加」を押下します。
VPNを利用させたいユーザを所属させたセキュリティグループをあらかじめ作成し、(例ではVPN_Users)「グループの選択」ウィンドウでそのグループを選択して「OK」を押下します。
上図の通りグループが追加されていることを確認し、「OK」を押下します。
「条件の指定」ウィンドウに戻るので、「次へ」を押下します。
「アクセス許可の指定」ウィンドウが表示されるので、「アクセスを許可する」にチェックが入っていることを確認し、「次へ」を押下します。
「認証方法の構成」ウィンドウが表示されるので、「暗号化認証(CHAP)」のみにチェックを入れて、「次へ」を押下します。
「制約の構成」ウィンドウが表示されるので「次へ」を押下します。
「設定の構成」ウィンドウが表示されるので「次へ」を押下します。
確認ウィンドウが表示されるので、問題なければ「完了」を押下します。
これでNPS側の設定は完了です。 最後に1812/UDP、1813/UDPへの接続を許可するようファイアウォールを設定します。
RADIUSクライアントの登録
最後にRTXルータをRADIUSクライアントとして登録します。
ネットワークポリシーサーバースナップインの左ペインにある「RADIUSクライアントとサーバー」->「RADIUSクライアント」を右クリックし、「新規」を押下します。
「新しいRADIUS dictionaryクライアント」ウィンドウが表示されるので、「フレンドリ名」には任意の名前を、「アドレス」にはRTXルータのローカルIPアドレスを、「共有シークレット」にはRADIUSシークレットキーを入力し、「OK」を押下します。
AD側の準備
今回の構成ですが、VPN接続するADユーザオブジェクトの「アカウントオプション」内の「暗号化を元に戻せる状態でパスワードを保存する」を有効化し、そのあとユーザにパスワード変更を実施してもらう必要があります。
RTX側の設定
続いてRTX側の設定を行います。
今回の構成ではL2TP over IPsecを利用します。configについては各環境によって異なりますので、必要なコマンドをかいつまんで記載します。
pp anonymous
pp select anonymous pp bind tunnel1-tunnel299 pp auth request chap ppp ipcp ipaddress on ppp ipcp msext on ip pp remote address pool <VPNで接続してきたクライアントに払い出すIP範囲> pp enable anonymous
トンネルインタフェース
tunnel select 1 tunnel encapsulation l2tp ipsec tunnel 1 ipsec sa policy 1 1 esp aes-cbc sha-hmac ipsec ike keepalive use 1 off ipsec ike nat-traversal 1 on ipsec ike pre-shared-key 1 text <事前共有鍵> ipsec ike remote address 1 any l2tp tunnel disconnect time off l2tp keepalive use on 10 3 l2tp keepalive log off ip tunnel tcp mss limit auto tunnel enable 1 nat descriptor type 3000 masquerade nat descriptor address outer 3000 <グローバルIP> nat descriptor masquerade incoming 3000 reject nat descriptor masquerade static 3000 1 <グローバルIP> esp nat descriptor masquerade static 3000 2 <グローバルIP> udp 500 nat descriptor masquerade static 3000 3 <グローバルIP> udp 4500 ipsec auto refresh on ipsec ike retry 3 5 ipsec transport 1 1 udp 1701
RADIUSサーバ(NPS)の指定
radius auth on radius auth server <NPSサーバのIPアドレス> radius secret <RADIUSシークレット>
トンネルテンプレートとトランスポートモードのテンプレート
今回、L2TP over IPなVPN環境をユーザ分用意する必要があります。 L2TPは1セッションにつき1個トンネルが必要なので、例えば300セッション分用意するのであれば、トンネルは300個必要になります。
トンネル300個分の設定を放り込むのは苦行でしか有りませんが、RTXにはトンネルテンプレート機能とトランスポートモードのテンプレート機能という便利な物があります。
基となるトンネルインタフェースは作成済みなので、これらを使って300セッション分のトンネルを作成します。
実は既にpp anonymousの中でトンネル300個分をbindするように指定してあるんですよね。 もし個数を増やすのであれば、pp anonymou内も設定変更が必要なので注意が必要です。
tunnel select 1 tunnel template 2-299 ipsec transport template 2-299 tunnel select 2 ip tunnel tcp mss limit auto tunnel select 3 ip tunnel tcp mss limit auto (中略) tunnel select 299 ip tunnel tcp mss limit auto
まとめ
駆け足とはなりましたが、YAMAHA RTXシリーズとADにて認証を組み合わせた最低限のセキュリティ要件だけを担保したVPNを構築手順でした。
冒頭でも話したとおり、最低限のセキュリティレベルだけを確保したVPN環境なので構築する際は十分に気をつけてくださいね。