2018年7月12日木曜日

ヤマハのルーター(RTX1200)とのVPN接続(L2TP/IPsec)をradius(AD同期)認証で行う

社内システムの開発担当をしている方が、病気で歩行が困難になったので、テレワークで自宅勤務して頂く事になった。
テレワークといっても、色々な方法があるのだが、大規模に運用する訳では無いし、予算をかけずにという事だったので、ヤマハのルーターに搭載されているVPN機能で外部から接続してもらう事にした。
氏の自宅にヤマハのルーターを設置してIPSecで接続する事も考えたが、接続する台数が1台だけなので、Windows10のL2TP/IPSecを利用する事に決定。
VPN接続のユーザーとパスワードに関してはルーターに直接設定しても問題無いのだが、今後の事も考えて社内のアクティブディレクトリのユーザーグループと同期させる事とした。

以上の事を実現させる為に、公式のドキュメントを読んだのだが、今一つよく分からなかったので、実際に同じような事を実施している方の資料を参考にさせて貰った。
RTX1200とRTX1210を稼働させているが、基本的にはどちらも同じような設定となる。

ルーターの設定
VPN接続ユーザーの情報をADから取得する為にradiusを利用する。

RTX1200の設定画面(GUI)は[ルーター機能]の[RADIUS]。
認証:ON
アカウンティング:ON
サーバーのIPアドレス:radiusサーバーのIPアドレス
シークレット文字列:radiusサーバーにセットするシークレット文字列
認証で使うポート番号:1812
アカウンティングで使うポート番号:1813


L2TP/IPsecの設定画面(GUI)は[ルーター機能]の[L2TP/IPsec]。

anonymous接続共通設定の設定ボタンを押して、各種項目を設定する。
設定名:適当な名前
認証キー:L2TP接続時に使用する事前共有キー
NATトラバーサル:ON
PPP認証方式:CHAP
認証アルゴリズム:HMAC-SHA
暗号アルゴリズム:AES-CBC
切断タイマ関連:タイマで自動切断しない
接続先に割り当てるIPアドレス:てきとうに

因みに、radiusとルーターのローカルユーザーで同一の名前がある場合は、ローカルが優先される。

以上の内容を設定して、configを確認する。
radiusとL2TPに関係するのは以下の部分。

ip lan1 address [LAN1 IP Address/subnetmask]
ip lan1 proxyarp on
pp select 1
ip pp secure filter in ~~~~ 200100 200101 200102 200103
ip pp nat descriptor 1
netvolante-dns hostname host pp server=1 hogehoge.aa0.netvolante.jp
pp enable 1
pp select anonymous
pp bind tunnel50-tunnel51
pp auth request chap
ppp ipcp ipaddress on
ppp ipcp msext on
ppp ccp type none
ip pp remote address pool [固定割当IPアドレス範囲(ex.192.168.0.30-192.168.0.31)]
ip pp mtu 1258
pp enable anonymous
tunnel select 50
tunnel encapsulation l2tp
ipsec tunnel 50
ipsec sa policy 50 50 esp aes-cbc sha-hmac
ipsec ike keepalive use 50 off
ipsec ike nat-traversal 50 on
ipsec ike pre-shared-key 50 text "[事前共有キー]"
ipsec ike remote address 50 any
l2tp tunnel disconnect time off
l2tp keepalive use on 10 5
l2tp keepalive log on
l2tp syslog on
ip tunnel tcp mss limit auto
tunnel enable 50
tunnel select 51
tunnel encapsulation l2tp
ipsec tunnel 51
ipsec sa policy 51 51 esp aes-cbc sha-hmac
ipsec ike keepalive use 51 off
ipsec ike nat-traversal 51 on
ipsec ike pre-shared-key 51 text "[事前共有キー]"
ipsec ike remote address 51 any
l2tp tunnel disconnect time off
l2tp keepalive use on 10 5
l2tp keepalive log on
l2tp syslog on
ip tunnel tcp mss limit auto
tunnel enable 51
ip filter 200100 pass * [RTX1200 LAN1 IP address] udp * 500
ip filter 200101 pass * [RTX1200 LAN1 IP address] esp * *
ip filter 200102 pass * [RTX1200 LAN1 IP address] udp * 4500
ip filter 200103 pass * [RTX1200 LAN1 IP address] udp * 1701
nat descriptor type 1 masquerade
nat descriptor masquerade static 1 1 [RTX1200 LAN1 IP address] udp 500
nat descriptor masquerade static 1 2 [RTX1200 LAN1 IP address] esp
nat descriptor masquerade static 1 3 [RTX1200 LAN1 IP address] udp 4500
ipsec use on
ipsec auto refresh on
ipsec transport 50 50 udp 1701
ipsec transport 51 51 udp 1701
radius auth on
radius auth port 1812
radius account on
radius account port 1813
radius server [radiusサーバーIPアドレス]
radius secret [radiusシークレット文字列]
l2tp service on

filter 200103は要らないかも?

以上でルーターの設定は終了。


次にradiusサーバーの設定
ADサーバーはwindows server2012R2。

ADにVPNusers(等の適当な名前の)グループを作成
VPN接続させるユーザーを上記のグループに参加させる。
[dsa.msc]を実行してグループを作成し、ユーザーを編集する。
ADのユーザーアカウントに関しては、「暗号化を元に戻せる状態でパスワードを保存する」にチェックを入れた後に、パスワードをリセットする必要がある
VPNusersグループはグループのスコープを「ドメイン ローカル」、グループの種類を「セキュリティ」にしておくこと。
スコープを「グローバル」にすると、RADIUSサーバーのネットワークポリシーに登録できない場合がある。

Windows Server 2012 R2にNPS(ネットワークポリシーサーバー)を導入する。
サーバーマネージャーから役割の追加で、「ネットワークポリシーとアクセスサービス」を選んで追加する。
追加が完了したら「nps.msc」を実行。
起動後カーソルを[NPS(ローカル)]に合わせた状態で、ツールバーの[操作]を選択し、[Active Directory にサーバーを登録]を選択。
以上でADとNPSのユーザー・グループの同期が実行される。

NPS管理ツールの[RADIUSクライアントとサーバー]のツリーにある[RADIUSクライアント]で右クリックして、新規を選択すると、新しいRADIUSクライアントの追加画面が表示されるので、以下のように入力する。
このRADIUSクライアントを有効にする:チェック
フレンドリ名:適当に入力。今回はRTX1200
アドレス:RADIUSクライアントのIPアドレス。今回はRTX1200のLAN1のアドレス
共有シークレット:手動
共有シークレット:ルーターに設定したradiusのシークレット文字列
共有シークレットの確認入力:上記と同じ文字列

NPS管理ツールの[ポリシー]ツリーにある[ネットワークポリシー]で右クリックして、新規を選択すると、「新しいネットワークポリシー」設定画面が表示される。
ウィザードになっているので、適時入力して設定を進めていく。
1.ポリシー名:何のポリシーか分かるように適当な文字列
 ネットワーク アクセスサーバーの種類:指定なし
2.条件の指定を追加。ユーザーグループを追加し、ADで作成したVPNusersを選択する。
3.アクセス許可の指定:アクセスを許可する
4.認証方法の構成 セキュリティレベルの低い認証方法で、全てのチェックを外した後に、[暗号化認証(CHAP)]のみにチェックを入れる
5.制約の構成:特に設定無し
6.設定の構成:RADIUS属性[標準]の属性名[Service-Type]が[login]でないと繋がらない場合があるらしいが、現在は[Framed]で問題なく接続されている。
7.新しいネットワークポリシーの完了:設定を確認して、完了。

ポリシーの設定が終わると、ネットワークポリシーのポリシー名一覧の一番下に作成したポリシーが表示されているので、それを右クリックして、[上へ移動]し、一番上の行まで移動させる。

以上で、NPSサーバーの設定は完了。


VPNクライアント設定(Windows10)

ネットワークとインターネットの設定を開く。
左の[VPN]を選択して、[VPNを追加する]をクリックする。

VPNプロバイダー:Windows(ビルトイン)
接続名:判別しやすい適当な文字列
サーバー名またはアドレス:接続先のIPアドレスもしくはDDNSで取得したURL
VPNの種類:事前共有キーを使ったL2TP/IPsec
事前共有キー:ルーターに設定したL2TPの事前共有キー
サインイン情報の種類:ユーザー名とパスワード
ユーザー名:ドメイン名付きのユーザー名(name@domainもしくはdomain\user)
パスワード:ADで使用しているパスワード

以上の設定を終えると、VPNのネットワークアダプターを作成されるので、[アダプターのオプションを変更する]を選んで、ネットワーク接続の画面を表示させる。
上記で作成したVPNのネットワークアダプターを右クリックして、プロパティーを開く。
セキュリティータブを開いて、認証の[次のプロトコルを許可する]を選択し、[チャレンジハンドシェイク認証プロトコル(CHAP)]のみを選択して、OKを押す。


既知の問題点としては、VPN接続時にローカルネットワークのDHCPサーバーからアドレスを取得していないので、VPN接続したクライアントのDNSサーバー及びディフォルトゲートウェイのIPアドレスがLANで接続されたクライアントと異なる為、社内のコンピューター名で各コンピューターにアクセスできない。
これはhostsファイルで胡麻化としても、色々と問題があるので、いずれ解決する必要がある。

参考にさせて頂いたホームページ
29歳、離婚しました。
YOwatari's blog

ヤマハ ギガアクセスVPNルーター RTX1210
 
ヤマハ(YAMAHA)

 

ヤマハ ギガアクセスVPNルーター RTX1200
 
ヤマハ

0 件のコメント:

コメントを投稿