Comprehensive Aruba Instant AP (IAP) configuration management with automatic baseline capture, rollback support, and health monitoring.
| Type | Risk | Description |
|---|---|---|
| ------ | ------- | ------------- |
ssid_profile | Medium | Create complete SSID profile with WPA2-PSK-AES |
ssid_delete | High | Remove existing SSID profile |
snmp_community | Low | SNMP community configuration |
snmp_host | Low-Medium | SNMP host/trap destination |
syslog_level | Low | Syslog logging levels |
auth_server | Medium | RADIUS/CPPM authentication server |
ap_allowlist | Medium | Add/remove APs from allowlist |
wired_port_profile | Medium | Wired port configuration |
ntp | Low | NTP server configuration |
dns | Low | DNS server configuration |
rf_template | Low | RF template application |
# Clone or download the skill
cd ~/.openclaw/workspace/skills/aruba-iap-publish
# Run install script
./install.sh
# Verify installation
iapctl --help
# Device Discovery
iapctl discover --cluster office-iap --vc 192.168.20.56 --out ./out
# Configuration Snapshot
iapctl snapshot --cluster office-iap --vc 192.168.20.56 --out ./out
# Verify Configuration
iapctl verify --cluster office-iap --vc 192.168.20.56 --level basic --out ./out
# Create SSID configuration JSON
cat > add-ssid.json << 'EOF'
{
"changes": [
{
"type": "ssid_profile",
"profile_name": "MyWiFi",
"essid": "MyNetwork",
"opmode": "wpa2-psk-aes",
"wpa_passphrase": "MySecurePassword123",
"vlan": 1,
"rf_band": "all"
}
]
}
EOF
# Generate diff
iapctl diff --cluster office-iap --vc 192.168.20.56 \
--in add-ssid.json --out ./diff
# Apply changes
iapctl apply --cluster office-iap --vc 192.168.20.56 \
--change-id $(cat diff/commands.json | jq -r '.change_id') \
--in diff/commands.json --out ./apply
# Create delete SSID configuration JSON
cat > delete-ssid.json << 'EOF'
{
"changes": [
{
"type": "ssid_delete",
"profile_name": "OldSSID"
}
]
}
EOF
# Generate diff
iapctl diff --cluster office-iap --vc 192.168.20.56 \
--in delete-ssid.json --out ./diff
# Apply changes
iapctl apply --cluster office-iap --vc 192.168.20.56 \
--change-id $(cat diff/commands.json | jq -r '.change_id') \
--in diff/commands.json --out ./apply
# Monitor all categories
iapctl monitor --cluster office-iap --vc 192.168.20.56 --out ./monitor
# Monitor specific categories
iapctl monitor --cluster office-iap --vc 192.168.20.56 \
-c "system ap clients wlan" --out ./monitor
configure terminal → config commands → commit applyFor Aruba IAP devices, configuration uses the CLI commit model:
configure terminalwlan ssid-profile )exitexitwrite memorycommit applyiapctl automatically assesses risks for each change set:
Always use secret_ref for passwords and keys:
{
"type": "auth_server",
"server_name": "radius-primary",
"ip": "10.10.10.10",
"secret_ref": "secret:radius-primary-key"
}
Never commit plain-text secrets to version control.
Always review risk.json before applying changes:
cat diff/risk.json
Test with --dry-run to verify commands without applying:
iapctl apply --dry-run ...
Always run verify after applying changes:
iapctl verify --level full ...
For large change sets, break them into smaller batches:
Comprehensive testing performed on real hardware:
Test Results: 10/11 tests passed (91%)
no for manual rollbackshow running-config after commit apply can timeoutMIT License - See LICENSE file for details
For issues, questions, or contributions:
共 1 个版本