- CheckMates
- :
- Products
- :
- Developers
- :
- API / CLI Discussion
- :
- Adding simple GW with several network interfaces u...
- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Mute
- Printer Friendly Page
Are you a member of CheckMates?
×- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Adding simple GW with several network interfaces using Web Services API
Hi, API experts!
I'm trying to automatize adding simple GWs to my MGMT using API.
With mgmt cli it works perfectly:
mgmt add simple-gateway name "GW-R80.10-API" color "black" ipv4-address "192.168.48.199" version "R80.10" one-time-password "sic123" firewall true application-control true url-filtering true ips true anti-bot true anti-virus true interfaces.1.name "eth0" interfaces.1.ipv4-address "192.168.48.199" interfaces.1.ipv4-network-mask "255.255.255.0" interfaces.1.anti-spoofing true interfaces.1.topology "external" interfaces.2.name "eth1" interfaces.2.ipv4-address "192.168.10.199" interfaces.2.ipv4-network-mask "255.255.255.0" interfaces.2.anti-spoofing true interfaces.2.topology "internal" interfaces.2.topology-settings.ip-address-behind-this-interface "network defined by the interface ip and net mask"
But mgmt cli is not the thing I need, so Im trying to use Python script with Web Services API:
>>> add_gw_data = {
... "name": "GW-R80.10-API",
... "color": "black",
... "ipv4-address": "192.168.48.199",
... "version": "R80.10",
... "one-time-password": "sic123",
... "firewall": "true",
... "application-control": "true",
... "url-filtering": "true",
... "ips": "true",
... "anti-bot": "true",
... "anti-virus": "true",
... "interfaces.1.name": "eth0",
... "interfaces.1.ipv4-address": "192.168.48.199",
... "interfaces.1.ipv4-network-mask": "255.255.255.0",
... "interfaces.1.anti-spoofing": "true",
... "interfaces.1.topology": "external",
... "interfaces.2.name": "eth1",
... "interfaces.2.ipv4-address": "192.168.10.199",
... "interfaces.2.ipv4-network-mask": "255.255.255.0",
... "interfaces.2.anti-spoofing": "true",
... "interfaces.2.topology": "internal",
... "interfaces.2.topology-settings.ip-address-behind-this-interface": "network defined by the interface ip and net mask"
... }
>>> add_gw = api_call(mgmt_ip_addr, "add-simple-gateway", add_gw_data, sid)
>>> print(json.dumps(add_gw))
{"message": "Unrecognized parameter [interfaces.2.name]", "code": "generic_err_invalid_parameter_name"}
How can I properly define all network interfaces?
Interfaces is List parameter, what is the proper syntax to define all the interfaces in this structure?
Thanks.
- Labels:
-
Object Management
Accepted Solutions
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Added a simple Python script, that
- creates internal network,
- creates single GW object with sic,
- adds MGMT rule to default Access policy,
- publish and install Access policy to GW.
If you need a Threat Prevention policy installed, it should be installed after Access Policy, so you need to make some IF structure, that monitors successful installation of Access Policy before attempting a TP policy installation.
I will upgrade script someday.
Cheers,
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
The answer is:
"interfaces": [{
"name": "eth0",
"ipv4-address": "192.168.48.199",
"ipv4-network-mask": "255.255.255.0",
"anti-spoofing": "true",
"topology": "external"
},
{
"name": "eth1",
"ipv4-address": "192.168.10.199",
"ipv4-network-mask": "255.255.255.0",
"anti-spoofing": "true",
"topology": "internal",
"topology-settings": {
"ip-address-behind-this-interface": "network defined by the interface ip and net mask"
}
}
]
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi Sergey,
You should always go to the API docs and refs, you have some examples there how to do things.
There are examples for mgmt_cli tool and for web services as well, just select the required menu item on top.
For your case, go to this link and browse the second example.
Hope this helps.
Robert.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Added a simple Python script, that
- creates internal network,
- creates single GW object with sic,
- adds MGMT rule to default Access policy,
- publish and install Access policy to GW.
If you need a Threat Prevention policy installed, it should be installed after Access Policy, so you need to make some IF structure, that monitors successful installation of Access Policy before attempting a TP policy installation.
I will upgrade script someday.
Cheers,
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Good Work!
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
nice
![](/skins/images/AB448BCC84439713A9D8F01A2EF46C82/responsive_peak/images/icon_anonymous_message.png)