|Python version|
smc-python
==========
Python based library to provide the ability to interact with the
Forcepoint NGFW Management Center API. Provides automation capabilities
for any environment that interact with the SMC remotely.
Some of the functionality you get with the SMC Python API:
- Create any engine types; single firewall, cluster firewalls, ips
engines, layer 2 firewalls, master engine and virtual engines.
- Engine operations such as enabling/disabling AV, GTI, default NAT,
Contact Addresses, etc
- Interface configurations
- Routing configurations (OSPF, BGP, Static, Antispoofing)
- Engine level commands such as rebooting, going offline, policy push,
enable/disable SSH, etc.
- Create and modify all network element objects such as Host, Network,
Address Ranges, Domain Names, etc.
- Policy control (create rules, delete rules) for layer 3 firewall
policies
- VPN Policy control and creation
- Management / Log Server settings configuration
- Admin User creation and modification
- System level controls; update system packages, update engines, global
blacklisting, etc
- Tasks
- Search operations for any object type by name, href and by filter
- Collections interface to view all objects by type
Requirements
------------
Python >= 2.7 or >= 3.5
Requests >= 2.12.0
Websocket >= 0.2.1
Security Management Center version >= 6.0
Getting Started
---------------
Installing package
From git:
``pip install git+https://github.com/Forcepoint/fp-NGFW-SMC-python.git``
Or after cloning:
``python setup.py install``
Testing
-------
Included are a variety of test example scripts that leverage the API to
do various tasks in /examples
Basics
------
Before any commands are run, you must obtain a login session. Once
commands are complete, call `session.logout()` to remove the active session.
To obtain the api\_key, log in to the Forcepoint NGFW Management Center and
create an API client with the proper privileges.
.. code:: python
from smc import session
session.login(url='http://1.1.1.1:8082', api_key='xxxxxxxxxxxxx')
....do stuff....
session.logout()
Or log in to a specific Admin Domain and use a specific version of the
API:
.. code:: python
session.login(url='http://1.1.1.1:8082', api_key='xxxxxxxxxxxxx',
domain=mydomain, api_version=6.2)
....do stuff....
session.logout()
Once a valid session is obtained, it will be re-used for each operation
for the duration of the sessions validity, or until the program is
exited.
Extensions
**********
Extensions are available to smc-python that provide additional functionality besides what
is provided in the base library. Extensions are kept separate as they may require additional
package requirements and simplify packaging.
Available extensions:
* `smc-python-monitoring <https://badge.fury.io/py/fp-NGFW-SMC-python-monitoring>`__: Monitoring for SMC connections, blacklists, users, VPNs, alerts, etc. In addition this package provides the ability to 'subscribe' to administrative event modifications.
Extensions are found in the base smc-python repository as namespace packages and each is housed in it's own sub-directory of this base package.
Pull Requests
*************
Pull requests are accepted and welcome but they could not be merged as are.
Indeed, we are using internal repository in order to validate and integrate these changes.
But they could be released later on following our road map.
Documentation
-------------
`View Documentation on Read The Docs <http://fp-ngfw-smc-python.readthedocs.io/en/latest/?badge=latest>`__
.. |Python version| image:: https://img.shields.io/badge/python-2.7%20%7C%203.5%20%7C%203.6-blue
:target: https://pypi.python.org/pypi/fp-NGFW-SMC-python/
Raw data
{
"_id": null,
"home_page": "",
"name": "FP-SMC-ALS",
"maintainer": "",
"docs_url": null,
"requires_python": "",
"maintainer_email": "",
"keywords": "SMC,FP,Forcepoint,NGFW",
"author": "NeuralNine (Florian Dedov)",
"author_email": "<mail@neuralnine.com>",
"download_url": "https://files.pythonhosted.org/packages/86/0e/dcc5af68bb1eff25c6096575412cf0ad456e5b53dcb33726de31bc834c47/FP-SMC-ALS-0.0.1.tar.gz",
"platform": null,
"description": "\r\n|Python version|\r\n\r\nsmc-python\r\n==========\r\n\r\nPython based library to provide the ability to interact with the\r\nForcepoint NGFW Management Center API. Provides automation capabilities\r\nfor any environment that interact with the SMC remotely.\r\n\r\nSome of the functionality you get with the SMC Python API:\r\n\r\n- Create any engine types; single firewall, cluster firewalls, ips\r\n engines, layer 2 firewalls, master engine and virtual engines.\r\n- Engine operations such as enabling/disabling AV, GTI, default NAT,\r\n Contact Addresses, etc\r\n- Interface configurations\r\n- Routing configurations (OSPF, BGP, Static, Antispoofing)\r\n- Engine level commands such as rebooting, going offline, policy push,\r\n enable/disable SSH, etc.\r\n- Create and modify all network element objects such as Host, Network,\r\n Address Ranges, Domain Names, etc.\r\n- Policy control (create rules, delete rules) for layer 3 firewall\r\n policies\r\n- VPN Policy control and creation\r\n- Management / Log Server settings configuration\r\n- Admin User creation and modification\r\n- System level controls; update system packages, update engines, global\r\n blacklisting, etc\r\n- Tasks\r\n- Search operations for any object type by name, href and by filter\r\n- Collections interface to view all objects by type\r\n\r\nRequirements\r\n------------\r\n\r\nPython >= 2.7 or >= 3.5\r\n\r\nRequests >= 2.12.0\r\nWebsocket >= 0.2.1\r\n\r\nSecurity Management Center version >= 6.0\r\n\r\nGetting Started\r\n---------------\r\n\r\nInstalling package\r\n\r\nFrom git:\r\n\r\n``pip install git+https://github.com/Forcepoint/fp-NGFW-SMC-python.git``\r\n\r\nOr after cloning:\r\n\r\n``python setup.py install``\r\n\r\nTesting\r\n-------\r\n\r\nIncluded are a variety of test example scripts that leverage the API to\r\ndo various tasks in /examples\r\n\r\nBasics\r\n------\r\n\r\nBefore any commands are run, you must obtain a login session. Once\r\ncommands are complete, call `session.logout()` to remove the active session.\r\nTo obtain the api\\_key, log in to the Forcepoint NGFW Management Center and\r\ncreate an API client with the proper privileges.\r\n\r\n.. code:: python\r\n\r\n from smc import session\r\n\r\n session.login(url='http://1.1.1.1:8082', api_key='xxxxxxxxxxxxx')\r\n ....do stuff....\r\n session.logout()\r\n\r\nOr log in to a specific Admin Domain and use a specific version of the\r\nAPI:\r\n\r\n.. code:: python\r\n\r\n session.login(url='http://1.1.1.1:8082', api_key='xxxxxxxxxxxxx',\r\n domain=mydomain, api_version=6.2)\r\n ....do stuff....\r\n session.logout()\r\n\r\nOnce a valid session is obtained, it will be re-used for each operation\r\nfor the duration of the sessions validity, or until the program is\r\nexited.\r\n\r\nExtensions\r\n**********\r\n\r\nExtensions are available to smc-python that provide additional functionality besides what\r\nis provided in the base library. Extensions are kept separate as they may require additional\r\npackage requirements and simplify packaging.\r\n\r\nAvailable extensions:\r\n\r\n* `smc-python-monitoring <https://badge.fury.io/py/fp-NGFW-SMC-python-monitoring>`__: Monitoring for SMC connections, blacklists, users, VPNs, alerts, etc. In addition this package provides the ability to 'subscribe' to administrative event modifications.\r\n\r\nExtensions are found in the base smc-python repository as namespace packages and each is housed in it's own sub-directory of this base package.\r\n\r\nPull Requests\r\n*************\r\n\r\nPull requests are accepted and welcome but they could not be merged as are.\r\nIndeed, we are using internal repository in order to validate and integrate these changes.\r\nBut they could be released later on following our road map.\r\n\r\nDocumentation\r\n-------------\r\n\r\n`View Documentation on Read The Docs <http://fp-ngfw-smc-python.readthedocs.io/en/latest/?badge=latest>`__\r\n\r\n.. |Python version| image:: https://img.shields.io/badge/python-2.7%20%7C%203.5%20%7C%203.6-blue\r\n :target: https://pypi.python.org/pypi/fp-NGFW-SMC-python/\r\n",
"bugtrack_url": null,
"license": "",
"summary": "Forcepoint SMC",
"version": "0.0.1",
"split_keywords": [
"smc",
"fp",
"forcepoint",
"ngfw"
],
"urls": [
{
"comment_text": "",
"digests": {
"md5": "827a4c6aea16aa90882225d5db20225d",
"sha256": "f7670cd553e425e687d5b1d70a462ae937e48470316bc549622de21b7813dcfb"
},
"downloads": -1,
"filename": "FP_SMC_ALS-0.0.1-py3-none-any.whl",
"has_sig": false,
"md5_digest": "827a4c6aea16aa90882225d5db20225d",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": null,
"size": 8802,
"upload_time": "2022-12-13T12:31:20",
"upload_time_iso_8601": "2022-12-13T12:31:20.205594Z",
"url": "https://files.pythonhosted.org/packages/d1/0a/7186ae451c19a2f2d553f0e75f74c49f6aea779a516612859aea377e5ef8/FP_SMC_ALS-0.0.1-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"md5": "124684f9f9885cd30ceda933aa4123dc",
"sha256": "fa9025fd9cd0b550a18ce58876eb470331be063c8e186d8c0ad922f59048dd78"
},
"downloads": -1,
"filename": "FP-SMC-ALS-0.0.1.tar.gz",
"has_sig": false,
"md5_digest": "124684f9f9885cd30ceda933aa4123dc",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 10517,
"upload_time": "2022-12-13T12:31:23",
"upload_time_iso_8601": "2022-12-13T12:31:23.319044Z",
"url": "https://files.pythonhosted.org/packages/86/0e/dcc5af68bb1eff25c6096575412cf0ad456e5b53dcb33726de31bc834c47/FP-SMC-ALS-0.0.1.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2022-12-13 12:31:23",
"github": false,
"gitlab": false,
"bitbucket": false,
"lcname": "fp-smc-als"
}