NetScreen/SSGは、ファイアウォール機能、IPsec VPN機能、ルータ機能、UTM機能、HA機能等、コンパクトながら優れた機能を数多くサポートしているセキュリティアプライアンスです。Networkエンジニアの私が最も愛するFW/IPsec-VPN機器「NetScreen」「SSG」の魅力に迫ります

カテゴリ: 8.Juniper-SA

JuniperSAの設定に関して、説明します。

【記事一覧】
SSL-VPN装置 Juniper社のSA(Secure Access)とは
SSL-VPNの基本設計
初期設定
基本設定
認証
Juniper-SAの初期化
接続設定(NCの設定) 1.設定概念
接続設定(NCの設定) 2.実際の設定

◆SSL-VPNとは
 SSL-VPNとは、ポート番号443のhttpsを利用してリモートアクセスする仕組みです。
IPsecがESPというプロトコルを使ってLayer3で通信するのに対し、SSL-VPNはTCPのポート番号443番でLayer4以上で通信します。

とっても便利な機能です。

◆NetScreen Remoteに代わるSA
NetScreen Remoteの販売終了に伴い、リモートアクセスはこのSAに一本化されることになりました。SAは安価かつ十分な機能、そして十分な実績(シェアNO.1)があり、今後もさらに売れていくでしょう。

◆Network Connect
Juniper SAでいうNetwork Connectは443で利用するリモートアクセスをLayer3レベルで動作させる仕組みです。Firepassや他のSSL-VPN装置でも同様の機能があります。
通常、443はhttpsなのでWEBアプリケーションを利用するのが普通です。逆に、ファイル共有やSMTPなどの他のプロトコルは利用できません。それをできるようにするのがNetwork Connectというすぐれた機能です。
どうやっているかというと、クライアント側にソフトを入れて実現します。ソフトといってもActiveXなので、ソフトをインストールしているという印象はなく、あくまでもWEBサイトを利用しているイメージです。

Juniper-SAがSSL-VPNで、SSGによるVPNがIPsecである。
SSL-VPNはL4レベルであるのに対し、IPsecはL3レベルでの通信である。
L3レベルということは、HTTPなどの特定のプロトコルではなく、あたかも同じLAN上にいるかのように、ファイル共有だろうがFTPだろうがストリーミングだろうが何でも利用できる。

一方、SSL-VPNは、L4レベルであるため、基本的にはHTTPS上にのらない通信は利用できない。
ただ、最近はNetworkConnectにより、L3レベルでの通信が可能になった。
(ただ、クライアント側にActiveXをダウンロードする必要がある。)
結果的に、IPsecと比べたレイヤレベルのデメリットはおおむね無くなったと考えてよい。

また、大きなメリットは、特別な機器やソフトが不要で、どこからでも利用できること。IPsecであれば、VPN装置またはVPNクライアントソフトが必要。それが不要であることのメリットは大きい。
さらに、ユーザ単位でのアクセス制御が行いやすい。
今後はSSL-VPNの活用がさらに増えるとだろう。

◆基本構成図
基本となる構成図を書きます。
IPアドレスも入れて具体的に書きます。

(後ほど)


◆SSL−VPNの通信
SSL-VPNのNC(ネットワークコネクト)によって、外部からメールサーバにアクセスした場合の通信はどうなるでしょう。

通信は2つのセッションで構成されます。
1)外部のSSL-VPNを利用するPC → SSL-VPN装置:TCPの443
2)SSL-VPN装置 → メールサーバ:TCPの25

では、その時の送信元IP、宛先IPはどうなるでしょうか?
ここは、設定によって変えることが可能なので、色々なパターンがあります。


◆SSL-VPNの設置場所

必ずDMZに設置しましょう。これは必須とお考えください。

では、その理由をじっくり考えましょう。
まず、設置場所としては以下の3つが考えられます。
1.WAN・・・Firewallの外に置く
2.DMZ
3.LAN・・・Firewallの内に置く

1は外部から攻撃を受けてしまいます。DoS攻撃によってSSL-VPNのサービスが停止されてしまったり、乗っ取られる可能性があります。
2は正解です。後ほどゆっくり説明します。
3はありえません。Firewallの内に置くということは、外部から内部セグメント(LAN)に対する通信を許可するということです。Firewallの基本ポリシーである、外部から内部への通信は一切許可しないというルールに反します。万が一、SSl-VPN装置が乗っ取られたら、社内のLANが乗っ取られたのと同じです。

1)Network Connect
 ・IPsecと同様にL3レベルでの通信を可能にする。
 ・クライアント側にあhActiveXが必要
 ・最近ではほとんどがNC(Network Connect)を利用する。
 ・NCには2つのモードがあり、ESPでNAT−Traversal 4500番を利用するハイパフォーマンスモードと、HTTPSを使うハイアベイラビリティモードがある。基本は後者(だとおもう)。前者はESPなのでより高速な処理であるが、FWの設定で4500番を許可する必要あり。

2)SAM:Secure Application Manager
 特定のアプリケーションのみに限定する場合
 に有効。あまり使わないので覚えなくてもよい。

3)Core Access
 基本的にブラウザのアプリ、リバースプロキシみたいに利用
 ※Ciscoなどでも同様の分類

◆コンソールから初期設定
初期化されたJuniper-SAを設定します。

コンソールケーブルで接続しましょう。(コンソールはクロスです。)
接続すると自動で起動してきます。

同意
Would you like to proceed (y/n)  y
Do you agree th terms of the license agreement(y/n)  y
IP address   ← IPアドレスの設定 (例)192.168.1.100
Network mask ← サブネットマスクの設定 (例)255.255.255.0
Default gateway ← デフォルトゲートウェイの設定 (例) 192.168.1.254
Primary DNS server ← DNSサーバの設定
Secondary(Optional): ← このようにOptionalのところは必須入力ではない
DNS domain(s):
Wins server(Optional)



サーバ証明書の作成
SSL通信をするにはサーバ証明書が必須である。

詳しくはSSLの仕組みを勉強いただきたいが、証明書を使うことでサーバを認証するとともに、クライアントと鍵を共有して暗号化通信をする。

Juniper-SAにはプライベートのサーバ証明書を作る機能を有しており、正規のサーバ証明書をインストールしなくても、JuniperSAを利用することができる。ただ、その場合は利用者のブラウザに警告メッセージがでることから、正規のサーバ証明書を準備(ベリサインなどで購入するか、社内の正規のPrivateCAで証明書を作成するなど)が必要である。

Admin username:  ← 管理者のユーザ名
Password ← パスワード
Common name: ←CNである。CNの表記といえば、cn=demo,cn=juniper・・などと表現するが、ここではdemo.juniper.localのようにFQDNで書けばよい
Organization name: ←組織名(OU) 普通は必須ではないが、ここでは必須かもしれない
Random text(hit enter when done): ← 秘密鍵を作成するためのキーフレーズを入れる。この値が秘密鍵になるのではなく、秘密鍵の種(seed)である。入力し終わったらEnterを押す。


◆JuniperSAへのWeb画面へアクセス
では、SA画面にログインしましょう。
管理者:https://192.168.0.10/admin/
一般ユーザはhttps://192.168.0.10/
 ※後ほど設定ででてくるが、https://www.viva-netscreen.net/Login/ などとログインURLを変更することが可能)

デフォルトでは、Internalのポートからしか管理アクセスを許可していない。当然変更することも可能で、Administrator Authentication Realms >Admin Usersから変更する。

login1

















コンソールで設定したユーザ名とパスワードを入力する。

ログインすると、画面右端にガイドが表示される。
それをクリックして順に初期設定を進める。

・System time
・Session Timeout option
・ライセンス
guide




















ネットワークの設定

アドレスの設定を行います。
Network > Internal Port> Settings
ポートは複数あるので、必要に応じて設定します。
以下はExternal Portの設定です。
※External Portはデフォルトでは無効になっている。有効にするにはNetwork Settings>External Port>Settings でポートをEnableにする。
ip

◆証明書による認証

証明書による認証というのは、クライアント証明書による認証を指す。
ユーザIDの代わりに、クライアント証明書にて認証を行う。

証明書の配布、CRLの管理など、運用の手間は増えるが、セキュリティは高い。
証明書をスマートカードやUSBメモリに入れると、さらにセキュリティは高くなる。
せっかく高いセキュリティも、証明書がコピーされては意味がない。
証明書のコピーができないように設定しておこう


◆ローカル認証

SSL-VPN内部にあるデータベースを利用する。
Authentication>Auth.Servers>System LocalのUsersで設定する。

1)Newをクリックすると
新規ユーザの登録画面へ遷移する。
認証










2)ユーザ名、パスワードを入力し、「Save Chages」を押してユーザ作成
user


















※ユーザデータベースはデフォルトでSystem Localとして作成されているので、それを使っても良いし、新規にユーザデータベースを作成してもよい。

本来であれば、ユーザデータが入っている装置をDMZに置くことは好ましくない。
この方法を運用するのはできる限りやめたい。
また、ユーザデータベースの一元管理とういう観点からも、ActiveDirectoryやRadius認証が良いであろう。

◆Active Directory認証
Authentication>Auth.Servers>Active Directoryで設定する。
・Name: ←任意の名前を入れる
・Primary Domain Controller: ←ADサーバのIPまたはFQDNを入れる
・Domain: ← ドメイン名を入れる。
・Admin Username: ← Administrator権限のユーザ名
・Admin Password: ← そのパスワード
・Authentication Protocol
 認証プロトコルを選択するが、全部にチェックを入れても良いかと思う。
 通常ADであれば、NTLMv2かKerverosのはず。


◆LDAP認証
ADと同様

◆JuniperSAの管理者ユーザの設定
Authentication>Auth.Servers>Administratorsで設定できるはず。

コンソールケーブルから接続します。(クロスです)
Please choose from among the following optional:
1.
2.
3.
4.
5.
・・・・

Choice:4  Please choose the operation to perform:
1.
2.
3.
4.
5.
6. Clear all configration data at this IVE
Choice:6

 本当によいかを聞かれます。
Are you sure you want to restart this IVE configration(y/n) : y

これで再起動が走ります。

接続の方法はCore/SAM/NCの3パターンがある。
(これはどのSSL-VPN装置でもほとんど同じ概念)
現在はNCで使われることがほとんどである。
NCでL3レベルで接続を許可し、FWでフィルタをかけるのが簡単だ。

ここではNCの設定のみを紹介します。

複雑なことをしなければ、設定は結構簡単である。ただ、概念が少しややこしい。

設定手順は以下です。
1.Roleの設定
 Roleというのは役割という意味。CoreなのかSAMなのかNC(NetworkConnect)なのかを選択します。

2.Realmの設定
 Realmとは領域のいう意味。ここでは認証領域を設定する。Localのデータベースを使うのか、ADを使うのか、LDAPを使うのか、証明書を使うのか?当然のことながら2way認証(たとえば、ADと証明書)も可能である。

3.Role Mappingの設定
 RoleへのMapping(割付)を設定する。何と何をMappingするかというと、ユーザとRole(役割)の割付である。たとえば、ユーザAさんはCoreで利用させるが、ユーザBさんはNCで利用させるなど。

4.Sign-in URLの設定
 Sing-in URLなので、サインインつまりログインするURLを指定する。
http://viva-netscreen.net/でログイン
させるのか、それともhttp://viva-netscreen.net/ssl_login/などと専用URLを設けるのか。

5.Network Connectオプションの設定
 ACLの設定やIPプールで払い出すIPアドレスの設定などを行う。

なんとなく概念が分かりにくいと思います。
以下の図がSign-in URL、Realm、Roleの関係を示しています。
(引用:ジュニパーネットワークス株式会社「はじめてのSecure Access」より)sa










※Sign-in URLとRealmの対応は、Sign-in URLの画面で設定します。
※RealmとRoleの対応は、Role Mappingの設定で設定します。Username is 〜という設定で、ユーザとRoleを対応づけます。

このページのトップヘ