この製品のドキュメントセットは、偏向のない言語を使用するように配慮されています。このドキュメントセットでの偏向のない言語とは、年齢、障害、性別、人種的アイデンティティ、民族的アイデンティティ、性的指向、社会経済的地位、およびインターセクショナリティに基づく差別を意味しない言語として定義されています。製品ソフトウェアのユーザインターフェイスにハードコードされている言語、RFP のドキュメントに基づいて使用されている言語、または参照されているサードパーティ製品で使用されている言語によりドキュメントに例外が存在する場合があります。シスコのインクルーシブ ランゲージの取り組みの詳細は、こちらをご覧ください。
シスコは世界中のユーザにそれぞれの言語でサポート コンテンツを提供するために、機械と人による翻訳を組み合わせて、本ドキュメントを翻訳しています。ただし、最高度の機械翻訳であっても、専門家による翻訳のような正確性は確保されません。シスコは、これら翻訳の正確性について法的責任を負いません。原典である英語版(リンクからアクセス可能)もあわせて参照することを推奨します。
このドキュメントでは、Ubuntu 20.04上のAnsibleを使用して、オンプレミスFMCでDynamic Microsoft 365オブジェクト用にCSDACを導入し、統合する方法について説明します。
次の項目について理解しておくことをお勧めします。
このドキュメントの情報は、次のソフトウェアとハードウェアのバージョンに基づいています。
このドキュメントの情報は、特定のラボ環境にあるデバイスに基づいて作成されました。このドキュメントで使用するすべてのデバイスは、クリアな(デフォルト)設定で作業を開始しています。本稼働中のネットワークでは、各コマンドによって起こる可能性がある影響を十分確認してください。
Cisco Secure Dynamic Attributes(CSDAC)を使用すると、クラウドプロバイダーからネットワークやIPアドレスなどのデータを収集してCisco Secure Firewall Management Center(FMC)に送信し、アクセスコントロールポリシールールで使用できます。
Cisco Secure Dynamic Attributes Connectorを使用すると、AWS、Github、Google Cloud、Azure、Azure Service Tags、Microsoft Office 365、vCenterなどのさまざまなクラウドサービスプラットフォームのサービスタグとカテゴリを使用できます。
IPアドレスなどのネットワーク構造は、ワークロードの動的な性質とIPアドレスのオーバーラップの不可避な性質により、仮想、クラウド、およびコンテナ環境では信頼できません。場合によっては、仮想マシン(VM)名やセキュリティグループなどの非ネットワーク構成上でポリシールールを定義する必要があります。したがって、ファイアウォールポリシーは、IPアドレスまたはVLANが変更されても永続的です。これらのタグと属性は、Ubuntu、CentOs、またはRed Hat Enterprise Linux仮想マシンで実行されているダイナミック属性コネクタDockerコンテナを使用して収集できます。CentOSまたはRed HatにCSDACをインストールする場合は、公式のドキュメントガイドを参照してください。
Ubuntuホスト上の動的属性コネクタは、Ansible Collectionを使用してインストールされます。Cisco Secure Dynamic Attributesは、2種類のアダプタをサポートします。
この記事では、オンプレミスのセキュアファイアウォール管理センターを使用したMicrosoft Office 365クラウドサービス向けUbuntuホストでのCisco Secure Dynamic Attributes Connectの導入に焦点を当てています。
このセクションは、次のセクションに分かれています。
このセクションでは、前提条件となるソフトウェアをUbuntuにインストールする方法について説明します。
手順1: Dockerがインストールされていないことを確認します。
root@tac:/home/tac# docker --version
Command 'docker' not found.
警告: Dockerがインストールされている場合は、Dockerのマニュアルを参照してアンインストールしてください。
手順2: 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
....
ステップ3: Pythonのバージョンを確認します。
root@tac:/home/tac# /usr/bin/python3 --version
Python 3.8.10
警告: Pythonのバージョンが3.6より前の場合は、バージョン3.6以降をインストールする必要があります。
手順4:共通ライブラリをインストールします。
root@tac:/home/tac# sudo apt -y install software-properties-common
Reading package lists... Done
Building dependency tree
Reading state information... Done
...
ステップ5: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
...
ステップ6: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
注: AnsibleがPython 2.xを参照するのは正常です。このコネクタは、Python 3.6を使用しています。
ステップ7: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
ステップ8:csdacディレクトリに移動します。
root@tac:/home/tac# cd ~/.ansible/collections/ansible_collections/cisco/csdac/
ステップ9:マスタサービスをインストールします。
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
警告:「Dockerデーモンソケットで許可が拒否された」ことが原因でインストールが失敗した場合は、Cisco Bug ID CSCwh58312を検討するか、Cisco TACにお問い合わせください。
ステップ10:HTTPSプロトコルを使用して、CSDAC IPアドレスを使用してコネクタにログインします。
注:最初のログインはユーザ名「admin」、パスワード「admin」です。最初にログインが成功した後、システムはパスワードの変更を要求します。
ステップ1:ダイナミック属性コネクタにログインします。
ステップ2: [コネクタ]をクリックします。
ステップ3: Office 365コネクタを追加します。追加アイコン(+)をクリックし、「Office 365」をクリックします。
ステップ4:名前、ベースAPI URL、インスタンス名、およびオプションのIPの有効化または無効化を使用してコネクタを設定します。
次の点を考慮します。
ステップ5:コネクタ設定を保存する前に、「テスト」をクリックしてテストが成功することを確認します。
ステップ6:保存して、ステータスが「OK」であることを確認します。
ステップ1:ダイナミック属性コネクタにログインします。
ステップ2: [アダプタ]をクリックします。
ステップ3:新しいアダプタを追加します。追加アイコン(+)をクリックし、「オンプレミスのファイアウォール管理センター」をクリックします。
ステップ4:アダプタに名前、IPアドレス、ポート、およびユーザ/パスワードを設定します。
警告:アダプタ接続専用のUIで新しいFMCユーザを作成してください。既存のユーザを使用すると、CSDACまたはオンプレミスのファイアウォール管理センター(FMC)のUIで予期しないログアウトが発生する可能性があります。
注:ユーザロール設定には、「Administrator」、「Access Admin」、または「Network Admin」ロールが必要です。IPアドレスフィールドで、オンプレミスのファイアウォール管理センター(FMC)FQDNを使用します。
ステップ5:オンプレミスのファイアウォールのセキュアなManagement Center(CSMC)のUIを開きます。
ステップ6:ブラウザからHTTPS PEM(チェーン)証明書をダウンロードします。ブラウザに表示されているHTTPSの南京錠、接続の保護、詳細情報、証明書の表示、PEM(チェーン)をクリックします。
これにより、証明書チェーンを含む.pemファイルがダウンロードされます。
注:HTTPS On-Prem Secure Firewall Management Center(WFMC)証明書を収集する手順は、Firefoxブラウザに属しています。別のブラウザを使用している場合は、同様の手順を探します。
ステップ7:ダイナミック属性コネクタを開き、[証明書の取得]と[ファイルから参照…]をクリックします。
ステップ8:.pem証明書をアップロードし、「テスト」をクリックしてテストが成功することを確認します。
警告: Ubuntuマシンで構成されているDNSサーバーがオンプレミスのファイアウォール管理センターFQDNを解決できることを確認してください。解決できない場合、テストが失敗する可能性があります。
ステップ9:保存して、ステータスが「OK」であることを確認します。
注: Office 365の動的属性フィルターは作成できません。
ステップ10:オンプレミスのファイアウォール管理センターのUIで、動的Office 365属性を使用したアクセスコントロールポリシールールの作成を開始します。
Ubuntuでコアサービス、コネクタ、およびアダプタのコンテナステータスを確認します。
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
CSDAC UIからコネクタのステータスを確認します。
CSDAC UIからアダプタのステータスを確認します。
ファイアウォール管理センターでOffice 365の動的属性を確認します。
アクセスコントロールポリシールールを作成または編集し、[Dynamic Attributes]をクリックし、[Available Attributes]をクリックして[Dynamic Objects]を選択します。
注: Office 365動的オブジェクトが一覧に表示されない場合、統合に問題がある可能性があります。トラブルシューティングセクションを確認するか、Cisco TACにお問い合わせください。
AnsibleでSecure Dynamic Attributes Connector(SDCC)のインストールの問題が発生した場合は、「~/.ansible/collections/ansible_collection/cisco/csdac/logs/」ディレクトリにある「csdac.log」を収集します。
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
インストールの失敗ログはこのファイルにあります。「cat」または「less」のLinuxコマンドを使用してファイルを開くか、障害ログを調べるか、Cisco TACに連絡してこのファイルを提供してください。
「アクセス許可が拒否されました」が原因で、Ansibleのインストールが失敗することがあります。csdac.logファイルを調べて、「permission denied」ログを探します。
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."
同様のログが見つかった場合は、Cisco Bug ID CSCwh58312を検討するか、Cisco TACにお問い合わせください。
「docker ps -a」がコンテナのダウンまたは問題発生時のコンテナ再起動を示す場合、コンテナは「docker restart container-id」コマンドで再起動できます。
例:コンテナーID '88826cf0742f'でOffice 365を再起動しています。
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
CSDACとの接続を確認し、オブジェクトがセキュアファイアウォール管理センターで作成されているかどうかを検証します。
> 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":[]
}
Cisco Secure Dynamic Attributes(CSDAC)に関連するその他のドキュメントについては、次のサイトを参照してください。
Ciscoダイナミック属性コネクタについて
Cisco Secureダイナミック属性コネクタのインストールとアップグレード
Ciscoダイナミック属性コネクタの設定
アクセスコントロールポリシーでのダイナミックオブジェクトの使用
ダイナミック属性コネクタのトラブルシューティング
CSDAC 2.2のインストールがUbuntu 20.04で「Permission denied with Docker daemon socket」に失敗しました。
Cisco Bug ID CSCwh58312。
改定 | 発行日 | コメント |
---|---|---|
1.0 |
04-Oct-2023 |
初版 |