Contents

Introduction

Prerequisites

Requirements

Componentes Utilizados

Problema

Solução

Uma Linha Automática

Introduction

Este documento descreve como definir o Logon Único (SSO) para os valores vazios/padrão no Secure Network Analytics Manager.

Prerequisites

Requirements

Não existem requisitos específicos para este documento.

Componentes Utilizados

As informações neste documento são baseadas no Secure Network Analytics Manager (SMC) versão 7.1 e posterior.

Um cliente/aplicativo SSH com funcionalidade de copiar e colar é incentivado para este artigo.

The information in this document was created from the devices in a specific lab environment. All of the devices used in this document started with a cleared (default) configuration. Se a rede estiver ativa, certifique-se de que você entenda o impacto potencial de qualquer comando.

Problema

As configurações de SSO definidas são inválidas ou estão desatualizadas, ou o Gerenciamento Central mostra Configuration Changes Failed depois que uma configuração de SSO inválida ou obsoleta foi salva.

Solução

Há duas partes para a configuração do SSO que são Central Management e Fedlet Manager. Se for desejada uma comparação das configurações original e final, execute todas as etapas listadas. Se uma comparação não for desejada, execute somente os comandos que não estão marcados como (Opcional).  Um comando One-Liner no final deste artigo executa as etapas para você.

Etapa 1. (Opcional) Se quiser comparar a configuração atual do Central Management com o resultado final, execute o comando jq '.configurableElements.sso' /lancope/var/services/cm/configuration/$(awk -F\" '{print $8}' /lancope/var/services/cm-agent/configuration/managementChannel.json)/config.json > jqdoldcm.json comando.

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:~#

Etapa 2. (Opcional) se quiser comparar a configuração atual com o resultado final, execute o comando jq . /lancope/var/fedlet-manager/conf/fedlet-manager.json > jqdoldfm.json comando.

741smc:~# jq . /lancope/var/fedlet-manager/conf/fedlet-manager.json > jqdoldfm.json

741smc:~#

Etapa 3. Crie uma variável temporária com o comando tmpfile=$(mktemp) comando.

741smc:~# tmpfile=$(mktemp)

741smc:~#

Etapa 4. Crie uma variável temporária com o comandocm_file=$(echo /lancope/var/services/cm/configuration/$(awk -F\" '{print $8}' /lancope/var/services/cm-agent/configuration/managementChannel.json)/config.json)comando.

741smc:~# cm_file=$(echo /lancope/var/services/cm/configuration/$(awk -F\" '{print $8}' /lancope/var/services/cm-agent/configuration/managementChannel.json)/config.json)

741smc:~#

Etapa 5. Determine sua versão atual do Secure Network Analytics com o comando echo $SWINFO_version comando.

741smc:~# echo $SWINFO_version

7.4.1

Se a versão do SMC for 7.4.1, execute estes comandos:

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:~#

Se a versão do SMC for anterior à 7.4.1, execute estes comandos:

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:~#

Etapa 6. (Opcional) Se quiser comparar a configuração do resultado final com as configurações originais, execute estes comandos:

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

Etapa 7. (Opcional) Exclua o json arquivos criados como parte deste processo de comparação na última etapa.

741smc:~# rm -f jqdoldcm.json jqdnewcm.json

741smc:~# rm -f jqdoldfm.json jqdnewfm.json

Etapa 8. Cancele a definição das variáveis criadas no início deste documento.

711smc:~# unset tmpfile

711smc:~# unset cm_file

711smc:~#

Reinicie o processo de gerenciamento central com o comando docker central-managementcomando.

741smc:~# docker restart svc-central-management

svc-central-management

741smc:~#

Uma Linha Automática

Execute este comando para executar todas as etapas vistas neste artigo. A saída contém alguma formatação adicional.

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)

Saída de exemplo:

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