概要
本ドキュメントでは、Catalyst Center GUI の IP Access Control 機能でアクセス制限を利用されている環境で、IP Access List に間違ったものを設定して GUI ログインできなくなったなどの場合にこの IP Access Control を無効化("Allow all IP address to connect") へ変更する手順を紹介しております
※ 以下、ご利用のバージョンや環境によってメッセージなど表示内容が変わる場合もございます
※ 本ドキュメントは、Catalyst Center バージョン 2.3.7.6 を元に作成しております
本ドキュメントは、以下の GUI の設定 (Settings > Trust & Privacy > IP Access Control) に関連します


手順
-
Catalyst Center に SSH 接続
-
Restrict shell から bash に切り替える
※ 以下のドキュメントを参照ください。Cisco TAC にサービスリクエストをオープンが必要となる場合がございます。
DNAC: magshell (Restricted Shell) の概要と bash 使用手順
出力例:
[Friday Jan 17 03:15:46 UTC] maglev@169.254.6.66 (maglev-master-169-254-6-66)
$ _shell
A challenge is already in progress with state CT_STATE_AUTHENTICATED
WFEN1QAAAQUBAAQAAAABAgAEAAAAAAMACAAAAAAAAAAABAAQhAXJrmfQjTRRpvnodpXqhwUABAAAJ2AGAARETkFDBwAMTUFHU0hFTExfQ1QyCAANRE4zLUhXLUFQTC1MCgkAJGIzODdkN2NhLTcwOWEtYmQwMS0zMTBhLWVkYTY2ODdiY2RlNw==
Please provide the consent token via [_shell -v] command for bash shell-access
[Friday Jan 17 03:15:48 UTC] maglev@169.254.6.66 (maglev-master-169-254-6-66)
$ _shell -v KW4h2QAAAQUBAAQAAAABAgAEAAAAAAMBYkxJVU0xK2VqNWI5S0xURkdPWjZqRHRBQkY1YVlhZGdrQVdldFBLTkxBZ0pJVEdnWEZyN2pQWFQvUDQrV3pMQisNCkpxczFBcGkvU1NZNW5ENy9aU2RJSDYvQmQyNWNuNW5PTXZnK0oybDVBTmFpdHlSTk9aWkNJTEJmbTQ3MUg4TTMNCnRLdlpObzFVMXYxV1hlU3RkcWViS3VjV2pqb2dYUDZPb1M3SStUYVZIcmJ6c3RFMDh3ZFFydzNhUGw5MlRRNFcNCmpOT2NzZnYrdVJRNmJ3T25JZVlld0xXN1RVbkVTNTY4THluYVlFZHNVWk1FblprRWdQVDlmNGEwbjlVUk9URDMNCmZwTEFTa1dRUGs3U2NKTDNXQTZ0a04yY2NKS0ZEd3QrT0pOZVBZNE1lOEJLYVFQNkFOK3NKOCt2djFJTEMzUWYNCkZDRFg3UDQ4ZWtSeUtFSFNuRmlsYXc9PQ==
Warning! Activity within this shell can jeopardize the functioning of the system!
maglev@maglev-master-169-254-6-66:~$
-
maglevserver にログイン
magctl service attach maglevserver
出力例:
maglev@maglev-master-169-254-6-66:~$ magctl service attach maglevserver
Attaching to 'maglev-system/maglevserver-6465c967c5-6kswl'
kubectl exec [POD] [COMMAND] is DEPRECATED and will be removed in a future version. Use kubectl kubectl exec [POD] -- [COMMAND] instead.
root@maglevserver-6465c967c5-6kswl:/#
-
アクセストークンの取得
<ユーザ名>、<パスワード>、<DNAC_IPアドレス> : GUI にログインする際のログイン情報、IP アドレス
curl -k -u <ユーザー名>:<パスワード> -H "Content-Type: application/json" -X POST https://<DNAC_IPアドレス>/api/system/v1/auth/token
出力例:
root@maglevserver-6465c967c5-6kswl:/# curl -k -u admin:Maglev123! -H "Content-Type: application/json" -X POST https://10.70.70.208/api/system/vi/auth/token
Not Foundroot@maglevserver-6465c967c5-6kswl:/# curl -k -u admin:Maglev123! -H "Content-Type: application/json" -X POST https://10.70.70.208/api/system/v1/auth/token
{"Token":"eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJzdWIiOiI2MmE1ODhlZjBiYTRiYjM1NjVkOTdjNjEiLCJhdXRoU291cmNlIjoiaW50ZXJuYWwiLCJ0ZW5hbnROYW1lIjoiVE5UMCIsInJvbGVzIjpbIjYyYTU4OGVlMGJhNGJiMzU2NWQ5N2M2MCJdLCJ0ZW5hbnRJZCI6IjYyYTU4OGVkMGJhNGJiMzU2NWQ5N2M1ZSIsImV4cCI6MTczNzA4NzQ4OCwiaWF0IjoxNzM3MDgzODg4LCJqdGkiOiJjNjVkNWE5MC1mMmY0LTQ2MjctYTc2Zi1iOTQxNjMzMmU4YjUiLCJ1c2VybmFtZSI6ImFkbWluIn0.ZzFWjWa4VIOGJ_Mi8TF5Ob8bCahiZYE1G8P8Ms5AprASO98vI8ua8WUYYopu39sPvz2yvHPQ-LzwbvBsaC-rNHOP6tJrWBH4tFUTBwTVRPiPdFOnwjuhwPYajolQm9Hiov7I34f5RzoMkg7SGeMjajFC6WN9po82RFOxHJlJ7u3MtdvJAezSnVb7Ux-Dtn9GujHWIIsONGjHCpjRyr-yYtDrzBIxEw95d3J0fEahDEpz4JR1jBGgLXkNGs2ejgYvhQxjcgffWh1OwypUQj3QclxEBSgvorxWkaRAVT33W6izzse_Tc5-FbCO2AOQDPHzf_cd4QqptCTgZx_9y_giIg"}root@maglevserver-6465c967c5-6kswl:/#
root@maglevserver-6465c967c5-6kswl:/#
-
手順 3. で取得したトークンを使って、 IP Access Control を無効
curl --header "X-Auth-Token: <手順 3 で取得したトークン>" -H "content-type: application/json" -d '{"enabled": false}' "localhost:8011/api/system/v1/maglev/acl/status"
出力例:
root@maglevserver-6465c967c5-6kswl:/# curl --header "X-Auth-Token: eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJzdWIiOiI2MmE1ODhlZjBiYTRiYjM1NjVkOTdjNjEiLCJhdXRoU291cmNlIjoiaW50ZXJuYWwiLCJ0ZW5hbnROYW1lIjoiVE5UMCIsInJvbGVzIjpbIjYyYTU4OGVlMGJhNGJiMzU2NWQ5N2M2MCJdLCJ0ZW5hbnRJZCI6IjYyYTU4OGVkMGJhNGJiMzU2NWQ5N2M1ZSIsImV4cCI6MTczNzA4NzQ4OCwiaWF0IjoxNzM3MDgzODg4LCJqdGkiOiJjNjVkNWE5MC1mMmY0LTQ2MjctYTc2Zi1iOTQxNjMzMmU4YjUiLCJ1c2VybmFtZSI6ImFkbWluIn0.ZzFWjWa4VIOGJ_Mi8TF5Ob8bCahiZYE1G8P8Ms5AprASO98vI8ua8WUYYopu39sPvz2yvHPQ-LzwbvBsaC-rNHOP6tJrWBH4tFUTBwTVRPiPdFOnwjuhwPYajolQm9Hiov7I34f5RzoMkg7SGeMjajFC6WN9po82RFOxHJlJ7u3MtdvJAezSnVb7Ux-Dtn9GujHWIIsONGjHCpjRyr-yYtDrzBIxEw95d3J0fEahDEpz4JR1jBGgLXkNGs2ejgYvhQxjcgffWh1OwypUQj3QclxEBSgvorxWkaRAVT33W6izzse_Tc5-FbCO2AOQDPHzf_cd4QqptCTgZx_9y_giIg" -H "content-type: application/json" -d '{"enabled": false}' "localhost:8011/api/system/v1/maglev/acl/status"
{"response": {"enabled": false}, "version": "1.5.1"}root@maglevserver-6465c967c5-6kswl:/#
root@maglevserver-6465c967c5-6kswl:/# exit
exit
maglev@maglev-master-169-254-6-66:~$
もし、既に、"Allow all IP address to connect" が選択されている場合や Access List の設定がない場合
出力例:
root@maglevserver-6465c967c5-6kswl:/# curl --header "X-Auth-Token: eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJzdWIiOiI2MmE1ODhlZjBiYTRiYjM1NjVkOTdjNjEiLCJhdXRoU291cmNlIjoiaW50ZXJuYWwiLCJ0ZW5hbnROYW1lIjoiVE5UMCIsInJvbGVzIjpbIjYyYTU4OGVlMGJhNGJiMzU2NWQ5N2M2MCJdLCJ0ZW5hbnRJZCI6IjYyYTU4OGVkMGJhNGJiMzU2NWQ5N2M1ZSIsImV4cCI6MTczNzA4NzQ4OCwiaWF0IjoxNzM3MDgzODg4LCJqdGkiOiJjNjVkNWE5MC1mMmY0LTQ2MjctYTc2Zi1iOTQxNjMzMmU4YjUiLCJ1c2VybmFtZSI6ImFkbWluIn0.ZzFWjWa4VIOGJ_Mi8TF5Ob8bCahiZYE1G8P8Ms5AprASO98vI8ua8WUYYopu39sPvz2yvHPQ-LzwbvBsaC-rNHOP6tJrWBH4tFUTBwTVRPiPdFOnwjuhwPYajolQm9Hiov7I34f5RzoMkg7SGeMjajFC6WN9po82RFOxHJlJ7u3MtdvJAezSnVb7Ux-Dtn9GujHWIIsONGjHCpjRyr-yYtDrzBIxEw95d3J0fEahDEpz4JR1jBGgLXkNGs2ejgYvhQxjcgffWh1OwypUQj3QclxEBSgvorxWkaRAVT33W6izzse_Tc5-FbCO2AOQDPHzf_cd4QqptCTgZx_9y_giIg" -H "content-type: application/json" -d '{"enabled": false}' "localhost:8011/api/system/v1/maglev/acl/status"
{"response": {"error": "no acl config is set, status cannot be changed", "errorCode": "ERROR"}, "version": "1.5.1"}root@maglevserver-6465c967c5-6kswl:/#
なお、ログ取得の際に GUI の credential 情報を必要とするコマンドにおいて、GUI はログイン可能で、IP Access Control が設定されている場合に実行できない事例(不具合ではございません)もございますので、参考に頂ければと思います
例:
[Thursday Jan 16 06:52:17 UTC] maglev@169.254.6.66 (maglev-master-169-254-6-66)
$ maglev package status
[administration] username for 'kong-frontend.maglev-system.svc.cluster.local': admin
[administration] password for 'admin':
ERROR: Unable to login