View on GitHub

Palo Alto powershell

Download this project as a .zip file Download this project as a tar.gz file

Welcome to PowerAlto Wiki.

PowerAlto is a PowerShell module that provides tools for discovering, configuring, and troubleshooting Palo Alto Next-Gen Firewalls through their XML API.

So far, this module adds 18 new cmdlets as follows:

  • Find-PaAddressObject: Search Address Objects and Address Groups for a given IP, FQDN, or string.
  • Find-PaObjectUsage: Find unused Address Objects and Address Groups.
  • Get-PaConnectionString: Connects to a Palo Alto firewall and returns an connection string with API key.
  • Get-PaLogJob: Formulate and send an api query to a PA firewall.
  • Get-PaNatRule: Returns NAT Ruleset from Palo Alto firewall.
  • Get-PaObjectUsage: Returns Security, Nat, Address and Address Group usge of specific search string.
  • Get-PaSecurityRule: Returns Security Ruleset from Palo Alto firewall.
  • Get-PaSystemInfo: Returns general information about the desired PA.
  • Invoke-PaCommit: Commits candidate config to Palo Alto firewall
  • New-PaLogJob: Formulate and send an api query to a PA firewall.
  • Restart-PaSystem: Restarts PA and watches initial autocommit job for completion.
  • Restore-PaPreviousVersion: Reverts to previous configuration version
  • Send-PaApiQuery: Formulate and send an api query to a PA firewall.
  • Set-PaSecurityRule: Edits settings on a Palo Alto Security Rule
  • Set-PaUpdateSchedule: Defines schedule for content updates.
  • Update-PaContent: Updates Pa Content files.
  • Update-PaSoftware: Updates PanOS System Software to desired level.
  • Watch-PaJob: Watch a given Jobs progress.
    • To install poweralto, download poweralto.psm1.

      Place it inside it's own directory (named poweralto) inside your Powershell Module path. You can get your PSModule path from $env:PSModulePath. For example:

      • Current User scope:
        C:\Users\user\Documents\WindowsPowerShell\Modules\poweralto\poweralto.psm1
      • Local Machine scope:
        C:\Windows\system32\WindowsPowerShell\v1.0\Modules\poweralto\poweralto.psm1

      After the file is in place, you can then import it into your PowerShell session:

      Import-Module poweralto