O conjunto de documentação deste produto faz o possível para usar uma linguagem imparcial. Para os fins deste conjunto de documentação, a imparcialidade é definida como uma linguagem que não implica em discriminação baseada em idade, deficiência, gênero, identidade racial, identidade étnica, orientação sexual, status socioeconômico e interseccionalidade. Pode haver exceções na documentação devido à linguagem codificada nas interfaces de usuário do software do produto, linguagem usada com base na documentação de RFP ou linguagem usada por um produto de terceiros referenciado. Saiba mais sobre como a Cisco está usando a linguagem inclusiva.
A Cisco traduziu este documento com a ajuda de tecnologias de tradução automática e humana para oferecer conteúdo de suporte aos seus usuários no seu próprio idioma, independentemente da localização. Observe que mesmo a melhor tradução automática não será tão precisa quanto as realizadas por um tradutor profissional. A Cisco Systems, Inc. não se responsabiliza pela precisão destas traduções e recomenda que o documento original em inglês (link fornecido) seja sempre consultado.
Este documento descreve como implantar e integrar CSDAC para objetos Microsoft 365 dinâmicos no FMC local com Ansible no Ubuntu 20.04.
A Cisco recomenda que você conheça estes tópicos:
As informações neste documento são baseadas nestas versões de software e hardware:
As informações neste documento foram criadas a partir de dispositivos em um ambiente de laboratório específico. Todos os dispositivos utilizados neste documento foram iniciados com uma configuração (padrão) inicial. Se a rede estiver ativa, certifique-se de que você entenda o impacto potencial de qualquer comando.
O Cisco Secure Dynamic Attributes (CSDAC) permite a coleta de dados como redes e endereços IP de provedores de nuvem e o envia ao Cisco Secure Firewall Management Center para que possa ser usado nas regras de política de controle de acesso.
O Cisco Secure Dynamic Attributes Connector permite o uso de etiquetas de serviço e categorias de várias plataformas de serviço em nuvem, como AWS, Github, Google Cloud, Azure, Etiquetas de serviço do Azure, Microsoft Office 365 e vCenter.
Construções de rede como endereços IP não são confiáveis em ambientes virtuais, de nuvem e de contêiner devido à natureza dinâmica das cargas de trabalho e à inevitabilidade da sobreposição de endereços IP. Às vezes, as regras de política devem ser definidas em construções que não sejam de rede, como o nome da máquina virtual (VM) ou o grupo de segurança. Portanto, as políticas de firewall são persistentes mesmo quando o endereço IP ou a VLAN são alterados. Essas tags e atributos podem ser coletados usando-se contêineres Docker de conector dinâmico executados em máquinas virtuais Ubuntu, CentOs ou Red Hat Enterprise Linux. Se desejar instalar o CSDAC no CentOS ou no Red Hat, consulte o guia de documentação oficial.
O conector de atributos dinâmicos no host Ubuntu é instalado usando a Coleção Ansible. O Cisco Secure Dynamic Attributes suporta dois tipos de adaptadores.
Este artigo se concentra na implantação do Cisco Secure Dynamic Attributes Connect no host Ubuntu para o serviço em nuvem do Microsoft Office 365 com Secure Firewall Management Center no local.
Esta seção é dividida nas próximas seções:
Esta seção discute como instalar o software de pré-requisito no Ubuntu.
Etapa 1: Validar Docker não instalado.
root@tac:/home/tac# docker --version
Command 'docker' not found.
Aviso: se o Docker estiver instalado, consulte a documentação do Docker para desinstalá-lo.
Etapa 2: Atualizar repositórios Ubuntu.
root@tac:/home/tac# sudo apt -y update && sudo apt -y upgrade
Hit:1 http://security-ubuntu-site/ubuntu focal-security InRelease
Hit:2 http://ubuntu-repository-web-site/ubuntu focal InRelease
Hit:3 http://ubuntu-repository-web-site/ubuntu focal-updates InRelease
Hit:4 http://ubuntu-repository-web-site/ubuntu focal-backports InRelease
Reading package lists... Done
Building dependency tree
Reading state information... Done
334 packages can be upgraded. Run 'apt list --upgradable' to see them.
Reading package lists... Done
Building dependency tree
....
Etapa 3: confirme a versão do Python.
root@tac:/home/tac# /usr/bin/python3 --version
Python 3.8.10
Aviso: Se a versão do Python for anterior à 3.6, você deverá instalar a versão 3.6 ou posterior.
Etapa 4: Instale as bibliotecas comuns.
root@tac:/home/tac# sudo apt -y install software-properties-common
Reading package lists... Done
Building dependency tree
Reading state information... Done
...
Etapa 5: Instale o Ansible.
root@tac:/home/tac# sudo apt-add-repository -y -u ppa:ansible/ansible && sudo apt -y install ansible
Hit:1 http://security-ubuntu-site/ubuntu focal-security InRelease
Get:2 http://personal-package-archive-site/ansible/ansible/ubuntu focal InRelease [18.0 kB]
Hit:3 http://ubuntu-repository-web-siteubuntu focal InRelease
Hit:4 http://ubuntu-repository-web-site/ubuntu focal-updates InRelease
Hit:5 http://ubuntu-repository-web-site/ubuntu focal-backports InRelease
Get:6 http://personal-package-archive-site/ansible/ansible/ubuntu focal/main amd64 Packages [1 132 B]
Get:7 http://personal-package-archive-site/ansible/ansible/ubuntu focal/main i386 Packages [1 132 B]
Get:8 http://personal-package-archive-site/ansible/ansible/ubuntu focal/main Translation-en [756 B]
Fetched 21.1 kB in 3s (7 526 B/s)
Reading package lists... Done
Reading package lists... Done
Building dependency tree
Reading state information... Done
...
Etapa 6: Verifique a versão Ansible.
root@tac:/home/tac# ansible --version
ansible [core 2.12.10]
config file = /etc/ansible/ansible.cfg
configured module search path = ['/root/.ansible/plugins/modules', '/usr/share/ansible/plugins/modules']
ansible python module location = /usr/lib/python3/dist-packages/ansible
ansible collection location = /root/.ansible/collections:/usr/share/ansible/collections
executable location = /usr/bin/ansible
python version = 3.8.10 (default, May 26 2023, 14:05:08) [GCC 9.4.0]
jinja version = 2.10.1
libyaml = True
Observação: é normal que o Ansible faça referência ao Python 2.x. O conector ainda usa Python 3.6.
Etapa 7: Obtenha o software do conector de atributos dinâmicos com o Ansible.
root@tac:/home/tac# ansible-galaxy collection install cisco.csdac
Starting galaxy collection install process
Process install dependency map
Starting collection install process
Downloading https://galaxy-ansible-site/download/cisco-csdac-2.2.1.tar.gz to /root/.ansible/tmp/ansible-local-52406urwp91ou/tmpqabv89vb/cisco-csdac-2.2.1-fr29zaq5
Downloading https://galaxy-ansible-site/download/community-crypto-2.15.1.tar.gz to /root/.ansible/tmp/ansible-local-52406urwp91ou/tmpqabv89vb/community-crypto-2.15.1-dkc897hb
Installing 'cisco.csdac:2.2.1' to '/root/.ansible/collections/ansible_collections/cisco/csdac'
cisco.csdac:2.2.1 was installed successfully
Installing 'community.crypto:2.15.1' to '/root/.ansible/collections/ansible_collections/community/crypto'
Downloading https://galaxy-ansible-site/download/community-general-7.4.0.tar.gz to /root/.ansible/tmp/ansible-local-52406urwp91ou/tmpqabv89vb/community-general-7.4.0-cr9imbx3
community.crypto:2.15.1 was installed successfully
Installing 'community.general:7.4.0' to '/root/.ansible/collections/ansible_collections/community/general'
community.general:7.4.0 was installed successfully
Etapa 8: Mova para o diretório csdac.
root@tac:/home/tac# cd ~/.ansible/collections/ansible_collections/cisco/csdac/
Etapa 9: Instale o serviço de reunião.
root@tac:~/.ansible/collections/ansible_collections/cisco/csdac# ansible-playbook default_playbook.yml --ask-become-pass
BECOME password:
[WARNING]: provided hosts list is empty, only localhost is available. Note that
the implicit localhost does not match 'all'
[WARNING]: running playbook inside collection cisco.csdac
PLAY [localhost] ***************************************************************
TASK [Gathering Facts] *********************************************************
ok: [localhost]
TASK [cisco.csdac.csdac : Define Python Interpreter] ***************************
ok: [localhost]
...
TASK [cisco.csdac.csdac : verify that core services are started] ***************
ok: [localhost]
TASK [cisco.csdac.csdac : verify that core services are started] ***************
ok: [localhost]
TASK [cisco.csdac.csdac : verify that core services are started] ***************
ok: [localhost]
TASK [cisco.csdac.csdac : verify that core services are started] ***************
ok: [localhost]
TASK [cisco.csdac.csdac : Post task] *******************************************
ok: [localhost] => {}
MSG:
Please login in to https://172.16.1.53 to configure csdac application
PLAY RECAP *********************************************************************
localhost : ok=72 changed=8 unreachable=0 failed=0 skipped=35 rescued=0 ignored=0
Aviso: em caso de falha na instalação devido a 'Permissões negadas com soquete de daemon Docker', Considere a ID de bug Cisco CSCwh58312 ou entre em contato com o TAC da Cisco.
Etapa 10: faça login no conector usando o endereço IP CSDAC usando o protocolo HTTPS.
Observação: o login inicial é o nome de usuário 'admin' e a senha 'admin'. O sistema solicita uma alteração de senha após o primeiro login bem-sucedido.
Etapa 1: Faça login no conector de atributos dinâmicos.
Etapa 2: Clique em 'Conectores'.
Etapa 3: Adicione um conector do Office 365: clique no ícone Adicionar (+) e depois em 'Office 365'.
Etapa 4: Configure o conector com Nome, URL da API Base, Nome da Instância e Habilitar ou Desabilitar IPs opcionais.
Considere o seguinte:
Etapa 5: clique em 'Testar' e verifique se o teste é bem-sucedido antes de salvar a configuração do conector.
Etapa 6: salvar e verificar se o status é 'OK'.
Etapa 1: faça login no conector de atributos dinâmicos.
Etapa 2: Clique em 'Adaptadores'.
Etapa 3: Adicione um novo adaptador: clique no ícone Adicionar (+) e, em seguida, em "Firewall Management Center local".
Etapa 4: Configure o adaptador com Nome, endereço IP, Porta e Usuário/Senha.
Aviso: crie um novo usuário FMC na interface do usuário dedicada à conexão do adaptador. O uso de um usuário existente pode criar logouts inesperados no CSDAC ou na interface do usuário do Centro de Gerenciamento de Firewall no Local.
Observação: a Configuração de Função de Usuário deve ter funções 'Administrador', 'Administrador de Acesso' ou 'Administrador de Rede'. Use o FQDN do Centro de Gerenciamento de Firewall Local no campo de endereço IP.
Etapa 5: Abrir a interface do usuário do Secure Management Center do firewall local.
Etapa 6: Faça download do certificado HTTPS PEM (cadeia) do navegador: clique no cadeado HTTPS mostrado no navegador, Conexão segura, Mais informações, Exibir certificado, PEM (cadeia).
Isso faz o download de um arquivo .pem com a cadeia de certificados.
Observação: as etapas para coletar o certificado HTTPS Local Secure Firewall Management Center pertencem ao navegador Firefox. Procure etapas semelhantes se outro navegador for usado.
Etapa 7: Abra o conector de atributos dinâmicos e clique em 'Obter certificado' e em 'Procurar do arquivo...'.
Etapa 8: carregue o certificado .pem e clique em 'TEST' para garantir o êxito do teste.
Aviso: verifique se os servidores DNS configurados no computador Ubuntu podem resolver o FQDN do Centro de Gerenciamento de Firewall Local; caso contrário, o Teste pode falhar.
Etapa 9: salvar e verificar se o status é 'OK'.
Observação: não é possível criar filtros de Atributos Dinâmicos para o Office 365.
Etapa 10: Comece a criar Regras de Política de Controle de Acesso com Atributos Dinâmicos do Office 365 na IU do Centro de Gerenciamento de Firewall no Local.
Verifique o status do contêiner no Ubuntu para serviços centrais, conectores e adaptadores.
root@tac://# docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
44f71f675ff1 public.ecr.aws/e6e4t5f5/muster_fmc_adapter:2.2.0-latest "./docker-entrypoint…" 12 hours ago Up 12 hours 50070/tcp muster-adapter-fmc.2.muster
88826cf0742f public.ecr.aws/e6e4t5f5/muster_o365_connector:2.2.0-latest "./docker-entrypoint…" 13 hours ago Up 13 hours 50070/tcp muster-connector-o365.3.muster
4c2c73d351e2 public.ecr.aws/e6e4t5f5/muster_envoy:2.2.0-latest "/docker-entrypoint.…" 2 days ago Up 2 days 0.0.0.0:443->8443/tcp muster-envoy
67f3afae2165 public.ecr.aws/e6e4t5f5/muster_ui:2.2.0-latest "/docker-entrypoint.…" 2 days ago Up 2 days 8080/tcp muster-ui
722a764c54e9 public.ecr.aws/e6e4t5f5/muster_ui_backend:2.2.0-latest "./docker-entrypoint…" 2 days ago Up 2 days 50031/tcp muster-ui-backend
038654545f30 public.ecr.aws/e6e4t5f5/muster_bee:2.2.0-latest "/bin/sh -c /app/bee" 2 days ago Up 2 days 50050/tcp, 50443/tcp muster-bee
90cfd7e3a28b public.ecr.aws/e6e4t5f5/muster_etcd:2.2.0-latest "etcd" 2 days ago Up 2 days 2379-2380/tcp muster-etcd
Verifique o status do conector na interface do usuário do CSDAC.
Verifique o status do adaptador na interface do usuário do CSDAC.
Verificar Atributos Dinâmicos do Office 365 no Centro de Gerenciamento de Firewall.
Crie ou edite uma Regra de política de controle de acesso, clique em 'Atributos dinâmicos', clique em 'Atributos disponíveis' e selecione 'Objetos dinâmicos'.
Observação: se os Objetos Dinâmicos do Office 365 não estiverem listados, algo pode estar errado com a integração. Verifique a seção de solução de problemas ou entre em contato com o TAC da Cisco.
Em caso de problemas de instalação do conector de atributos dinâmicos seguros com Ansible, colete 'csdac.log' localizado no diretório '~/.ansible/collections/ansible_collection/cisco/csdac/logs/'.
root@tac://# cd ~/.ansible/collections/ansible_collections/cisco/logs/
root@tac:~/.ansible/collections/ansible_collections/cisco/csdac/logs# ls -lth
total 276K
-rw-r--r-- 1 root root 272K sep 14 15:37 csdac.log
Os logs de falha da instalação são encontrados neste arquivo. Abra-o usando os comandos Linux 'cat' ou 'less', explore os registros de falhas ou entre em contato com o TAC da Cisco e forneça esse arquivo.
Às vezes, a instalação Ansible falha devido a 'permissões negadas'. Explore o arquivo csdac.log e procure logs de 'permissão negada'.
TASK [cisco.csdac.csdac : print result of csdac command line start command (stderr)] ***
ok: [localhost] => {
"muster_cli_start_result.stderr_lines": [
"permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock: Post \"http://%2Fvar%2Frun%2Fdocker.sock/v1.24/volumes/create\": dial unix /var/run/docker.sock: connect: permission denied",
"permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock: Post \"http://%2Fvar%2Frun%2Fdocker.sock/v1.24/volumes/create\": dial unix /var/run/docker.sock: connect: permission denied",
"permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock: Post \"http://%2Fvar%2Frun%2Fdocker.sock/v1.24/volumes/create\": dial unix /var/run/docker.sock: connect: permission denied",
"permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock: Post \"http://%2Fvar%2Frun%2Fdocker.sock/v1.24/networks/create\": dial unix /var/run/docker.sock: connect: permission denied",
"docker: permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock: Post \"http://%2Fvar%2Frun%2Fdocker.sock/v1.24/containers/create\": dial unix /var/run/docker.sock: connect: permission denied.",
"See 'docker run --help'.",
"docker: permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock: Post \"http://%2Fvar%2Frun%2Fdocker.sock/v1.24/containers/create\": dial unix /var/run/docker.sock: connect: permission denied."
Se registros semelhantes forem encontrados, considere o bug da Cisco ID CSCwh58312 ou entre em contato com o TAC da Cisco para obter assistência.
Se 'docker ps -a' indicar que os contêineres estão inativos ou para reiniciá-los em caso de problemas, os contêineres poderão ser reiniciados com o comando 'docker restart container-id'.
Exemplo: reiniciando o Office 365 com ID de contêiner '88826cf0742f'.
root@tac://# docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
44f71f675ff1 public.ecr.aws/e6e4t5f5/muster_fmc_adapter:2.2.0-latest "./docker-entrypoint…" 12 hours ago Up 12 hours 50070/tcp muster-adapter-fmc.2.muster
88826cf0742f public.ecr.aws/e6e4t5f5/muster_o365_connector:2.2.0-latest "./docker-entrypoint…" 13 hours ago Up 13 hours 50070/tcp muster-connector-o365.3.muster
root@tac://# docker restart 88826cf0742f
root@tac://# docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
44f71f675ff1 public.ecr.aws/e6e4t5f5/muster_fmc_adapter:2.2.0-latest "./docker-entrypoint…" 12 hours ago Up 12 hours 50070/tcp muster-adapter-fmc.2.muster
88826cf0742f public.ecr.aws/e6e4t5f5/muster_o365_connector:2.2.0-latest "./docker-entrypoint…" 13 hours ago Up 2 seconds 50070/tcp muster-connector-o365.3.muster
Verifique a conexão com o CSDAC e confirme se os objetos foram criados no Secure Firewall Management Center.
> expert
sudoadmin@firepower:~$ sudo su -
Password:
root@firepower:/Volume/home/admin# cat /var/opt/CSCOpx/MDC/log/operation/usmsharedsvcs.log
17-Sep-2023 17:24:58.046,[INFO],(DefenseCenterServiceImpl.java:1462)
com.cisco.nm.vms.api.dc.DefenseCenterServiceImpl, ajp-nio-127.0.0.1-9009-exec-2
** REST Request [ CSM ]
** ID : ff3e6259-2417-48cc-8e5e-a41d0bd04b39
** URL: POST /audit
{
"version":"7.2.5",
"requestId":"ff3e6259-2417-48cc-8e5e-a41d0bd04b39",
"data":{
"userName":"TAC",
"subsystem":"API",
"message":"POST https://FMC-FQDN/api/fmc_config/v1/domain/e276abec-e0f2-11e3-8169-6d9ed49b625f
/object/bulkdynamicobjects Created (201) - The request has been fulfilled and resulted in a new resource being created",
"sourceIP":"172.16.1.53",
"domainUuid":"e276abec-e0f2-11e3-8169-6d9ed49b625f",
"time":"1694971497660"},"deleteList":[]
}
Documentos adicionais relacionados ao Cisco Secure Dynamic Attributes (CSDAC) podem ser encontrados aqui:
Sobre o Conector de Atributos Dinâmicos Cisco
Instalar e atualizar o Cisco Secure Dynamic Attributes Connector
Configurar o conector de atributos dinâmicos Cisco
Usar Objetos Dinâmicos em Políticas de Controle de Acesso
Solucionar Problemas do Conector de Atributos Dinâmicos
A instalação do CSDAC 2.2 falhou em "Permission denied with Docker daemon socket" no Ubuntu 20.04.
ID de bug Cisco CSCwh58312.
Revisão | Data de publicação | Comentários |
---|---|---|
1.0 |
04-Oct-2023 |
Versão inicial |