BIG-IP SSLO (SSL Orchestrator)で、L3 Explicit Forward Proxy構成をセットアップする際の基本的な設定例を紹介します。
内容をできるだけ簡潔にするために、URLフィルタリングや認証、SSL復号化などの個別設定は含んでいません。
SSLOモジュールは冗長化構成時の挙動に特殊な点があるため、BIG-IPは冗長化構成にしております。
目次
- 目次
- バージョン情報
- 検証構成
- 例示用の設定パラメータ
- 注意喚起
- 作業の概要
- 作業の詳細
バージョン情報
本記事は下記のバージョンで検証を行っております。
F5 BIG-IP Virtual Edition Version 16.1.2
BIG-IPのモジュールは、LTM, APM, SSLOを有効化しております。SSL Orchestrator Package Version 16.1.0
SSLOはiApps LXのパッケージとして提供されているため、個別のバージョン情報があります。 今回はBIG-IP VE v16.1.2にデフォルトで含まれていたバージョンを使用しております。
検証構成
BIG-IPはワンアーム (One-Armed)の構成としてしています。
図の赤字の内容は、環境に応じて適宜読み替えが必要な個所です。
例示用の設定パラメータ
設定項目 | 設定値 | 備考 |
---|---|---|
SSLOのベース名 | DEMO | |
Forward Proxyの待ち受けIPアドレス | 198.51.100.101 | |
Forward Proxyの待ち受けポート番号 | 8080 | |
Forward Proxyの入力VLAN | VLAN_Service | |
送信元NAT | Auto Map | |
DNS Resolver | 8.8.8.8 , 8.8.4.4 | Google Public DNS |
ワンアーム構成であるため、通信の戻りがForward Proxyを介するように送信元NATを設定します。
注意喚起
BIG-IP SSLOの冗長化構成で設定変更を行う場合は、設定が同期されているのを確認した上で、事前と事後のバックアップを取得してください。
SSLOモジュールを利用している状態で設定同期が崩れると、最悪の場合で一からの再構築が発生します。
SSLOでは、Active機でSSLOの設定を行うと、SSLOがActive機だけでなくStandby機にも設定をデプロイします。
強調して言い直しますが、BIG-IPとして設定の同期をするのではなく、 SSLOで用いられているiApps LXの技術の枠組みの中で、Active機と同等設定をStandby機にデプロイします。 その際、設定の同期がそもそもされていなかったり、デプロイに失敗して設定の同期が崩れると、 SSLOではエラー ハンドリングが困難になります。
また、デプロイ中にエラー メッセージが表示されても基本的には開発者向けの内容になっているため、
サポートへの問い合わせの権利がないとトラブルシューティングが困難となります。
筆者の実体験の話ですが、実際にエラーに遭遇しても、
SSLO自体の情報が少ないためインターネットで調べてもヒットするようなものはありませんでした。
そして、検証環境ではBIG-IP VE Lab版の問い合わせ用のサポート契約が行われてなかったため、
iApps LXのソース コードを確認する羽目になったことすらあります。
作業の概要
作業の概要は下記の通りとなります。
- 事前 (Before)作業
- DNS Resolverの設定
DNS Resolverは、Forward Proxyとして振舞う際の名前解決の設定です。 - Forward Proxyの基本設定
本設定の中で、上述のDNS Resolverの設定を参照させます。 - 事後 (After)作業
作業の詳細
設定同期の確認
BIG-IPの各号機の設定が同期しているのを確認します。
事前バックアップ
設定変更前 (Before)にBIG-IPの各号機のUCSファイルを取得しておきます。
- BIG-IP#1号機でUCSファイルを取得したのを確認します。
- BIG-IP#2号機でUCSファイルを取得したのを確認します。
- 上記のUCSファイルを操作端末 (PC)などに適宜退避しておきます。
DNS Resolverの設定
System Settings 設定画面への移動
- メニュー:
SSL Orchestrator > Configuration
の画面より、System Settings
を押下します。
DNS Settings
DNS Settings
の項目を、下記の表を参考に設定します。環境に応じて社内システムのDNS Serverなどを適宜指定します。
設定項目 | 設定値 | 備考 |
---|---|---|
DNS Query resolution | Local Forwarding Nameserver | 特定のDNS Serverを指定するための設定 |
Local DNS Nameserver #1 | 8.8.8.8 | Google Public DNS |
Local DNS Nameserver #2 | 8.8.4.4 | Google Public DNS |
Summary 画面
Summary
の設定画面でDNSの設定内容を確認して、内容に問題がなければDeploy
ボタンを押下します。
設定のデプロイ
デプロイが正常に成功した際のサンプル画面を掲載します。
デプロイが完了すると、設定同期のステータスが Changes Pending になります。
デプロイ後の設定の同期
Active機からStandby機に設定を同期します。
場合によって、Standby機のタイムスタンプが最新になっている場合があるので、
同期元と同期先が意図したものになっているか留意してください。
デプロイされたDNS Resovlerの設定確認
メニュー: Network > DNS Resolvers
の ssloGS-net-resolver
に前述の設定が紐づきます。
ssloGS-net-resolver
は、後の手順のForward Proxyの設定で参照します。
Forward Proxyの基本設定
Forward Proxy向けの各種設定をSSLOからデプロイします。
SSLOの設定の開始
- メニュー:
SSL Orchestrator > Configuration
を開きます。
まだ何も設定をデプロイしていない状態だと、SSLOに関する情報がまとめられた画面が表示されます。その画面では設定の要素はないので、そのままNext
ボタンを押下します。
Topology Properties
Name
にベースとなる設定名を命名します。ベース名に対してプレフィックスやサフィックスが付与されて設定が展開されます。例ではベース名を DEMO としています。本記事はL3 Explicit Forward Proxy構成のため、
SSL Orchestrator Topologies
の設定はL3 Explicit Proxy
を指定します。
SSL Configurations
SSL Configurations
の設定画面では何も変更しません。
Authentication List
Authentication List
の設定画面では何も変更しません。
Services List
Services List
の設定画面では何も変更しません。
Services Chain List
Services Chain List
の設定画面では何も変更しません。
Security Policy
Security Policy
の設定画面では何も変更しません。
Interception Rule
Proxy Server Settings
の項目を、下記の表を参考に設定します。
設定項目 | 設定値 | 備考 |
---|---|---|
IPV4 Address | 198.51.100.101 | Forward Proxyの待ち受けIPアドレスを指定 |
Port | 8080 | Forward Proxyの待ち受けポート番号を指定 |
Ingress Network > VLANs (Selected) | VLAN_Service | Forward Proxyの入力VLANを指定 |
DNS Resolver | /Common/ssloGS_global.app/ssloGS-net-resolver | SSLOのSystem Settingsに紐づくDNS Resolver設定を指定 |
Egress Settings
Egress Settings
の項目を下記の表の通りに設定します。
設定項目 | 設定値 |
---|---|
Manage SNAT Settings | Auto Map |
Log Settings
Log Settings
の設定画面では何も変更しません。
Summary
Summary
の設定画面で今まで指定した内容を確認して、内容に問題がなければDeploy
ボタンを押下します。
設定のデプロイ
デプロイが正常に成功した際のサンプル画面を掲載します。
デプロイが完了すると、設定同期のステータスが Changes Pending になります。
デプロイ後の設定の同期
Active機からStandby機に設定を同期します。
場合によって、Standby機のタイムスタンプが最新になっている場合があるので、
同期元と同期先が意図したものになっているか留意してください。
事後バックアップ
設定変更後 (After)にBIG-IPの各号機のUCSファイルを取得しておきます。
- BIG-IP#1号機でUCSファイルを取得したのを確認します。
- BIG-IP#2号機でUCSファイルを取得したのを確認します。
- 上記のUCSファイルを操作端末 (PC)などに適宜退避しておきます。
最後に
本内容は、BIG-IP SSLOをForward Proxy構成として動作させるための必要最低限レベルの設定例でしかありません。 高度な要件がある場合は、iRulesを用いたコード拡張による対応も必要になってくるため留意してください。