Python codes to automate the creation of the Palo Alto Prisma Accesss remote network integration with Meraki MX devices
Prisma Access provides a flexible way to effectively secure Cisco Meraki SD-WAN deployments. By delivering security from the cloud and closer to the branch networks, Prisma Access lets you optimize networking and security with the same protections that you have at corporate headquarters.
As with other SD-WAN deployments, you secure the Cisco Meraki SD-WAN by onboarding a remote network using IPSec tunnels between the Cisco Meraki SD-WAN and Prisma Access. Using Prisma Access, you can secure SD-WAN devices at a branch, at a data center, or both. You can onboard a remote network using IPSec tunnels between the Cisco Meraki SD-WAN device and Prisma Access automatically using this scripts. See the product requirements below for eligible devices that support this automation.
Integrating a Cisco Meraki MX device with Palo Alto Networks Prisma Access can provide a powerful combination of branch-level connectivity with best in class cloud-delivered security. Here’s why organizations might choose to do this:
A) Enhanced Security
Meraki MX provide a legacy SD-WAN and very basic security (like stateful firewall, content filtering, and IPS). But Prisma Access offers best in class, enterprise-grade, next-gen security capabilities, such as:
So, traffic from Meraki MX can be routed to Prisma Access for deep inspection and policy enforcement.
B) Cloud-Native Security for Remote and Branch Users
Meraki MX handles local connectivity and routing, but by integrating it with Prisma Access:
C) Scalability and Flexibility
Prisma Access is built for scale — it's hosted in the cloud, so:
D) Hybrid and Secure SD-WAN
Meraki MX can still establish SD-WAN tunnels to multiple destinations and include VPN tunnels to no Meraki peers, like Prisma Access. You can configure:
IPSec tunnels from Meraki MX to Prisma Access
Dual/multi-path routing with failover and load balancing
Site-to-site VPN to Prisma Access for secure transport to the cloud
This enables a hybrid WAN architecture that combines performance optimization and security.
E) Centralized Visibility, Management and Automation
Prisma Access GUI offers centralized logging, reporting, and security policy enforcement — complementing the Meraki Dashboard which provides network-level monitoring.
Also, both solutions provide secure API's to automate the deployment and parameters updates.
Palo Alto Prisma Access:
Cisco Meraki
git clone https://github.com/ibrugnolli/panw_pa_rn_meraki_integration
panw_pa_rn_meraki_integration
pa_env.py
X_PAN_KEY
, with the Egress Public IP Addresses API Key.X_PAN_KEY = "_your_api_key__"
meraki_api_key
, with the Meraki Dashboard API key.meraki_api_key = "_your_api_key__"
meraki_org_id
, with the Meraki Dashboard Organization ID.meraki_org_id = "_your_org_id__"
Update the variable network_tag
, with the Meraki network tag.
Example: network_tag = "Branch01"
Update the variable pa_subnets
, with the ipv4 subnets you need to reach in the Prisma Access enviroment.
Example: pa_subnets = ["192.168.255.0/24","10.10.1.0/24","10.11.1.0/24"]
Update the variable pa_service_account_username
and pa_service_account_password
, with the Prisma Access account service information.
pa_tenant_service_group_id
, with the Prisma Access tenant service group ID information.Update informations regarding the IKE parameters, including ike_gw_name
, ike_secret
, remote_branch_fqdn_id
, prisma_access_fqdn_id
Update information regarding the IPSEC parameter ipsec_tunnel_name
.
Update informations regarding the Remote Network parameters, including rn_name
, rn_subnets
, rn_region
, rn_spn_name
python3 pa_create_ikegw.py
python3 pa_create_ipsec_tunnel.py
python3 pa_create_rn.py
python3 pa_push_rn_verify.py
python3 pa_egress_ip.py
python3 meraki_vpn_create_pa.py
Code Exchange Community
Get help, share code, and collaborate with other developers in the Code Exchange community.View Community