ADC

高CPU

以下は、Web App Firewall を使用する際に発生する機能と CPU 使用率に関するデバッグの問題と、従うべきベストプラクティスです。

ポリシーヒット、バインディング、ネットワーク構成、Web App Firewall 構成を確認してください。

  • 設定ミスを特定
  • 影響を受けるトラフィックを処理している仮想サーバーを特定

次のログファイルのログを調べて、セキュリティ違反や最近の構成変更がないか確認します。

  • /var/log/ns.log
  • /var/nslog/import.log
  • /var/nslog/aslearn.log
  • tail -f /var/log/ns.log | grep APPFW_SIGNATURE_MATCH

例:

Jun 13 01:11:09 <local0.info> 10.217.31.98 CEF:0|Citrix|NetScaler|NS11.0|APPFW| APPFW_SIGNATURE_MATCH|6|src=10.217.253.62 spt=61141 method=GET request= http://aaron.stratum8.net/FFC/wwwboard/passwd.txt msg=Signature violation rule ID 807: web-cgi /wwwboard/passwd.txt access cn1=140 cn2=841 cs1=pr_ffc cs2=PPE0 cs3=OyTgjbXBqcpBFeENKDlde3OkMQ00001 cs4=ALERT cs5=2015 cs6=web-cgi act=not blocked
<!--NeedCopy-->

影響を受けるトラフィックを分離してください。

  • プロファイルを分離
  • セキュリティチェックを分離
  • URL、仮想サーバー、トラフィックパラメータを分離

条件付きプロファイルレベルトレースは、トラフィックと違反レコードの識別に役立ちます。

  • set appfw profile <profile> -trace ON
  • start nstrace -mode APPFW -size 0
  • stop nstrace

注:トレースは-size 0 オプションで収集されていることを確認してください。

appfw、dht、IP レピュテーションアクティビティカウンタを確認してください。

  • nsconmsg -g as_ -g appfwreq_ -g iprep -d current

接続中のリセット用のモニターウィンドウサイズ:

無効なhttpメッセージが原因でNetScalerが接続をリセットすると、Appfwはウィンドウサイズを9845に設定します。

例:

  • 間違った形式のリクエストを受け取りました-接続がリセットされました
  • CPU 使用率の高さに関する問題
  • システム制限についてはデータシートを確認してください
  • CPU 使用率、appfw、DHT、およびメモリ関連のアクティビティを検査します。appfw セッションの監視
  • nsconmsg -g cc_cpu_use -g appfwreq -g as -g dht -g mem_AS_OBJ -g mem_AS_COMPONENT -d current

対象期間中に Web App Firewall のコンポーネントやオブジェクトに割り当てられたり解放されたりしたメモリを監視します。これにより、CPU 使用率が高くなる保護を分離できます。

  • プロファイラー出力
  • ログを観察する

CPU使用率が高くなる原因となるappfwチェックを分離:

  • startURLClosure
  • フォームファイルの一貫性
  • CSRF
  • クッキー保護
  • リファラーヘッダーチェック

シグネチャの自動更新が CPU 使用率の高さにつながっていないことを確認します (確認のため無効化)。

高CPU

この記事の概要