加入者アクセスのセッションオプション
セッションオプションにより、DHCP、L2TP、および終端PPP加入者セッションに対していくつかの特性を指定できます。セッションオプションは、加入者アクセス、認証、許可、アカウンティングのパラメーターを決定するアクセスプロファイルで設定されます。
加入者アクセスのセッションオプションについて
アクセスプロファイルを使用して、DHCP、L2TP、および終端PPP加入者向けに作成されるセッションのいくつかの特性を設定できます。セッションの稼働時間、ユーザーの非アクティブ時間、またはその両方に基づいて、加入者のアクセスに制限を設定できます。加入者セッションは、アクセスプロファイルごとにユーザー名ごとに制限できます。また、加入者のアクセスプロファイルに基づいて、ログイン時に加入者のユーザー名を変更するパラメーターを設定することもできます。
- 加入者セッションタイムアウト
- ユーザー名およびアクセス プロファイルごとの加入者セッション数の制限
- CLI を使用してユーザー名のセッションを制限するメリット
- 加入者ユーザー名の変更
- 加入者ユーザー名を変更するメリット
加入者セッションタイムアウト
セッションのタイムアウトまたはアイドルタイムアウトを設定することで、加入者アクセスを制限することができます。セッションタイムアウトを使用して、加入者がアクセスできる一定の期間を指定します。アイドル タイムアウトを使用して、加入者がアイドル状態にできる最大時間を指定します。これらのタイムアウトは、個別にまたは一緒に使用できます。デフォルトでは、どちらのタイムアウトも存在しません。
DHCP以外のすべての加入者タイプ(L2TPトンネリングおよびPPP終端加入者など)では、セッションタイムアウト値が加入者セッションを制限します。DHCP 加入者の場合、他のリース時間設定がない場合は、セッション タイムアウト値を使用してリースを制限します。リースは、タイムアウト値が期限切れになったときに期限切れになります。この値が CLI または RADIUS のいずれかによって提供されていない場合、DHCP リースは期限切れになりません。
アイドルタイムアウトは、加入者のアカウンティング統計に基づいています。ルーターは、ユーザー(イングレス)からのアップストリームとユーザー(エグレス)へのダウンストリームの両方のデータトラフィックを監視することで、加入者の非アクティブ性を判断します。制御トラフィックは無視されます。データ トラフィックがどちらの方向でも検出されている限り、加入者はアイドル状態とは見なされません。
オプションで、加入者のイングレストラフィックのみを監視することを指定できます。エグレストラフィックは無視されます。この設定は、ピアが稼働していない場合(LNS が PPP キープアライブを有効にしておらず、ピアが稼働していないことを検出できない場合など)、LNS がリモート ピアにトラフィックを送信する場合に便利です。この状況では、デフォルトでは LAC がイングレス トラフィックとエグレス トラフィックの両方を監視するため、LNS からのエグレス トラフィックを検出し、加入者をログアウトしないか、またはエグレス トラフィックが停止するまで非アクティブの検出を遅延させます。イングレストラフィックのみを監視することを指定すると、LACはピアが非アクティブであることを検出してから、ログアウトを開始できます。
いずれかのタイムアウト期間が終了すると、RADIUS 開始の切断や CLI 開始のログアウトと同様に、DHCP 以外の加入者は正常にログアウトされます。DHCP 加入者は切断されます。Acct-Terminate-Cause [RADIUS属性49]値には、セッションタイムアウトの場合は理由コード5、アイドルタイムアウトの場合はコード4が含まれます。
RADIUS属性Session-Timeout [27] と Idle-Timeout [28] を使用することで、加入者ごとのアクセスに対するこれらの制限を設定できます。RADIUSは、アクセスサーバーからのAccess-Requestメッセージに応答して、Access-Acceptメッセージでこれらの属性を返します。Junos OSリリース19.4R1以降、セッションタイムアウト属性[27]がRADIUS CoAメッセージでサポートされています。この機能は、加入者が特定の期間にインターネット アクセスを購入し、セッションの期限が切れたときにログアウトする必要がある場合などに便利です。
CoA が Session-Timeout とともに到着すると、セッションがアクティブ化された時点からタイムアウトがカウントされます。その結果、次のような結果が生まれます。
属性値が現在のセッション稼働時間よりも大きく、最小タイムアウト値と最大タイムアウト値の間にある場合、その秒数がセッションアクティベーション後に経過すると、加入者はログアウトされます。例えば、セッションが 12:00:00 にアクティブになり、CoA が 12:00:30 で 120 秒の値で受信されるとします。加入者は 12:02:00 にログアウトされます。
これを同じ値で見るもう1つの方法は、現在のセッション稼働時間が30秒で、属性値が120秒であるということです。さらに90秒経過すると、加入者はログアウトされます。
属性値が現在のセッション稼働時間よりも大きく、最小タイムアウト値である60秒未満の場合、稼働時間が60秒に達すると加入者はログアウトされます。
属性値が現在のセッション稼働時間よりも大きく、最大タイムアウト値が31,622,400秒を超える場合、稼働時間が31,622,400秒に達すると加入者はログアウトされます。
属性値が現在のセッション稼働時間よりも小さい場合、セッションタイムアウトは適用されません。AAAはNAKでCoAメッセージに返信します。例えば、セッションタイムアウトが60秒で稼働時間が100秒の場合、セッションは影響を受けません。
上記のルールに従ってセッションタイムアウトを適用できるかどうかは、CoAの他のすべての側面が成功するかどうかにも依存します。たとえば、CoAにサービスアクティベーションが含まれており、そのサービスアクティベーションが失敗した場合、セッションタイムアウトは適用されません。AAAはNAKでCoAメッセージに返信します。
セッションタイムアウト値が0の場合、そのセッションの既存のセッションタイムアウトはキャンセルされます。
サービス プロバイダは、多くの場合、同じ制限を多数の加入者に適用することを選択します。ルーティング インスタンス単位でアクセス プロファイルの加入者の制限を定義することで、このシナリオの RADIUS プロビジョニングの労力を削減できます。その場合、その後、プロファイルでログインした特定の加入者に対して RADIUS 属性が返され、ルーティングインスタンス単位の値が上書きされます。
音声サービスを受信する加入者には、セッションタイムアウトを設定しないことをお勧めします。セッションタイムアウトはユーザーアクティビティではなく時間のみに基づいているため、音声サービスを使用して積極的に加入者を中断し、(加入者の視点から)予期しないコールを終了する可能性があります。その結果、緊急サービス コールに対する特に懸念事項となります。
DHCP 加入者のアイドル タイムアウトは設定しないことをお勧めします。タイムアウトがアクティビティなしで終了し、接続が終了した場合、プロトコルはクライアントに通知する手段はありません。その結果、次にインターネットにアクセスしようとすると、加入者は CPE デバイスを再起動することを余儀なくされます。
PPP加入者にアイドルタイムアウトが設定されている場合の動作を比較します。この場合、タイムアウトの有効期限が切れた場合、PPP はピアとのリンクを終端します。CPE デバイスに応じて、この終端により、ピアはオンデマンドまたは即時に接続を自動的に再試行できます。いずれの場合も、加入者の介入は必要ありません。
タイムアウトの設定に使用可能な範囲は、CLI で設定する場合も、RADIUS 属性を使用する場合も同じです。
セッションタイムアウトは、CLIで1分~527,040分、およびセッションタイムアウト属性[27]で対応する秒数(60~31,622,400)を設定できます。
アイドル タイムアウトは、CLI で 10~1440 分、および Idle-Timeout 属性 [28] の対応する秒数(600~86,400)に設定できます。
ルーターは、属性の値を解釈して、サポートされている範囲に準拠します。例えば、セッションタイムアウト[27] の場合:
ゼロの値は、タイムアウトとして扱われません。
1~59 の範囲の値は 60 秒に上昇します。
31,622,400を超える値は、31,622,400秒に減少します。
アイドルタイムアウト(28)の場合:
ゼロの値は、タイムアウトとして扱われません。
1~599 の範囲の値は 600 秒に上昇します。
86,400 を超える値は 86,400 秒に減少します。
動的に作成された加入者 VLAN を使用する設定では、アイドル タイムアウトにより、非アクティブな加入者 VLAN の非アクティブなしきい値に達した場合も削除されます。非アクティブな動的加入者 VLAN を削除するだけでなく、クライアント セッションが作成されなかった場合(例えば、動的 VLAN でクライアント セッションが作成されない場合や、セッション作成時にエラーが発生した場合や、動的 VLAN でクライアント セッションが作成されないクライアント認証の発生後など)、アイドル タイムアウトによって動的 VLAN が削除されます。
動的加入者VLANを削除するためのセッションタイムアウトとアイドルタイムアウトは、非常に限られたユースケースでのみ役立ちます。通常、どちらのタイムアウトもこの目的で設定されていません。
有用な場合の状況として考えられるのは、 ステートメントを使用して VLAN が削除されるタイミングを決定するのに役立つ上位レイヤー プロトコルがない場合です。たとえば、VLAN が固定アドレスを持つ remove-when-no-subscribers
ビジネス アクセス モデルで DHCP なしで IP over Ethernet をサポートしている場合などです。ただし、ビジネス アクセスは一般に一般家庭向けアクセスよりも上位のサービスであり、一般的に、一般家庭の加入者に求められる非アクティブ性のため、タイムアウトの影響を受けません。
CPE からパケットを受信したときに接続を再生できる特定のレイヤー 2 ホールセール状況では、アイドル タイムアウトが適切な場合があります。
動的 VLAN の削除にアイドル タイムアウトを使用する場合は、以下に注意してください。
アイドル タイムアウト期間は、動的加入者 VLAN インターフェイスが作成された後、またはトラフィック アクティビティが動的加入者 VLAN インターフェイスで停止した後に開始されます。
新しいクライアントセッションが作成されるか、クライアントセッションが正常に再有効化された場合、クライアントアイドルタイムアウトがリセットされます。
非アクティブな加入者 VLAN の削除は、認証された VLAN でのみ機能します。
ユーザー名およびアクセス プロファイルごとの加入者セッション数の制限
正規の加入者は、不正な人物とログイン認証情報を共有し、サービス プロバイダにメリットを与えることなくサービス プロバイダ リソースを使い果たしてしまう可能性があります。Junos OS リリース 18.4R1 以降では、アクセス プロファイルに関連する特定のユーザー名で許可されるアクティブな加入者セッションの数を制限することで、ログイン認証情報の共有を制御または防止できます。また、RADIUS でこの制御を実現することもできますが、BNG でローカルに制限を設定することで、外部サーバーへの依存はなくなります。
制限を設定すると、ユーザー名/アクセス プロファイルの組み合わせに対するアクティブなセッションが追跡されます。追跡されたセッションの数は、認証が新しいセッションログイン要求を受信したときに確認されます。追跡されたセッションの数が制限に一致した場合、新しいログイン試行は拒否され、ブロックされたリクエストとしてカウントされます。
認証がセッションのログアウトまたはクライアント終了要求を受信すると、そのユーザー名/アクセスプロファイルエントリに対して追跡されたセッション数がデクリメントされます。この組み合わせに対してアクティブなセッションが存在しないまでこれが続く場合、そのエントリーはセッション制限テーブルから削除されます。設定からアクセスプロファイルまたはセッション制限を削除すると、関連するすべてのユーザー名/アクセスプロファイルエントリーがテーブルから削除されます。
複数のアクセス プロファイルで同じユーザー名を使用できるため、ユーザー名のセッションの総数が特定のアクセス プロファイルに対して構成された制限を超えることができます。
自動設定VLANを使用したPPPなどのスタック加入者セッションでは、スタック内の両方のユーザー名が認証に使用され、その結果、両方がセッション制限に対してカウントされます。
設定された制限は既存のアクティブな加入者に適用されますが、そのユーザー名とアクセス プロファイルの組み合わせを持つ加入者のアクティブなセッション数が上限を超えた場合、既存のセッションは破棄されません。
制限を 2 つ設定した場合、特定のユーザー名/アクセス プロファイルの組み合わせで現在 5 つのセッションがアクティブになっている状況を考えます。
アクティブなセッション数は、組合せのセッション制限テーブル項目に 5 として記録されます。
同じユーザー名とアクセス プロファイルを持つ新しい加入者がログインしようとします。2 つのセッションの制限をすでに超えている(5 > 2)ため、この試行はブロックされます。
既存の加入者がログアウトし、アクティブセッション数を4にデクリメントします。
同じユーザー名とアクセス プロファイルを持つ新しい加入者がログインしようとします。2 つのセッションの制限をまだ超えている(4 > 2)ため、この試行はブロックされます。
既存の加入者 3 人がログアウトし、アクティブなセッション数が 1 に減ります。
同じユーザー名とアクセス プロファイルを持つ新しい加入者がログインしようとします。2 つのセッションの制限にまだ達していないため、この試行が許可されます(1 < 2)。
セッション制限設計では、悪意のあるユーザーが正しいユーザー名とアクセス プロファイルを使用して複数のログインを試み、間違ったパスワードを行うサービス拒否イベントを防ぎます。多数のログイン試行が設定されたセッション制限を超える可能性がありますが、これは、加入者のセッション状態がアクティブな状態に移行し、悪意のあるログインが達成できない場合にのみ、追跡されたセッション数が増加するため発生しません。
CLI を使用してユーザー名のセッションを制限するメリット
制限を提供するために外部 RADIUS サーバーに依存するのではなく、ルーター上でローカルにセッション数を制限できます。
複数のログインに基づく一部のサービス拒否攻撃を防止します。
加入者ユーザー名の変更
レイヤー 2 ホールセール アプリケーションでは、一部のネットワーク サービス プロバイダはユーザー名を変更して、加入者を適切な小売エンタープライズ ネットワークに誘導します。ユーザー名の一部の文字が削除されて破棄されるため、この変更はユーザー名の 削除とも呼ばれます。残りの文字列は、新しい変更されたユーザー名になります。変更されたユーザー名は、セッション認証とアカウンティングに外部 AAA サーバーによって使用されます。変更パラメーターは、加入者およびセッションコンテキストも決定する加入者アクセスプロファイルに従って適用されます。つまり、加入者が使用する論理システム:ルーティングインスタンス(LS:RI)です。デフォルト(プライマリ)論理システムのみがサポートされます。卸売業者は異なる LS:RI にそれぞれを配置することで複数の小売業者を区別するため、ユーザー名は各小売業者に対して適切に変更されます。
最大 8 文字を区切り文字として選択し、元のユーザー名の破棄部分と保持部分の間の境界をマークできます。デフォルトの区切り文字はありません。選択した区切り文字の右側にある名前の部分は、区切り文字とともに破棄されます。複数の区切り文字を設定することで、指定されたユーザー名構造によって、変更されたユーザー名が異なる可能性があります。元の名前を解析する方向を設定して、境界をマークする区切り文字を決定できます。デフォルトでは、解析方向は左から右へです。
次の例を考えてみましょう。
区切り文字を 1 つ @で指定します。ユーザー名は user1@example.com。この場合、解析方向は重要ではありません。いずれの場合も、単一の区切り文字が見つから、example.com は破棄されます。変更されたユーザー名は user1 です。
区切り文字を 1 つ @で指定します。ユーザー名はuser1@test@example.comです。この場合、解析方向は異なるユーザー名になります。
解析方向は左から右へ - 左端の @ は区切り文字として識別され、test@example.com は破棄されます。変更されたユーザー名は user1 です。
解析方向は右から左へ - 最も右にある @ が区切り文字として識別され、example.com は破棄されます。変更されたユーザー名はuser1@test。
@ と /の 2 つの区切り文字を指定します。ユーザー名は user1@bldg1/example.com です。解析方向は、異なるユーザー名になります。
解析方向は左から右へ-@ は区切り文字として識別され、bldg1/example.com は破棄されます。変更されたユーザー名は user1 です。
解析方向は右から左へ - / は区切り文字として識別され、example.com は破棄されます。変更されたユーザー名はuser1@bldg1。
各加入者ログイン文字列の一部が削除され、その後、セッション認証およびアカウンティングのために外部 AAA サーバーによって変更されたユーザー名として使用されるように、加入者アクセス プロファイルを設定できます。変更されたユーザー名は、例えば、RADIUSアクセス要求、Acct-Start、Acct-Stopメッセージ、RADIUS開始の切断要求や認証変更(CoA)要求に表示されます。
加入者ユーザー名を変更するメリット
レイヤー 2 ホールセール ネットワーク サービス プロバイダは、加入者を適切な小売エンタープライズ ネットワークに容易に誘導できます。
「」も参照
加入者セッションタイムアウトオプション
加入者セッションタイムアウトオプションでは、セッションの稼働時間、ユーザーの非アクティブ時間、またはその両方に基づいて、加入者アクセスに制限を設定できます。加入者セッションオプションは、L2TPトンネリングとPPP終端加入者セッションの両方に適用されます。DHCP 加入者の場合、セッション タイムアウトによって DHCP リース時間が制限されます。
RADIUSでタイムアウト属性を設定するには、RADIUSサーバーのドキュメントを参照してください。
加入者セッションの制限を設定するには、加入者に適用されるクライアントプロファイルでセッションオプションを設定します。
アクティビティに関係なく、設定されたセッションのタイムアウトが期限切れになったときに加入者を終了します。
[edit access profile profile-name session-options] user@host# set client-session-timeout minutes
設定されたアイドルタイムアウトの間、イングレスまたはエグレスデータトラフィックがない場合、加入者を終了します。
[edit access profile profile-name session-options] user@host# set client-idle-timeout minutes
設定されたアイドルタイムアウト期間中にイングレスデータトラフィックがない場合、加入者を終了します。エグレストラフィックを無視します。
[edit access profile profile-name session-options] user@host# set client-idle-timeout minutes user@host# set client-idle-timeout-ingress-only
例えば、クライアントプロファイルに acc-prof
セッションタイムアウトオプションを設定し、15分のアイドルタイムアウトを指定し、イングレストラフィックのみを監視し、120分後にセッションがタイムアウトすることを指定します。
[edit] access { profile { acc-prof { session-options { client-idle-timeout 15; client-idle-timeout-ingress-only; client-session-timeout 120; } } } }
ユーザー名およびアクセス プロファイルごとのアクティブセッション数の制限
正規の加入者がログイン認証情報を共有できる度合いを制御するには、アクセス プロファイルに関連付けられた特定のユーザー名に対して許可されるアクティブな加入者セッションの数を制限します。
ユーザー名とアクセス プロファイルあたりのアクティブなセッション数を制限するには、以下の手順に従います。
[edit access profile profile-name] user@host# set session-limit-per-username number
例えば、アクセスプロファイルisp-weg-4のユーザー名あたりのアクティブセッションの最大数を5に設定するには:
[edit access profile isp-weg-4] user@host# set session-limit-per-username 5
コマンドを show network-access aaa statistics session-limit-per-username
使用すると、アクティブなセッションとブロックされたリクエストの統計情報を表示できます。
次のいずれかの場合に clear network-access aaa statistics session-limit-per-username username
対してブロックされた要求統計をクリアすることで、デバッグの支援として コマンドを使用できます。
すべてのアクセス プロファイルのすべてのユーザー名。
すべてのアクセス プロファイルの特定のユーザー名。
特定のアクセス プロファイル内の特定のユーザー名。
特定のアクセス プロファイルのすべてのユーザー名。
加入者セッションのユーザー名変更の設定
加入者セッションオプションを使用して、加入者のアクセスプロファイルに基づいてログイン時に加入者のユーザー名を変更するパラメーターを設定できます。ユーザー名の一部の文字が削除されて破棄されるため、この変更はユーザー名の 削除とも呼ばれます。残りの文字列は、新しい変更されたユーザー名になります。変更されたユーザー名は、セッション認証とアカウンティングに外部 AAA サーバーによって使用されます。この機能は、たとえばレイヤー 2 ホールセール実装では、ネットワーク サービス プロバイダがユーザー名の変更を使用して適切な小売エンタープライズ ネットワークに加入者を誘導する場合に便利です。
変更パラメーターは、加入者およびセッションコンテキストも決定する加入者アクセスプロファイルに従って適用されます。つまり、加入者が使用する論理システム:ルーティングインスタンス(LS:RI)です。デフォルト(プライマリ)論理システムのみがサポートされます。卸売業者は異なる LS:RI にそれぞれを配置することで複数の小売業者を区別するため、ユーザー名は各小売業者に対して適切に変更されます。
最大 8 文字を区切り文字として選択し、元のユーザー名の破棄部分と保持部分の間の境界をマークできます。デフォルトの区切り文字はありません。選択した区切り文字の右側にある名前の部分は、区切り文字とともに破棄されます。複数の区切り文字を設定することで、指定されたユーザー名構造によって、変更されたユーザー名が異なる可能性があります。元の名前を解析する方向を設定して、境界をマークする区切り文字を決定できます。デフォルトでは、解析方向は左から右へです。
ユーザー名の変更を設定するには:
次の例では、AAAオプションプロファイルaaa1は、デフォルトの論理システムおよびルーティングインスタンス1の加入者に対して、加入者アクセスプロファイルentAを指定します。アクセス プロファイル entA は、区切り記号 @, が見つかるまで、ユーザー名を左から右に調べることを指定します。AAA オプション プロファイルは、グループ プロファイル FD1 に属するトンネリング PPP 加入者に適用されます。
[edit access aaa-options aaa1] user@host# access-profile entA user@host# aaa-context default:1 [edit access profile entA session-options strip-user-name] user@host# set delimiter @ user@host# set parse-direction left-to-right [edit access group-profile FD1 ppp] user@host# set ppp-options aaa-options aaa1
その設定がある場合、加入者がユーザー名(user1@example.com)でログインしようとするとします。この名前を調べると、区切り文字と文字列 example.com は破棄され、変更されたユーザー名は user1 のままとなります。区切り文字が 1 つだけ定義され、元のユーザー名に 1 つだけ存在するため、解析方向が右から左の名前を調べるよう設定されている場合、結果は同じであることに注意してください。
次に、加入者が user1@test@example.com というユーザー名でログインするとします。このようなユーザー名の場合、解析方向は変更されたユーザー名に違いをもたらします。この構成では、名前が左から右へ解析されるため、最初に区切り文字 @ の最初のインスタンスが見つかったと判断します。この区切り文字と test@example.com 文字列は破棄され、変更されたユーザー名として user1 は残されます。
設定が異なる解析方向を設定するとどうなりますか?
[edit access profile entA session-options strip-user-name] user@host# set delimiter @ user@host# set parse-direction right-to-left
この場合、username user1@test@example.com では、区切り文字の 2 番目のインスタンスが識別され、文字列 @example.com で破棄されます。変更されたユーザー名はuser1@test。
解析方向に基づいて変更されたユーザー名を変更しても同じ結果を得ることができます。2 つの区切り文字 @ と /を指定する以下の設定のように、複数の区切り文字を設定します。
[edit access profile entA session-options strip-user-name] user@host# set delimiter [@ /] user@host# set parse-direction left-to-right
ユーザー名user1@bldg1/example.com では、左から右に解析すると最初に @ 区切り文字が識別され、変更されたユーザー名は user1 になります。代わりに右から左に解析し、 / 区切り文字を最初に識別し、文字列 example.com で削除し、変更されたユーザー名はuser1@bldg1残します。
「」も参照
非アクティブな動的加入者 VLAN の削除
加入者セッションのタイムアウトにより、セッションの稼働時間、ユーザーの非アクティブ時間、またはその両方に基づいて、加入者アクセスに制限を設定できます。動的に作成された加入者 VLANS を使用する設定では、アイドル タイムアウトも以下のとおりです。
非アクティブな加入者 VLAN が非アクティブなしきい値に達した時点で削除します。
クライアントセッションが作成されなかった場合(例えば、動的VLANでクライアントセッションが作成されない場合、またはセッション作成時にエラーが発生した場合や、動的VLANでクライアントセッションが作成されないクライアント認証の発生後など)、動的VLANを削除します。
通常、セッションタイムアウトは、動的加入者VLANの削除には使用されません。タイムアウトは、非常に限られたユースケースでのみ役立つ場合があります。たとえば、動的 VLAN に、 ステートメントを使用して VLAN を削除するタイミングを決定するのに役立つ上位レイヤー プロトコルがない場合があります。たとえば、VLAN が固定アドレスを持 remove-when-no-subscribers
つビジネス アクセス モデルで DHCP なしで IP over Ethernet をサポートしている場合などです。
RADIUSでアイドルタイムアウト属性を設定するには、RADIUSサーバーのドキュメントを参照してください。
非アクティブな動的加入者 VLANS を削除するには、次の手順に基づきます。