Management API / 自動化¶
大量建物件、批次改規則、跟 CI/CD 或 Terraform 整合 —— 用滑鼠點 SmartConsole 點到天亮不如寫 API。Check Point 的 Management API 讓你用
mgmt_cli或 REST 自動化幾乎所有管理操作。
先啟用 API¶
SmartConsole → Manage & Settings → Blades → Management API → Advanced Settings,選存取範圍:
Management server only(只允許本機mgmt_cli)All IP addresses that can be used for GUI clients(等同 Trusted Clients)All IP addresses
改完要 Publish,再到 Management 上 api restart 生效。
兩個前提
- 管理員的 Permission Profile 要勾「Management API Login」才能用 API 登入。
- RAM > 4GB 的 Management Server 開機會自動啟動 API。
通訊走 HTTPS TCP 443,端點格式:https://<Mgmt-IP>/web_api/<command>(如 /web_api/login、/web_api/add-host)。
mgmt_cli 標準工作流程¶
關鍵觀念:用 session file 把多個動作累積起來,最後一次 publish(不帶 session 的單行指令會自動 publish)。
# 1) 登入(本機 root 免帳密),把 session 存檔
mgmt_cli -r true -f json login > session.txt
# 2) 用 -s 帶 session 做事(可累積很多筆)
mgmt_cli add host name "web01" ip-address 172.30.30.1 color green -s session.txt
mgmt_cli add access-rule layer "Network" position top \
name "allow-web01" source "web01" destination "Any" \
service "https" action "Accept" -s session.txt
# 3) 一次發布
mgmt_cli -s session.txt publish
# 4) 安裝策略並登出
mgmt_cli -s session.txt install-policy policy-package "Standard" access true
mgmt_cli -s session.txt logout
常用旗標:
| 旗標 | 意義 |
|---|---|
-r true |
本機 root 免帳密登入 |
-u <user> -p <pass> |
帳密登入 |
-s <file> |
讀取 session id(批次累積) |
-f json / -f table |
輸出格式 |
-m <server> |
指定遠端 Management |
-d <domain> |
MDS 指定 Domain |
好用的查詢指令
show changes— 看自某時間點以來的改動where-used object-name "web01"— 查某物件被哪些規則用到(刪物件前必查)- 完整指令物件參考:官方 Management API Reference(login / publish / add-* / install-policy …)。
進階整合¶
- Terraform / Ansible:Check Point 有官方 Terraform Provider 與 Ansible 模組,把整套策略當「程式碼」管理(Infrastructure as Code)。
- R82 VSNext:Virtual Gateway / Virtual Switch 可純用 Gaia REST API 建立、修改、刪除,大規模佈署更快。
小結¶
- 先在 SmartConsole 啟用 Management API +
api restart,管理員要有 API Login 權限。 mgmt_cli用 session file 批次累積 → 一次 publish → install-policy。- 刪物件前用
where-used、查改動用show changes。 - 進一步可接 Terraform / Ansible 做 IaC,R82 VSNext 全 REST API 化。