{ "info": { "author": "Nicholas Willhite,", "author_email": "willnx84@gmail.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 4 - Beta", "Intended Audience :: Developers", "License :: OSI Approved :: Apache Software License", "Natural Language :: English", "Operating System :: POSIX :: Linux", "Programming Language :: Python :: 3.6" ], "description": "#############\nvLab IPAM API\n#############\n\nThis service replaces the existing static gateway used in vLab.\n\nThe goal of this service is to make it easier for users to access their lab\nby removing the need for the jumpbox. This is achieved by exposing a RESTful API\non the gateway that can dynamically port-forward through the NAT firewall that\nruns on the gateway. Additionally, vLab clients can leverage this API to programmically\n*connect* users to a given resource. For example the vLab CLI client can potentially:\n\n1. Expose an interface like ``vlab connect windows --name --protocol=RDP``\n#. Call the main vLab server to *get the IP of the gateway*\n#. Call the API on the gateway to *get the port* that maps to the specific component and protocol\n#. Evoke an application *on the user's machine* that understands the specific protocol, and pre-populate the connection information.\n\nClients can also programmically create the port forwarding rules upon component\ncreation. This would remove the need for users to manually port forwarding\nrules, but clients should not prevent users from inputting their own port forwarding\nrules.\n\nBackground Services\n###################\n\nThe IPAM service has two background processes:\n\nvlab-worker\n***********\n\nPeriodically pings IPs stored in the IPAM database. This allows the service to\nidentify \"bad records\" and relay that information to the user.\n\nvlab-log-sender\n***************\n\nForwards firewall logs to a remote server. The default iptables config will\nlog every time a package is FORWARDed. By forwarding the logs for remote processing,\nadmins of vLab can answer business questions like, *\"Do they use that resource?\"*\n\n\nvlab-ddns-updater\n*****************\n\nRuns on a regular cycle to send Dynamic DNS updates to the vLab DNS service.\n\n\n", "description_content_type": "", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "", "keywords": "", "license": "", "maintainer": "", "maintainer_email": "", "name": "vlab-ipam-api", "package_url": "https://pypi.org/project/vlab-ipam-api/", "platform": "", "project_url": "https://pypi.org/project/vlab-ipam-api/", "project_urls": null, "release_url": "https://pypi.org/project/vlab-ipam-api/2019.7.3/", "requires_dist": [ "flask", "pyjwt", "uwsgi", "vlab-api-common", "psycopg2", "ujson", "cryptography", "setproctitle", "kafka-python", "dnspython" ], "requires_python": "", "summary": "A RESTful API for automated IPAM of a personal lab in vLab", "version": "2019.7.3" }, "last_serial": 5482461, "releases": { "0.0.1": [ { "comment_text": "", "digests": { "md5": "402f197752f1ddc01b8cb3af8065af26", "sha256": "3079f432c93cce84f9650979ba0bb64813803e8aae9a55e5109d42cb622cb427" }, "downloads": -1, "filename": "vlab_ipam_api-0.0.1-py3-none-any.whl", "has_sig": false, "md5_digest": "402f197752f1ddc01b8cb3af8065af26", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 7948, "upload_time": "2018-10-19T16:33:41", "url": "https://files.pythonhosted.org/packages/f3/4f/c09aee8564bf870ffb00f193f07d06e1e97654b92a2e18875ed09e1955df/vlab_ipam_api-0.0.1-py3-none-any.whl" } ], "0.0.10": [ { "comment_text": "", "digests": { "md5": "a81384c29ec01a1fb9ac925b9e83f25e", "sha256": "cfc554804d2f855185c929ea78e6288fc0ff2c7323d23c793904d21e84a72d0c" }, "downloads": -1, "filename": "vlab_ipam_api-0.0.10-py3-none-any.whl", "has_sig": false, "md5_digest": "a81384c29ec01a1fb9ac925b9e83f25e", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 35668, "upload_time": "2018-11-02T15:14:42", "url": "https://files.pythonhosted.org/packages/0c/04/feb1aaf9ebd9eafc62ac7f36fe794322cd971a265cfe8376901932cc5e5a/vlab_ipam_api-0.0.10-py3-none-any.whl" } ], "0.0.2": [ { "comment_text": "", "digests": { "md5": "00e763fcd718cf1e9163bcd1477f625b", "sha256": "d6c6a1c65d8a19e43a7425bb6d38f1877d7bcaca0fd1a5d7d8dc284550325e54" }, "downloads": -1, "filename": "vlab_ipam_api-0.0.2-py3-none-any.whl", "has_sig": false, "md5_digest": "00e763fcd718cf1e9163bcd1477f625b", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 16681, "upload_time": "2018-10-24T14:16:35", "url": "https://files.pythonhosted.org/packages/be/c7/861a87ebd4b6588ada727cd987aeb0e05ad5925a16001178fbdc849db1e7/vlab_ipam_api-0.0.2-py3-none-any.whl" } ], "0.0.3": [ { "comment_text": "", "digests": { "md5": "d5b21336c8a6bf63a597d81068c2745b", "sha256": "d2ac7bdd7a3f0c034a3fd78555a45f36f499f0ce63386e7de56f559d31ebd57d" }, "downloads": -1, "filename": "vlab_ipam_api-0.0.3-py3-none-any.whl", "has_sig": false, "md5_digest": "d5b21336c8a6bf63a597d81068c2745b", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 21761, "upload_time": "2018-10-25T21:49:43", "url": "https://files.pythonhosted.org/packages/e3/b7/75f125e0aa09d56879bb5eda77130ee5670cb846e886eb14c4630cfa0713/vlab_ipam_api-0.0.3-py3-none-any.whl" } ], "0.0.4": [ { "comment_text": "", "digests": { "md5": "ed0c832d531d8dedd15d2b7ecc0c7bf2", "sha256": "430a7cc35566a78eaaa67e956094982ce587b65579068831fc2616fd9780e16a" }, "downloads": -1, "filename": "vlab_ipam_api-0.0.4-py3-none-any.whl", "has_sig": false, "md5_digest": "ed0c832d531d8dedd15d2b7ecc0c7bf2", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 21776, "upload_time": "2018-10-29T17:48:05", "url": "https://files.pythonhosted.org/packages/0d/3f/35fa3d568eb9b52d4e80bd4ad394690ff6501d77c169b5f3dfa2eaa59572/vlab_ipam_api-0.0.4-py3-none-any.whl" } ], "0.0.5": [ { "comment_text": "", "digests": { "md5": "f794f7b42a338f1dd2032b2d206f930e", "sha256": "1438689a9f559c49d54310ae7f9f739d2f07cb81fc8f21635e3ec26058d0884d" }, "downloads": -1, "filename": "vlab_ipam_api-0.0.5-py3-none-any.whl", "has_sig": false, "md5_digest": "f794f7b42a338f1dd2032b2d206f930e", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 21973, "upload_time": "2018-10-29T20:18:51", "url": "https://files.pythonhosted.org/packages/f8/9c/29b0bca73740b0249ed1395d9e3d50a589c16cd3416f9be30c3466740ad9/vlab_ipam_api-0.0.5-py3-none-any.whl" } ], "0.0.6": [ { "comment_text": "", "digests": { "md5": "2bc5841b0d6f03d874d9dd35970736ee", "sha256": "e11a90b9c2decb96354d78dd724c29f1ba52413b65f4ae8675f46e09ea0c690d" }, "downloads": -1, "filename": "vlab_ipam_api-0.0.6-py3-none-any.whl", "has_sig": false, "md5_digest": "2bc5841b0d6f03d874d9dd35970736ee", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 21975, "upload_time": "2018-10-29T21:07:27", "url": "https://files.pythonhosted.org/packages/63/f2/c244d7fda06b9f76a62cd9e6062dd34b08b1bacf26cb4858de4d5f034979/vlab_ipam_api-0.0.6-py3-none-any.whl" } ], "0.0.7": [ { "comment_text": "", "digests": { "md5": "c59f1be64b6abff34ffe4bcd23049211", "sha256": "6ee41c307b6e913efe0c70ca44dabfa8206d50922638ebd20c556dc968cc2aa3" }, "downloads": -1, "filename": "vlab_ipam_api-0.0.7-py3-none-any.whl", "has_sig": false, "md5_digest": "c59f1be64b6abff34ffe4bcd23049211", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 30138, "upload_time": "2018-10-31T21:50:27", "url": "https://files.pythonhosted.org/packages/9a/7d/5182b4291d5f0497e8e6ce0405257a85a3fb20d5039ed78ae7ee1dc7f47d/vlab_ipam_api-0.0.7-py3-none-any.whl" } ], "0.0.9": [ { "comment_text": "", "digests": { "md5": "7388e941daad74a766f33d3f7d808174", "sha256": "8cd90b0b502aedfd8e14e292a574908f8f781dd49abd19a12d3a425991601109" }, "downloads": -1, "filename": "vlab_ipam_api-0.0.9-py3-none-any.whl", "has_sig": false, "md5_digest": "7388e941daad74a766f33d3f7d808174", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 35258, "upload_time": "2018-11-01T22:18:19", "url": "https://files.pythonhosted.org/packages/ba/13/c07318253a53de91acc2903d1fc1e307f9c1f47023b81cb93edad9ffed98/vlab_ipam_api-0.0.9-py3-none-any.whl" } ], "2018.12.13": [ { "comment_text": "", "digests": { "md5": "4e7cc456a3ab825bbbff292319d7e2ae", "sha256": "4ee4b402f94a2b4b0a735fafc7d31ee94ff146aa14f04251762a320a765500c3" }, "downloads": -1, "filename": "vlab_ipam_api-2018.12.13-py3-none-any.whl", "has_sig": false, "md5_digest": "4e7cc456a3ab825bbbff292319d7e2ae", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 36683, "upload_time": "2018-12-13T22:10:03", "url": "https://files.pythonhosted.org/packages/97/f9/87d08d9160f26e441226b47952665d64b7b939e36491dfe9434423054609/vlab_ipam_api-2018.12.13-py3-none-any.whl" } ], "2018.12.20": [ { "comment_text": "", "digests": { "md5": "da4455f819293e52ea1e2cd87a8de068", "sha256": "fa614c467417b07a4329c1e484370473d28d4f508235a47da05a9c2f14592a87" }, "downloads": -1, "filename": "vlab_ipam_api-2018.12.20-py3-none-any.whl", "has_sig": false, "md5_digest": "da4455f819293e52ea1e2cd87a8de068", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 36684, "upload_time": "2018-12-20T23:43:34", "url": "https://files.pythonhosted.org/packages/9e/fe/2c47a8f9c3e77bbeacd4aef90e269b1e1a859475c8e2000f917cbf5b87ad/vlab_ipam_api-2018.12.20-py3-none-any.whl" } ], "2018.12.27": [ { "comment_text": "", "digests": { "md5": "079d2de4fc491c8d18faebf446618d5a", "sha256": "5a24e56fb5890ec129a6575586a63002843f83f370c1825f20db4c278d83966b" }, "downloads": -1, "filename": "vlab_ipam_api-2018.12.27-py3-none-any.whl", "has_sig": false, "md5_digest": "079d2de4fc491c8d18faebf446618d5a", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 36741, "upload_time": "2018-12-27T19:31:07", "url": "https://files.pythonhosted.org/packages/6a/9d/d0f637983e0ea4b2a6d3a3d7dc92cb058790f4b3b59440b51e4cff8b9bb4/vlab_ipam_api-2018.12.27-py3-none-any.whl" } ], "2018.12.3": [ { "comment_text": "", "digests": { "md5": "df95b557c00f348544c5028deb8979b0", "sha256": "17aef2c06ddc6532ea0419a9959a792bafaf5c098fc63491f6c4492dbdc21f63" }, "downloads": -1, "filename": "vlab_ipam_api-2018.12.3-py3-none-any.whl", "has_sig": false, "md5_digest": "df95b557c00f348544c5028deb8979b0", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 35693, "upload_time": "2018-12-03T23:24:23", "url": "https://files.pythonhosted.org/packages/df/97/4b8cbe2142be65abc79607309d865d32f13bb61aa68d84fc0b3630e83dce/vlab_ipam_api-2018.12.3-py3-none-any.whl" } ], "2019.1.18": [ { "comment_text": "", "digests": { "md5": "3670d1f744f1ba7b9ff6d3c3c8f0edbe", "sha256": "3438754a1c37a9ba48d8ec78e0401c631c909bf4e8f9a25552e11ea3a60d5d3a" }, "downloads": -1, "filename": "vlab_ipam_api-2019.1.18-py3-none-any.whl", "has_sig": false, "md5_digest": "3670d1f744f1ba7b9ff6d3c3c8f0edbe", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 38833, "upload_time": "2019-01-18T18:55:52", "url": "https://files.pythonhosted.org/packages/76/2e/6e06a9dbf9ad593c238c294cbbb0e8e3aecb8ebb7bcbd1ab173573e8ef8f/vlab_ipam_api-2019.1.18-py3-none-any.whl" } ], "2019.1.19": [ { "comment_text": "", "digests": { "md5": "58f8434b5d23ccfc6f720a4ab0455459", "sha256": "2ae936e35987b2e10966d653bf2d9e6a5e870fc0d93690eabaec35875b22061c" }, "downloads": -1, "filename": "vlab_ipam_api-2019.1.19-py3-none-any.whl", "has_sig": false, "md5_digest": "58f8434b5d23ccfc6f720a4ab0455459", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 39243, "upload_time": "2019-01-18T22:31:40", "url": "https://files.pythonhosted.org/packages/d4/1a/1328cdeb831ba6ee7622dd64964f7e9d480c65303cd92a6f7143d58f56d2/vlab_ipam_api-2019.1.19-py3-none-any.whl" } ], "2019.1.21": [ { "comment_text": "", "digests": { "md5": "0411d563876ede832fab39a0f00aeaf8", "sha256": "cba83aedbfb401870a296c3d516446e753522e0df5c9bde76d91a5abbc1feaa3" }, "downloads": -1, "filename": "vlab_ipam_api-2019.1.21-py3-none-any.whl", "has_sig": false, "md5_digest": "0411d563876ede832fab39a0f00aeaf8", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 39240, "upload_time": "2019-01-22T19:42:40", "url": "https://files.pythonhosted.org/packages/5f/56/6f76451376f8d1ad1e6ca3ac0b5233d14403d7b9a945968b9cdf31cacedc/vlab_ipam_api-2019.1.21-py3-none-any.whl" } ], "2019.1.22": [ { "comment_text": "", "digests": { "md5": "e99b77e88752a41507fa7ec9c5c993c9", "sha256": "6a806cf299d603350c6d06f54638128db5b7ba3587a87196100cb67567e1dcff" }, "downloads": -1, "filename": "vlab_ipam_api-2019.1.22-py3-none-any.whl", "has_sig": false, "md5_digest": "e99b77e88752a41507fa7ec9c5c993c9", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 39186, "upload_time": "2019-01-22T21:17:51", "url": "https://files.pythonhosted.org/packages/3a/72/bb2b0c7fd8f5b048bf3a1360461e08ee7516b33d6f71fb858d05ff50fd53/vlab_ipam_api-2019.1.22-py3-none-any.whl" } ], "2019.1.23": [ { "comment_text": "", "digests": { "md5": "0e57ca3f0cf5e6abf41164e2098cae3f", "sha256": "89387a074974f26ae76237c39aa0190233ce9dc2d0ea4a9a0b07b4f5455d9d11" }, "downloads": -1, "filename": "vlab_ipam_api-2019.1.23-py3-none-any.whl", "has_sig": false, "md5_digest": "0e57ca3f0cf5e6abf41164e2098cae3f", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 39430, "upload_time": "2019-01-22T23:53:08", "url": "https://files.pythonhosted.org/packages/36/38/fed472e805c0fd031118eb605e5c117466c6140a3fabbf3df23626eee7f3/vlab_ipam_api-2019.1.23-py3-none-any.whl" } ], "2019.1.24": [ { "comment_text": "", "digests": { "md5": "f1863786272eca4d493abf99fc8d5d6c", "sha256": "306b092123c7626b027d3276da0096319efd1d839cf7726430d860bf64c49e00" }, "downloads": -1, "filename": "vlab_ipam_api-2019.1.24-py3-none-any.whl", "has_sig": false, "md5_digest": "f1863786272eca4d493abf99fc8d5d6c", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 39462, "upload_time": "2019-01-23T23:31:48", "url": "https://files.pythonhosted.org/packages/46/ab/5f091e5c380c5c6c4e1a22371c3d31bb6a48147ecf6dcb3cd1e909f5ed22/vlab_ipam_api-2019.1.24-py3-none-any.whl" } ], "2019.2.13": [ { "comment_text": "", "digests": { "md5": "33b1bbde27627d8ab81ab2b8803bf70d", "sha256": "2b309e4c7579c838e9a0687e9404d5a9ce4a823aaecd5dc97eb2283f0b970584" }, "downloads": -1, "filename": "vlab_ipam_api-2019.2.13-py3-none-any.whl", "has_sig": false, "md5_digest": "33b1bbde27627d8ab81ab2b8803bf70d", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 39436, "upload_time": "2019-02-13T17:23:56", "url": "https://files.pythonhosted.org/packages/7d/1d/c42833541b85c0017301374a93b53476796c666cb036941c4cae75e3efed/vlab_ipam_api-2019.2.13-py3-none-any.whl" } ], "2019.2.19": [ { "comment_text": "", "digests": { "md5": "52c12ea475ad9dafbed7f2e5a3871f7c", "sha256": "c56e07eb552efe91b395c6c2537e7b2dc63c38d1697f9a6350125111dda820b7" }, "downloads": -1, "filename": "vlab_ipam_api-2019.2.19-py3-none-any.whl", "has_sig": false, "md5_digest": "52c12ea475ad9dafbed7f2e5a3871f7c", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 39772, "upload_time": "2019-02-19T22:05:34", "url": "https://files.pythonhosted.org/packages/d4/43/03b160f5a2cbd1c3afcb9a6c564dc34b989d833f8e1460a52daadc949430/vlab_ipam_api-2019.2.19-py3-none-any.whl" } ], "2019.2.20": [ { "comment_text": "", "digests": { "md5": "4a168d5e798189a0fb9b348920795e84", "sha256": "f5e1f2b4fb25c4eecc86e77c54ac6f200eb4cc0769d1c74b302b5a5ff0ce79dd" }, "downloads": -1, "filename": "vlab_ipam_api-2019.2.20-py3-none-any.whl", "has_sig": false, "md5_digest": "4a168d5e798189a0fb9b348920795e84", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 39781, "upload_time": "2019-02-20T18:11:37", "url": "https://files.pythonhosted.org/packages/f4/b5/d5076057b43b572947d3aeb6c5c861c2940b7439e59fd503b77b5f6a5add/vlab_ipam_api-2019.2.20-py3-none-any.whl" } ], "2019.2.22": [ { "comment_text": "", "digests": { "md5": "4ffc8e8d2bb0be2f8ebe46eeca2ecd63", "sha256": "091937656231f417e2202ce6cc66bb123d47dd3c3783eeeecd646c0e32bf3ec5" }, "downloads": -1, "filename": "vlab_ipam_api-2019.2.22-py3-none-any.whl", "has_sig": false, "md5_digest": "4ffc8e8d2bb0be2f8ebe46eeca2ecd63", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 39877, "upload_time": "2019-02-22T18:01:28", "url": "https://files.pythonhosted.org/packages/25/77/f886f383751edcaa29daca1a4c57be1e30d70ccaf1534f49fdc41e934aa1/vlab_ipam_api-2019.2.22-py3-none-any.whl" } ], "2019.7.3": [ { "comment_text": "", "digests": { "md5": "0b78508192ee899aeb1b768131fe3ee0", "sha256": "41c262f0cb633de0e6fb2b8a5ce091ffbee87c52ff1a8f3f40c1da3444783966" }, "downloads": -1, "filename": "vlab_ipam_api-2019.7.3-py3-none-any.whl", "has_sig": false, "md5_digest": "0b78508192ee899aeb1b768131fe3ee0", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 40202, "upload_time": "2019-07-03T16:00:04", "url": "https://files.pythonhosted.org/packages/bf/4f/cf2a8af183596f36f13c067ca69c74ee320a73d083fa8f24a36f29dc234c/vlab_ipam_api-2019.7.3-py3-none-any.whl" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "0b78508192ee899aeb1b768131fe3ee0", "sha256": "41c262f0cb633de0e6fb2b8a5ce091ffbee87c52ff1a8f3f40c1da3444783966" }, "downloads": -1, "filename": "vlab_ipam_api-2019.7.3-py3-none-any.whl", "has_sig": false, "md5_digest": "0b78508192ee899aeb1b768131fe3ee0", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 40202, "upload_time": "2019-07-03T16:00:04", "url": "https://files.pythonhosted.org/packages/bf/4f/cf2a8af183596f36f13c067ca69c74ee320a73d083fa8f24a36f29dc234c/vlab_ipam_api-2019.7.3-py3-none-any.whl" } ] }