Catalyst9800-CLを別環境へ移設した際、既存Configを投入するだけではHTTPS(GUI)/APのJoinができなかったので下記メモを残す。 時間があるときに再度清書する。
Cat9800-CL 保守手順:HTTPS(GUI)/ AP Join(CAPWAP-DTLS)復旧(SSC欠落時)
1. 目的
RMA/移設/構成踏襲後に発生しやすい、以下の障害を CLIのみで復旧する。
- GUI(HTTPS) に接続できない
- APがJoinできない(DTLSハンドシェイク失敗)
本手順は特に、9800-CL で見落としがちな vWLC-SSC(SSC)未生成/未割当に起因する障害を想定する。
2. 想定する障害症状
2.1 GUI(HTTPS)が死ぬ症状例
ブラウザでGUIへ接続不可
クライアントで
curl https://<WLC-IP>を実行すると、例:TLS connect error: ... tlsv1 alert internal error
2.2 AP Join が死ぬ症状例(WLC側)
show wireless stats ap join summaryで以下のような表示:Status: Not JoinedLast Failure Phase: Dtls-HandshakeLast Disconnect Reason: DTLS cert-chain not available
3. 原因(今回の事象の本質)
RMA/構成踏襲で 設定は残るが、証明書・秘密鍵の実体が新筐体(新VM)に存在しないことがある。
特に 9800-CL の AP Join(CAPWAP-DTLS)では、WMI(Wireless Management Interface)に紐づく DTLS用の証明書チェーン(SSC/MIC) が必要で、これが欠落すると AP が Join できない。
show wireless management trustpointがCertificate Info : Not AvailablePrivate key Info : Not Availableの場合、DTLSハンドシェイクが成立しない。
4. 事前条件・注意事項
4.1 必須
- GUIが死んでいる前提なので、コンソール / SSH 等でWLC CLIに入れること。
- 作業中に AP Joinが復旧/不安定化するため、影響時間帯を確保すること。
4.2 9800-CLでの重要ポイント
- WMI(wireless management interface)が正しく設定され、up/up であること これが崩れていると SSC の生成・割当が意図通りにならないことがある。
4.3 パスワード注意(SSC生成コマンド)
wireless config vwlc-ssc ... password 0 <pw>の<pw>は 短すぎないこと(目安8文字以上) 短いと「Configuring…」のまま成功状態に遷移しない/割当されないケースがある。- 記号先頭など、環境依存で失敗しやすい文字列は避ける。
5. 現状調査(復旧前の確認)
5.1 HTTPSサーバが参照している trustpoint を確認
show ip http server status見るべき項目:
HTTP secure server status: EnabledHTTP secure server trustpoint: <TP名>
5.2 trustpoint 実体(証明書/鍵)があるか
show crypto pki trustpoints
show crypto pki certificates <TP名>
show crypto key mypubkey rsa | begin Key name: <TP名>5.3 DTLS(AP Join)側:WMI trustpoint の実体有無
show wireless management trustpointNot Availableの場合は DTLS用チェーン/鍵が欠落。
5.4 AP Join 失敗理由の確定
show wireless stats ap join summaryDTLS cert-chain not availableが出ていれば WLC側のDTLS用証明書不足が濃厚。
6. 復旧手順(推奨:SSC生成→WMIへ割当→HTTPS/DTLS復旧)
Step 1) WMI(wireless management interface)が設定されているか確認
show running-config | include ^wireless management interface
show ip interface brief期待:
wireless management interface vlan <番号>が存在- 対象
Vlan<番号>がup/upで IP が付与されている
もし未設定/誤設定なら、環境の設計に合わせてWMIを正す(例):
conf t
wireless management interface vlan <WMIのVLAN番号>
endStep 2) vWLC-SSC(SSC)を生成する(9800-CLの盲点ポイント)
EXECモードで実行する(conf t の中ではない)。
wireless config vwlc-ssc key-size 2048 signature-algo sha256 password 0 <8文字以上のパスワード>実行後、確認:
show crypto pki trustpoints
show wireless management trustpoint期待する状態:
show wireless management trustpointに Trustpoint Name が表示されるCertificate Info : AvailablePrivate key Info : Available
補足:SSC生成により、新しい trustpoint(例:
ewlc-default-tp等)が作成され、WMIに割り当たる実装が一般的。 もし生成された trustpoint 名が分かったら、次の Step 3 で明示的に割り当てる。
Step 3) WMI trustpoint が空のままなら、手動割当を実施
show wireless management trustpoint の Trustpoint Name が空なら、生成された trustpoint を確認して手で割り当てる。
- 生成された trustpoint 名を確認
show crypto pki trustpoints- WMIへ割当(trustpoint名は上で見つけたものに置換)
conf t
wireless management trustpoint <SSCで生成されたtrustpoint名>
end- 確認
show wireless management trustpointStep 4) HTTPS(GUI)側も同一 trustpoint に揃える(“使い分けしない”方針の場合)
今回方針:HTTPS と DTLS で trustpoint を使い分けない → DTLSで成立している trustpoint を HTTPS にも割り当てるのが確実。
conf t
ip http secure-trustpoint <上でDTLSに割り当たったtrustpoint名>
end
write memory必要に応じて HTTPS サーバをバウンス(反映用):
conf t
no ip http secure-server
ip http secure-server
endStep 5) AP Join を再試行させる
WLC側でAPの状態を見つつ、APを再起動(または capwap restart)する。
WLC側確認:
show wireless stats ap join summary必要ならAP再起動(例):
ap name <AP名> reset7. 復旧後の確認(合格基準)
7.1 DTLS/AP Join
show wireless management trustpoint
show wireless stats ap join summary合格基準:
show wireless management trustpointが- Trustpoint Name が空ではない
- Certificate/Private key が Available
show wireless stats ap join summaryがStatus: JoinedになるDTLS cert-chain not availableが消える
7.2 HTTPS(GUI)
show ip http server status | include secure|trustpointクライアントで(自己署名でも動作確認できるように -k 推奨):
curl -vk https://<WLC-IP>/合格基準:
- TLSハンドシェイクが成立し、HTTP応答が返る
8. 失敗時の典型パターンと対処
8.1 wireless config vwlc-ssc 実行後も Trustpoint Name が空のまま
疑う順:
- WMI(wireless management interface)が未設定/Down
- パスワードが短すぎ/文字列要因で生成が失敗
- 生成されているが未割当 → Step 3 の手動割当
確認コマンド:
show running-config | include ^wireless management interface
show ip interface brief
show crypto pki trustpoints
show wireless management trustpoint9. 作業ログ(テンプレ)
手順書に残すため、作業後に以下を添付する。
show ip http server status
show wireless management trustpoint
show wireless stats ap join summary
show crypto pki trustpoints実際のログ
TSWC00#
TSWC00#show wireless management trustpoint
Trustpoint Name : TSWC00_WLC_TP
Certificate Info : Available
Certificate Type : SSC
Certificate Hash : 107a6858350fca0fbdac088c1cb72b2bc1bf1a81
Private key Info : Available
FIPS suitability : Not Applicable
TSWC00#
TSWC00#
TSWC00#show ip http server status
HTTP server status: Enabled
HTTP server port: 80
HTTP server active supplementary listener ports: 21111
HTTP server authentication method: local
HTTP server auth-retry 0 time-window 0
HTTP server digest algorithm: md5
HTTP server access class: 0
HTTP server IPv4 access class: None
HTTP server IPv6 access class: None
HTTP server base path:
HTTP File Upload status: Disabled
HTTP server upload path:
HTTP server help root:
Maximum number of concurrent server connections allowed: 300
Maximum number of secondary server connections allowed: 50
Server idle time-out: 180 seconds
Server life time-out: 180 seconds
Server session idle time-out: 1200 seconds
Maximum number of requests allowed on a connection: 25
Server linger time : 60 seconds
HTTP server active session modules: ALL
HTTP secure server capability: Present
HTTP secure server status: Enabled
HTTP secure server port: 443
HTTP secure server ciphersuite: rsa-aes-cbc-sha2 rsa-aes-gcm-sha2
dhe-aes-cbc-sha2 dhe-aes-gcm-sha2 ecdhe-rsa-aes-cbc-sha2
ecdhe-rsa-aes-gcm-sha2 ecdhe-ecdsa-aes-gcm-sha2 tls13-aes128-gcm-sha256
tls13-aes256-gcm-sha384 tls13-chacha20-poly1305-sha256
HTTP secure server TLS version: TLSv1.3 TLSv1.2
HTTP secure server client authentication: Disabled
HTTP secure server PIV authentication: Disabled
HTTP secure server PIV authorization only: Disabled
HTTP secure server trustpoint: TSWC00_WLC_TP
HTTP secure server peer validation trustpoint:
HTTP secure server ECDHE curve: secp256r1
HTTP secure server active session modules: ALL
TSWC00#
TSWC00#
TSWC00#
TSWC00#show wireless management trustpoint
Trustpoint Name : TSWC00_WLC_TP
Certificate Info : Available
Certificate Type : SSC
Certificate Hash : 107a6858350fca0fbdac088c1cb72b2bc1bf1a81
Private key Info : Available
FIPS suitability : Not Applicable
TSWC00#
TSWC00#
TSWC00#
TSWC00#show wireless stats ap join summary
Number of APs: 2
Base MAC Ethernet MAC AP Name IP Address Status Last Failure Phase Last Disconnect Reason
----------------------------------------------------------------------------------------------------------------------------------------------------------------------
00c8.8b1b.82a0 00f2.8b02.426c HANPEN00 172.16.2.100 Joined Image-Download Image Download Success
2c4f.52e5.4d60 2c4f.5260.4150 HANPEN01 172.16.2.200 Joined Dtls-Handshake Heart beat timer expiry
TSWC00#
TSWC00#
TSWC00#
TSWC00#show crypto pki trustpoints
Trustpoint SLA-TrustPoint:
Subject Name:
cn=Cisco Licensing Root CA
o=Cisco
Serial Number (hex): 01
Certificate configured.
Trustpoint WLC_CA:
Subject Name:
o=Cisco Virtual Wireless LAN Controller
cn=CA-vWLC_TSWC00
Serial Number (hex): 01
Certificate configured.
Trustpoint TSWC00_WLC_TP:
Subject Name:
o=Cisco Virtual Wireless LAN Controller
cn=CA-vWLC_TSWC00
Serial Number (hex): 01
Certificate configured.
SCEP URL: http://172.16.10.20:80/cgi-bin
TSWC00#10. 今回の教訓(保守観点の要点)
- RMA/移設で Configだけ踏襲するとPKI資産(証明書/鍵)が欠落することがある。
- 9800-CL の AP Join 復旧では SSC(vWLC-SSC)生成/割当が盲点になりやすい。
- Join失敗理由に
DTLS cert-chain not availableが出たら、WMI trustpoint 実体不足を最優先で疑う。