Name | pan-ztp-patcher JSON |
Version |
0.2.10
JSON |
| download |
home_page | None |
Summary | Update content version on PAN-OS firewalls |
upload_time | 2024-04-20 14:03:57 |
maintainer | None |
docs_url | None |
author | Calvin Remsburg |
requires_python | >=3.8.1 |
license | Apache2.0 |
keywords |
|
VCS |
|
bugtrack_url |
|
requirements |
No requirements were recorded.
|
Travis-CI |
No Travis.
|
coveralls test coverage |
No coveralls.
|
# PAN-OS ZTP Patcher
The PAN-OS ZTP Patcher is a sophisticated Python utility designed to automate content version updates on PAN-OS firewalls during the Zero Touch Provisioning (ZTP) process. Utilizing a Raspberry Pi, this tool helps network administrators ensure their firewalls are always updated with the latest security features without manual intervention.
## Use Case
Deploying PAN-OS firewalls typically requires ensuring they are updated with the latest content versions, including threat signatures and application definitions. The PAN-OS ZTP Patcher automates these updates during the ZTP process, interfacing directly through a Raspberry Pi connected to the firewall's management interface.
### Key Benefits
- **Automated Content Updates**: Streamlines the ZTP process by automating updates, reducing time and effort.
- **Enhanced Security**: Ensures that firewalls receive the latest updates immediately upon deployment.
- **Reduced Human Error**: Minimizes the risks associated with manual updates.
- **Efficient Deployments**: Speeds up the setup process for PAN-OS firewalls with up-to-date configurations.
## Requirements
- Raspberry Pi with the latest OS and Python 3.7 or higher.
- USB to Ethernet adapter connecting the Raspberry Pi to the firewall's management interface.
- Configured network settings on the Raspberry Pi's Ethernet interface to 192.168.1.2/24.
## Installation
Install the PAN-OS ZTP Patcher via pip:
```bash
pip install pan-ztp-patcher
```
## Usage
Run the ZTP Patcher with the following command structure, providing the necessary parameters:
### Parameters
- `--env_file`: Path to the `.env` file containing environment variables (default: `.env`).
- `--pi_hostname`: Hostname or IP address of the Raspberry Pi.
- `--pi_username`: Username for the Raspberry Pi.
- `--pi_password`: Password for the Raspberry Pi.
- `--pan_hostname`: Hostname or IP address of the PAN-OS firewall.
- `--pan_username`: Username for the PAN-OS firewall.
- `--pan_password_new`: New password to be set for the firewall user.
- `--pan_password_old`: Current password for the firewall user.
- `--content_path`: Path on the Raspberry Pi where the content file is located.
- `--content_version`: Name of the content file to be installed.
- `--log_level`: Set the log level for the application; options are "DEBUG", "INFO", "WARNING", "ERROR" (default: "INFO").
### Example Commands
Execute with an .env file in the current working directory:
```bash
ztp_patcher --env_file .env
```
Execute by passing all values as arguments instead:
```bash
ztp_patcher \
--pi_hostname <pi_hostname> \
--pi_username <pi_username> \
--pi_password <pi_password> \
--pan_hostname <pan_hostname> \
--pan_username <pan_username> \
--pan_password_new <new_password> \
--pan_password_old <old_password> \
--content_path <content_path> \
--content_version <content_version> \
--log_level <log_level>
```
### Operational Steps
1. Changes the specified user's password on the PAN-OS firewall.
2. Retrieves the API key using the new credentials.
3. Imports and installs the content update from the Raspberry Pi using SCP.
4. Monitors the status of the content update job until completion.
Ensure proper connectivity and configurations are set before initiating the ZTP Patcher.
## Contributing
Contributions are welcome. Please fork the repository, make your changes, and submit a pull request.
## License
This project is licensed under the Apache License 2.0. See the [LICENSE](LICENSE) file for more details.
Raw data
{
"_id": null,
"home_page": null,
"name": "pan-ztp-patcher",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.8.1",
"maintainer_email": null,
"keywords": null,
"author": "Calvin Remsburg",
"author_email": "cremsburg.dev@gmail.com",
"download_url": "https://files.pythonhosted.org/packages/0f/bc/6143ee4900391079c7e2d0aba9a776322e6f9feee732b6687e5473c0e796/pan_ztp_patcher-0.2.10.tar.gz",
"platform": null,
"description": "# PAN-OS ZTP Patcher\n\nThe PAN-OS ZTP Patcher is a sophisticated Python utility designed to automate content version updates on PAN-OS firewalls during the Zero Touch Provisioning (ZTP) process. Utilizing a Raspberry Pi, this tool helps network administrators ensure their firewalls are always updated with the latest security features without manual intervention.\n\n## Use Case\n\nDeploying PAN-OS firewalls typically requires ensuring they are updated with the latest content versions, including threat signatures and application definitions. The PAN-OS ZTP Patcher automates these updates during the ZTP process, interfacing directly through a Raspberry Pi connected to the firewall's management interface.\n\n### Key Benefits\n\n- **Automated Content Updates**: Streamlines the ZTP process by automating updates, reducing time and effort.\n- **Enhanced Security**: Ensures that firewalls receive the latest updates immediately upon deployment.\n- **Reduced Human Error**: Minimizes the risks associated with manual updates.\n- **Efficient Deployments**: Speeds up the setup process for PAN-OS firewalls with up-to-date configurations.\n\n## Requirements\n\n- Raspberry Pi with the latest OS and Python 3.7 or higher.\n- USB to Ethernet adapter connecting the Raspberry Pi to the firewall's management interface.\n- Configured network settings on the Raspberry Pi's Ethernet interface to 192.168.1.2/24.\n\n## Installation\n\nInstall the PAN-OS ZTP Patcher via pip:\n\n```bash\npip install pan-ztp-patcher\n```\n\n## Usage\n\nRun the ZTP Patcher with the following command structure, providing the necessary parameters:\n\n### Parameters\n\n- `--env_file`: Path to the `.env` file containing environment variables (default: `.env`).\n- `--pi_hostname`: Hostname or IP address of the Raspberry Pi.\n- `--pi_username`: Username for the Raspberry Pi.\n- `--pi_password`: Password for the Raspberry Pi.\n- `--pan_hostname`: Hostname or IP address of the PAN-OS firewall.\n- `--pan_username`: Username for the PAN-OS firewall.\n- `--pan_password_new`: New password to be set for the firewall user.\n- `--pan_password_old`: Current password for the firewall user.\n- `--content_path`: Path on the Raspberry Pi where the content file is located.\n- `--content_version`: Name of the content file to be installed.\n- `--log_level`: Set the log level for the application; options are \"DEBUG\", \"INFO\", \"WARNING\", \"ERROR\" (default: \"INFO\").\n\n### Example Commands\n\nExecute with an .env file in the current working directory:\n\n```bash\nztp_patcher --env_file .env\n```\n\nExecute by passing all values as arguments instead:\n\n```bash\nztp_patcher \\\n--pi_hostname <pi_hostname> \\\n--pi_username <pi_username> \\\n--pi_password <pi_password> \\\n--pan_hostname <pan_hostname> \\\n--pan_username <pan_username> \\\n--pan_password_new <new_password> \\\n--pan_password_old <old_password> \\\n--content_path <content_path> \\\n--content_version <content_version> \\\n--log_level <log_level>\n```\n\n### Operational Steps\n\n1. Changes the specified user's password on the PAN-OS firewall.\n2. Retrieves the API key using the new credentials.\n3. Imports and installs the content update from the Raspberry Pi using SCP.\n4. Monitors the status of the content update job until completion.\n\nEnsure proper connectivity and configurations are set before initiating the ZTP Patcher.\n\n## Contributing\n\nContributions are welcome. Please fork the repository, make your changes, and submit a pull request.\n\n## License\n\nThis project is licensed under the Apache License 2.0. See the [LICENSE](LICENSE) file for more details.\n",
"bugtrack_url": null,
"license": "Apache2.0",
"summary": "Update content version on PAN-OS firewalls",
"version": "0.2.10",
"project_urls": null,
"split_keywords": [],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "04ec719ba95bfd49958464ce6b6f89aa797a3bd88df967c666f8e74d95985672",
"md5": "520bc5fd9038088daf3449b38d61f7f3",
"sha256": "ec5801bb8690f2ffe451761c3ce3a7a915204c4c1eb09078e46a72f4ab23e501"
},
"downloads": -1,
"filename": "pan_ztp_patcher-0.2.10-py3-none-any.whl",
"has_sig": false,
"md5_digest": "520bc5fd9038088daf3449b38d61f7f3",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.8.1",
"size": 15105,
"upload_time": "2024-04-20T14:03:55",
"upload_time_iso_8601": "2024-04-20T14:03:55.352357Z",
"url": "https://files.pythonhosted.org/packages/04/ec/719ba95bfd49958464ce6b6f89aa797a3bd88df967c666f8e74d95985672/pan_ztp_patcher-0.2.10-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "0fbc6143ee4900391079c7e2d0aba9a776322e6f9feee732b6687e5473c0e796",
"md5": "0e3dbd5bff18e3f45d6182f71c942b2a",
"sha256": "22285fa596e89b7ed0c162ca0cfde316759cf270beb1367ca01bf21b651bd16a"
},
"downloads": -1,
"filename": "pan_ztp_patcher-0.2.10.tar.gz",
"has_sig": false,
"md5_digest": "0e3dbd5bff18e3f45d6182f71c942b2a",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.8.1",
"size": 14549,
"upload_time": "2024-04-20T14:03:57",
"upload_time_iso_8601": "2024-04-20T14:03:57.439381Z",
"url": "https://files.pythonhosted.org/packages/0f/bc/6143ee4900391079c7e2d0aba9a776322e6f9feee732b6687e5473c0e796/pan_ztp_patcher-0.2.10.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-04-20 14:03:57",
"github": false,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"lcname": "pan-ztp-patcher"
}