概要
このドキュメントでは、シングルサインオン(SSO)をSecure Network Analytics Managerの空の値またはデフォルト値に設定する方法について説明します。
前提条件
要件
このドキュメントに特有の要件はありません。
使用するコンポーネント
このドキュメントの情報は、Secure Network Analytics Manager(SMC)バージョン7.1以降に基づくものです。
この記事では、コピーアンドペースト機能を備えたSSHクライアント/アプリケーションを推奨します。
このドキュメントの情報は、特定のラボ環境にあるデバイスに基づいて作成されました。このドキュメントで使用するすべてのデバイスは、初期(デフォルト)設定の状態から起動しています。本稼働中のネットワークでは、各コマンドによって起こる可能性がある影響を十分確認してください。
問題
設定されているSSO設定が無効であるか、古い、または中央管理に Configuration Changes Failed
無効または廃止されたSSO構成が保存された後。
解決方法
SSO設定には、中央管理とフェッドレットマネージャの2つの部分があります。元の設定と最終的な設定を比較する必要がある場合は、リストされているすべての手順を実行します。比較が必要ない場合は、としてマークされていないコマンドのみを実行します(オプション)。 この記事の最後にあるOne-Linerコマンドを使用すると、この手順を実行できます。
ステップ1:(オプション)現在の中央管理設定を最終結果と比較する場合は、 jq '.configurableElements.sso' /lancope/var/services/cm/configuration/$(awk -F\" '{print $8}' /lancope/var/services/cm-agent/configuration/managementChannel.json)/config.json > jqdoldcm.json
コマンドが表示されない場合もあります。
741smc:~# jq '.configurableElements.sso' /lancope/var/services/cm/configuration/$(awk -F\" '{print $8}' /lancope/var/services/cm-agent/configuration/managementChannel.json)/config.json > jqdoldcm.json
741smc:~#
ステップ2:(オプション)現在の設定を最終結果と比較する場合は、 jq . /lancope/var/fedlet-manager/conf/fedlet-manager.json > jqdoldfm.json
コマンドが表示されない場合もあります。
741smc:~# jq . /lancope/var/fedlet-manager/conf/fedlet-manager.json > jqdoldfm.json
741smc:~#
ステップ 3:コマンドを使用して、 tmpfile=$(mktemp)
コマンドが表示されない場合もあります。
741smc:~# tmpfile=$(mktemp)
741smc:~#
ステップ 4:コマンドを使用して、 cm_file=$(echo /lancope/var/services/cm/configuration/$(awk -F\" '{print $8}' /lancope/var/services/cm-agent/configuration/managementChannel.json)/config.json)
コマンドが表示されない場合もあります。
741smc:~# cm_file=$(echo /lancope/var/services/cm/configuration/$(awk -F\" '{print $8}' /lancope/var/services/cm-agent/configuration/managementChannel.json)/config.json)
741smc:~#
ステップ 5:Secure Network Analyticsの現在のバージョンを確認するには、 echo $SWINFO_version
コマンドが表示されない場合もあります。
741smc:~# echo $SWINFO_version
7.4.1
SMCバージョンが7.4.1の場合は、次のコマンドを実行します。
741smc:~# cp $cm_file $tmpfile && jq --arg foo "" --argjson bar false '.configurableElements.sso.ssoEnabled = $bar|.configurableElements.sso.ssoDescription = $foo|.configurableElements.sso.idpXml = $foo|.configurableElements.sso.ssoProxy = $foo|.configurableElements.sso.ssoOnly = $bar|.configurableElements.sso.downloadIdpXml = $bar' "$tmpfile" > $cm_file && rm -f -- $tmpfile
741smc:~# cp /lancope/var/fedlet-manager/conf/fedlet-manager.json $tmpfile && jq --arg foo "" --argjson bar false '.ssoEnabled = $bar|.ssoDescription = $foo|.idpXml = $foo|.ssoProxy = $foo|.state = "NO_CONFIGURATION"|.message="Single Sign-On is not configured."' $tmpfile >/lancope/var/fedlet-manager/conf/fedlet-manager.json && rm -f -- $tmpfile
741smc:~#
SMCのバージョンが7.4.1より前の場合は、次のコマンドを実行します。
711smc:~# cp $cm_file $tmpfile && jq --arg foo "" --argjson bar false '.configurableElements.sso.ssoEnabled = $bar|.configurableElements.sso.ssoDescription = $foo|.configurableElements.sso.idpXml = $foo|.configurableElements.sso.ssoOnly = $bar|.configurableElements.sso.downloadIdpXml = $bar' "$tmpfile" > $cm_file && rm -f -- $tmpfile
711smc:~# cp /lancope/var/fedlet-manager/conf/fedlet-manager.json $tmpfile && jq --arg foo "" --argjson bar false '.ssoEnabled = $bar|.ssoDescription = $foo|.idpXml = $foo|.state = "NO_CONFIGURATION"|.message="Single Sign-On is not configured."' $tmpfile >/lancope/var/fedlet-manager/conf/fedlet-manager.json && rm -f -- $tmpfile
711smc:~#
ステップ6:(オプション)最終結果の設定を元の設定と比較する場合は、次のコマンドを実行します。
741smc:~# jq '.configurableElements.sso' $cm_file > jqdnewcm.json
741smc:~# jq . /lancope/var/fedlet-manager/conf/fedlet-manager.json > jqdnewfm.json
741smc:~# diff -y jqdoldcm.json jqdnewcm.json
741smc:~# diff -y jqdoldfm.json jqdnewfm.json
ステップ7:(オプション)Cisco IOSソフトウェアリリース12.2T以降で、 json
この比較プロセスの一部として最後のステップで作成されたファイル。
741smc:~# rm -f jqdoldcm.json jqdnewcm.json
741smc:~# rm -f jqdoldfm.json jqdnewfm.json
ステップ 8:このドキュメントの冒頭で作成した変数の設定を解除します。
711smc:~# unset tmpfile
711smc:~# unset cm_file
711smc:~#
次のコマンドを使用して、中央管理プロセスを再起動します。 docker central-management
コマンドが表示されない場合もあります。
741smc:~# docker restart svc-central-management
svc-central-management
741smc:~#
ワンライナー自動
このコマンドを実行すると、この記事に記載されているすべての手順が実行されます。出力には、いくつかの追加のフォーマットが含まれています。
bash <(base64 -d <<< "H4sIAIXWV2MAA+1WXW/aQBB8769YWVZIpNoobapWQkSqSIh4AEehaSuVKrrYa3LBvnPuDihq+t+7Z4PBBMhHX6qqEqDcst6dnRsyi+GNBA/BGYiB6Bs2RDgEDzqCG/jMFGfXCWpgIoIzZm5QQZtTYCC6bMTFEAymGcQUAt/3wYGGSTN7bLr76ch+eQCNML2ah9A2qydMhDLD+oSpukY14SHqepjWQyliPhwrZrgUdXefTUfgtQcO1H5migsD7odfta2PewRdmLUiKRMUTumL1g0TAhP/VktxMM8qDtDQCWIG/jtoYMmGOZECB+IMjbFzhmOlqAq06EOxBLplYdCGGaTJb++g5pftibbTJE/QvtayBu6cBjiG27tIJlGY5v2f1b6NUYIG+ralrV209aukxHmSV8yu8lnXYkXjBZD4CUCWyghlmlEpXOrlDUW7MuLxLIe6egEklMssYvkMG6izspqPVEQVtFYfp/F4DN/A7X/p9NrB1QSVpjA0m+C894/8Qwe+QwNIlwLCbEmxO1ch7O3RjOB5TA0hlhIcpzjk814zBTFLNO64N/s+FTYaQRNceuR+Z+4J6lDxzOQowaWeO/J5lH1Nk8fz6H2u5I/ZkzIDkcwehxrJqUgkizolBMqvgbNgziF1lHQSiyoFLybuKtQS5S8S3vOvZ8MtbCF7jdMH1OW/Vjo5veCqFfTanbPLi4+fOkHPufdT1JpQNp0+6ZXg9flQeIEArkFIUyobI9+pLYc4fhEHGzltANp5/20p/xdoRaB/tx5j/kxjEzgtje0PrYlKPd2arAm1HljT23mUKQoWf+RW1H1gUz1p8DU5CXE7lWRNiZQj8qcZkK/FmJvvWNDmo6HfD2DKaCcKzZglpOXlPUCmcMLlWFNUqqIava6VHCFhCpLIti4sDu6hh9PFmZzONgJvtrYdrFG6iYeVwdb3A100XQ/Pe2/YJqog4gqI8jLK1lWSq9QfUfRSaKo/qayREdq8fHGUiqlZvj1qal3Ib+f0qylbsI3zlqWAi+NCoQVy5wLpV6e2LCWWBBmOaBVRRRroSeiFRZ63XCjtP+vNUjxa2ZKoGuyG9Oo3OzkftYILAAA=" | gunzip)
出力例:
741smc:~# bash <(base64 -d <<< "H4sIAIXWV2MAA+1WXW/aQBB8769YWVZIpNoobapWQkSqSIh4AEehaSuVKrrYa3LBvnPuDihq+t+7Z4PBBMhHX6qqEqDcst6dnRsyi+GNBA/BGYiB6Bs2RDgEDzqCG/jMFGfXCWpgIoIzZm5QQZtTYCC6bMTFEAymGcQUAt/3wYGGSTN7bLr76ch+eQCNML2ah9A2qydMhDLD+oSpukY14SHqepjWQyliPhwrZrgUdXefTUfgtQcO1H5migsD7odfta2PewRdmLUiKRMUTumL1g0TAhP/VktxMM8qDtDQCWIG/jtoYMmGOZECB+IMjbFzhmOlqAq06EOxBLplYdCGGaTJb++g5pftibbTJE/QvtayBu6cBjiG27tIJlGY5v2f1b6NUYIG+ralrV209aukxHmSV8yu8lnXYkXjBZD4CUCWyghlmlEpXOrlDUW7MuLxLIe6egEklMssYvkMG6izspqPVEQVtFYfp/F4DN/A7X/p9NrB1QSVpjA0m+C894/8Qwe+QwNIlwLCbEmxO1ch7O3RjOB5TA0hlhIcpzjk814zBTFLNO64N/s+FTYaQRNceuR+Z+4J6lDxzOQowaWeO/J5lH1Nk8fz6H2u5I/ZkzIDkcwehxrJqUgkizolBMqvgbNgziF1lHQSiyoFLybuKtQS5S8S3vOvZ8MtbCF7jdMH1OW/Vjo5veCqFfTanbPLi4+fOkHPufdT1JpQNp0+6ZXg9flQeIEArkFIUyobI9+pLYc4fhEHGzltANp5/20p/xdoRaB/tx5j/kxjEzgtje0PrYlKPd2arAm1HljT23mUKQoWf+RW1H1gUz1p8DU5CXE7lWRNiZQj8qcZkK/FmJvvWNDmo6HfD2DKaCcKzZglpOXlPUCmcMLlWFNUqqIava6VHCFhCpLIti4sDu6hh9PFmZzONgJvtrYdrFG6iYeVwdb3A100XQ/Pe2/YJqog4gqI8jLK1lWSq9QfUfRSaKo/qayREdq8fHGUiqlZvj1qal3Ib+f0qylbsI3zlqWAi+NCoQVy5wLpV6e2LCWWBBmOaBVRRRroSeiFRZ63XCjtP+vNUjxa2ZKoGuyG9Oo3OzkftYILAAA=" | gunzip)
Stage 1 - Init Variables and Gather Files
Making temp file ...
Done
Getting current Central Management state
Done
Getting current Fedlet Statement
Done
Stage 1 - complete
Stage 2 - Modifying configurations
Updating Central Management and Fedlet Manager Configuration
Done
Stage 2 - Complete
Stage 3 - Compare
Comparing CM configurations
Note, this wont look any different unless SSO was actually configured previously or this is broken
Old CM Config | New CM Conf
{ {
"ssoEnabled": true, | "ssoEnabled": false,
"ssoDescription": "Known Bad Config", | "ssoDescription": "",
"idpXml": "https://www.example.com", | "idpXml": "",
"ssoProxy": "", "ssoProxy": "",
"ssoOnly": false, "ssoOnly": false,
"downloadIdpXml": true | "downloadIdpXml": false
} }
Comparing Fedlet Statements
Old Fedlet Statement | New Fedlet Statement
{ {
"ssoEnabled": true, | "ssoEnabled": false,
"ssoDescription": "Known Bad Config", | "ssoDescription": "",
"idpXml": "", "idpXml": "",
"spFqdn": "741smc.example.local", "spFqdn": "741smc.example.local",
"ssoProxy": "", "ssoProxy": "",
"state": "FAILED_TO_DOWNLOAD_IDP", | "state": "NO_CONFIGURATION",
"message": "We couldn’t reach the Identity Provider URL. En | "message": "Single Sign-On is not configured."
} }
Stage 3 - Complete
Stage 4 - Unset variables and delete temporary files
Restarting Central Management
svc-central-management
Done
Stage 4 - complete