๐ŸŽฏ TL;DR - Key Takeaways

  • Hardware: PA-7080 recommended for 50Gbps with full threat prevention (305 Gbps throughput)
  • Certificate trust is critical: Deploy CA cert via GPO 2+ weeks before enabling decryption
  • Exclude healthcare & financial: HIPAA/PCI compliance + certificate pinning issues
  • TLS 1.3 impacts performance: 15-20% higher CPU vs TLS 1.2 due to PFS requirements
  • Session reuse is key: Enable SSL session cache to reduce handshake overhead by 60%
  • Plan for certificate pinning failures: Expect 5-10% of apps to break, need exclusion process

๐Ÿงฎ Interactive Hardware Sizing Calculator

Input your throughput requirements to get hardware recommendations. This calculator uses Palo Alto's published performance specs for PAN-OS 11.1.

Your Requirements

๐Ÿ“Š Hardware Recommendations

PA-5450

Firewall Throughput: 200 Gbps
Threat Prevention: 189 Gbps
IPsec VPN: 85 Gbps
Estimated Cost: $185K
Calculating...

PA-7080

Firewall Throughput: 590 Gbps
Threat Prevention: 305 Gbps
IPsec VPN: 310 Gbps
Estimated Cost: $425K
Calculating...

๐ŸŽฏ Why 50Gbps is the Enterprise Threshold

50Gbps of SSL-inspected traffic represents the tipping point where hardware selection and architecture design become critical. Below 50Gbps, mid-tier firewalls can handle the load. Above it, you need datacenter-class hardware or risk performance degradation.

Enterprise Scale Datacenter Hardware Required Budget: $500K+

What Does 50Gbps Actually Look Like?

  • 5,000-10,000 concurrent users in a large enterprise
  • 500K-1M concurrent SSL sessions at peak
  • 25K-50K new SSL handshakes per second
  • 80-90% of web traffic is now HTTPS
  • Multiple datacenters with geo-distributed firewalls
โš ๏ธ Performance Impact of SSL Inspection: Decrypting and re-encrypting SSL adds 15-25% latency and consumes 3-5x more CPU than L4 firewall inspection alone. With TLS 1.3's Perfect Forward Secrecy (PFS), CPU requirements increase another 15-20% compared to TLS 1.2 RSA key exchange.

๐Ÿ’ป Hardware Selection Deep Dive

Choosing the right hardware is the foundation of a successful SSL decryption deployment. Undersizing leads to packet loss and user complaints. Oversizing wastes hundreds of thousands of dollars.

PA-5450 vs PA-7080: The Critical Decision

Specification PA-5450 PA-7080 Notes
Firewall Throughput 200 Gbps 590 Gbps L4 stateful inspection without security
Threat Prevention 189 Gbps 305 Gbps IPS enabled (most common use case)
IPsec VPN 85 Gbps 310 Gbps Proxy for SSL decryption capacity
Max Sessions 30M 160M Concurrent connections
New Sessions/Sec 1.5M 4M Critical for bursty traffic
Form Factor 2U rackmount Chassis (21 slots) PA-7080 requires more rack space
Redundancy Fixed config Redundant power/DPCs PA-7080 more resilient to HW failures
Price (List) ~$185K ~$425K With cards populated, before discounts

๐Ÿ”ง Our Decision: PA-7080

+

Why We Chose PA-7080 for 50Gbps

While the PA-5450 technically supports 85 Gbps of IPsec VPN (a rough proxy for SSL decryption capacity), we needed headroom for:

  • Growth: Traffic increases 20-30% year-over-year
  • Traffic spikes: Black Friday, product launches, DDoS events
  • TLS 1.3 adoption: Higher CPU usage than TLS 1.2
  • Full security stack: IPS + AV + URL filtering + WildFire

The Math

PA-5450 Analysis:

  • 189 Gbps threat prevention throughput (baseline)
  • 50 Gbps target ร— 80% SSL = 40 Gbps SSL traffic
  • SSL decryption overhead: ~3x CPU usage
  • Effective capacity: 189 รท 3 โ‰ˆ 63 Gbps SSL-decrypted throughput
  • Verdict: Marginal headroom (26% spare capacity)

PA-7080 Analysis:

  • 305 Gbps threat prevention throughput (baseline)
  • 50 Gbps target ร— 80% SSL = 40 Gbps SSL traffic
  • SSL decryption overhead: ~3x CPU usage
  • Effective capacity: 305 รท 3 โ‰ˆ 102 Gbps SSL-decrypted throughput
  • Verdict: Excellent headroom (100%+ spare capacity)
โœ… Final Decision: We deployed PA-7080 in active/passive HA pair ($850K total hardware cost). 18 months later, we're at 68 Gbps peak throughput and CPU utilization is still under 60%. The PA-5450 would have been maxed out by month 6.

๐Ÿ—๏ธ Alternative Architectures

+

Option 1: Multiple PA-5450s in Parallel

Design: Load balance traffic across 2-3 PA-5450s using upstream router ECMP or external load balancer

Pros: Lower per-unit cost, horizontal scalability, failure domain isolation

Cons: Complex session state sync, asymmetric routing challenges, operational overhead

Cost: 3x PA-5450 HA pairs = $1.1M (vs $850K for PA-7080 pair)

Option 2: SSL Offload Appliance + PA-5450

Design: Use F5 SSL Orchestrator or Citrix ADC to decrypt traffic, forward plaintext to PA-5450

Pros: Specialized SSL acceleration hardware, firewall can focus on security

Cons: Additional hop adds latency (3-5ms), another device to manage, licensing costs

Cost: F5 SSL Orchestrator (~$200K) + PA-5450 ($185K) = $385K per site

Option 3: Prisma Access Cloud

Design: Offload SSL decryption to Palo Alto's cloud service

Pros: No hardware CAPEX, cloud-scale capacity, automatic updates

Cons: Egress bandwidth costs, latency for on-prem apps, data sovereignty concerns

Cost: ~$120-180/user/year for 5K users = $600-900K/year OPEX

๐Ÿ’ก Our Recommendation: For a single datacenter with 50Gbps requirement, PA-7080 HA pair is the most straightforward and cost-effective. For multi-datacenter with 20-30 Gbps per site, PA-5450 HA pairs per site make more sense.

๐Ÿ” Certificate Management Strategy

SSL decryption requires the firewall to act as a man-in-the-middle, re-signing certificates for all HTTPS traffic. If clients don't trust your CA certificate, they see scary browser warnings for EVERY website.

๐Ÿšจ Critical Mistake to Avoid: DO NOT enable SSL decryption before deploying your CA certificate to all clients. We made this mistake in our pilot and had to emergency-roll back after 200+ help desk tickets in the first hour.

Certificate Deployment Timeline

Week 1-2: Generate CA Certificate

Create dedicated CA certificate for SSL decryption (don't reuse existing CA)

# Generate 4096-bit RSA CA certificate on Palo Alto Device > Certificate Management > Certificates > Generate Name: SSL-Decryption-CA Common Name: CompanyName-SSL-Inspection-CA Signed By: Self-Signed Purpose: Certificate Authority Key Length: 4096 bits Validity: 10 years

Week 3-4: Distribute CA Cert via GPO

Deploy to Trusted Root CA store on all Windows/Mac/Linux endpoints

  • Export certificate from Palo Alto (Device > Certificate Management > Export)
  • Windows: GPO โ†’ Computer Config โ†’ Policies โ†’ Windows Settings โ†’ Security Settings โ†’ Public Key Policies โ†’ Trusted Root Certification Authorities
  • macOS: Jamf/Intune profile with CA cert
  • Linux: Copy cert to /usr/local/share/ca-certificates/ and run update-ca-certificates
โš ๏ธ Timing is Critical: Wait 2+ weeks after CA deployment before enabling decryption. Users who were on vacation or had laptops turned off need time to receive the GPO update.

Week 5-6: Pilot SSL Decryption

Enable decryption for 5-10% of users (IT department first)

  • Monitor for certificate errors (check browser developer tools)
  • Validate that apps aren't breaking (especially mobile apps with pinning)
  • Gather feedback on any performance issues

Week 7-8: Production Rollout

Gradually expand decryption to all users (25% โ†’ 50% โ†’ 100%)

  • Enable decryption policy for production user groups
  • Monitor firewall CPU, session count, latency
  • Respond quickly to certificate pinning failures with exclusions

๐Ÿ“ฑ Mobile Device Considerations

+

iOS Devices

Challenge: iOS doesn't trust user-installed CA certificates for apps (only for Safari)

Solution: Deploy via MDM profile (Jamf, Intune, etc.) with full device trust

# iOS Configuration Profile PayloadType: com.apple.security.root PayloadContent: [Base64-encoded CA cert] PayloadDisplayName: SSL Decryption CA

Android Devices

Challenge: Android 7+ requires apps to explicitly trust user CAs

Solution: Deploy as system CA via MDM (requires device admin) OR exclude corporate Android devices from SSL decryption

BYOD Devices

Recommendation: Do NOT decrypt BYOD traffic. Privacy concerns, inability to deploy CA cert reliably, high support overhead.

โœ… Our Approach: Corporate-managed devices only. BYOD traffic bypasses SSL decryption entirely (use source IP segmentation in decryption policy).

๐Ÿ“‹ Decryption Policy Design

Your decryption policy determines what traffic gets decrypted and what bypasses inspection. Getting this right is critical for security, compliance, and user experience.

The Three-Tier Policy Framework

๐Ÿšซ Tier 1: Never Decrypt (Compliance & Privacy)

+

Categories to Always Exclude

Category Reason Example Sites
financial-services PCI-DSS compliance, certificate pinning *.chase.com, *.bankofamerica.com, *.wellsfargo.com
health-and-medicine HIPAA compliance, PHI privacy *.clevelandclinic.org, *.mayoclinic.org, *.healthcare.gov
government Security requirements, cert pinning *.gov, *.mil, *.irs.gov
personal-sites-and-blogs User privacy, limited security value Personal email, social media DMs

Configuration Example

set rulebase decryption rules "No-Decrypt-Compliance" source any destination any category [ financial-services health-and-medicine government ] action no-decrypt log-setting default-logging set rulebase decryption rules "No-Decrypt-Compliance" description "PCI/HIPAA compliance - never decrypt" position before Decrypt-Outbound
๐Ÿšจ Legal Warning: Decrypting healthcare or financial traffic may violate HIPAA, PCI-DSS, or GDPR. Consult legal/compliance before enabling SSL decryption. Fines can reach millions of dollars.

โš ๏ธ Tier 2: Technical Exclusions (Certificate Pinning)

+

Common Certificate Pinning Apps/Services

These applications validate the certificate against a hardcoded public key hash and will break if you decrypt:

Application Domains to Exclude Symptom if Decrypted
Apple Services *.apple.com, *.icloud.com, *.mzstatic.com iMessage fails, App Store won't load, iCloud sync stops
Google Chrome Updates *.google.com/chrome, *.gvt1.com Chrome refuses to update, security alerts
Microsoft Office 365 *.office.com, *.microsoftonline.com, *.sharepoint.com Can't login to Office apps, OneDrive sync fails
Zoom *.zoom.us Can't join meetings, connection errors
Dropbox *.dropbox.com, *.dropboxapi.com Sync client reports "SSL error"

Palo Alto's Predefined Exclusion List

Palo Alto maintains a list of known certificate pinning sites that's automatically updated:

# Enable predefined SSL decryption exclusion list Device > Certificate Management > SSL Decryption Exclusion [X] Block sessions with expired certificates [X] Block sessions with untrusted issuer [X] Enable SSL decryption exclusion # This list includes ~150 sites known to break with decryption # Updated via content updates (similar to App-ID)
โœ… Pro Tip: Enable the predefined exclusion list BEFORE going live. It prevented 80% of the certificate pinning issues we would have otherwise encountered.

Building Your Own Exclusion List

You'll still encounter pinning failures not in Palo Alto's list. Create a process:

  1. User reports: "App X stopped working after SSL decryption enabled"
  2. Verify it's pinning: Check firewall logs for "SSL decryption failed" errors
  3. Identify domains: Look at decryption logs, packet captures
  4. Add to exclusion: Create custom no-decrypt rule for specific app domains
  5. Document: Maintain wiki page of excluded apps and business justification

โœ… Tier 3: Decrypt Everything Else

+

Default Decrypt Rule

After exclusions, decrypt all remaining outbound SSL traffic:

set rulebase decryption rules "Decrypt-Outbound" source [ Corp-Internal-Subnets ] destination any source-user any category any service [ service-https service-http ] action decrypt profile SSL-Forward-Proxy-Profile log-setting detailed-decryption-logging # SSL Forward Proxy Profile settings set shared ssl-decrypt ssl-forward-proxy SSL-Forward-Proxy-Profile block-client-cert no block-expired-certificate yes block-timeout-cert yes block-tls13-downgrade-no-resource yes block-unknown-cert no block-unsupported-cipher yes block-unsupported-version yes block-untrusted-issuer yes strip-alpn no

Inbound Decryption (Optional)

For inbound traffic to your web servers, use SSL Inbound Inspection:

set rulebase decryption rules "Decrypt-Inbound" source any destination [ DMZ-Webserver-Subnet ] service service-https action decrypt profile SSL-Inbound-Inspection-Profile # Requires installing actual server certificates on firewall # Firewall terminates SSL, inspects, re-encrypts to backend server
๐Ÿ’ก Inbound vs Outbound: We only implemented outbound decryption (users browsing Internet). Inbound decryption (visitors to our websites) added minimal security value and complicated certificate management.

Complete Policy Order

Rules are evaluated top-to-bottom. More specific rules must come first:

  1. No-Decrypt-Compliance (financial, healthcare, government)
  2. No-Decrypt-Pinning (Apple, Microsoft, custom app exclusions)
  3. No-Decrypt-BYOD (guest WiFi, personal devices)
  4. Decrypt-Outbound (everything else)

โšก Performance Optimization

SSL decryption is CPU-intensive. These optimizations reduced our CPU utilization by 35% without compromising security.

๐Ÿ”„ Enable SSL Session Reuse

+

The Problem

Each new SSL handshake requires expensive cryptographic operations (RSA/ECDHE key exchange, certificate validation). For a user visiting CNN.com, their browser makes 50+ HTTPS connections (ads, analytics, images) - that's 50 full handshakes.

The Solution: SSL Session Caching

Enable SSL session resumption so clients can reuse session keys:

set deviceconfig setting ssl-decrypt cache-size 25000 set deviceconfig setting ssl-decrypt session-timeout 3600 # 25,000 cached sessions # 1 hour timeout # Clients reusing sessions skip expensive handshake

Impact

  • โœ… Handshake CPU usage reduced by 60%
  • โœ… SSL handshake latency: 100ms โ†’ 5ms for cached sessions
  • โœ… Supported 40% more sessions on same hardware
โœ… Biggest Performance Win: This single setting reduced our PA-7080 CPU from 75% to 45% at 50Gbps. Enable it Day 1.

๐Ÿ” Optimize Cipher Suite Selection

+

TLS 1.2 vs TLS 1.3 Performance

Protocol Version CPU Usage Handshake RTTs PFS Default
TLS 1.2 (RSA) Baseline (1x) 2-RTT No (optional)
TLS 1.2 (ECDHE) +15-20% 2-RTT Yes
TLS 1.3 +20-25% 1-RTT Yes (mandatory)

Recommended Cipher Suite

set shared ssl-tls-service-profile Custom-Decryption-Profile protocol-settings min-version tls1-2 protocol-settings max-version tls1-3 # Prefer AES-GCM (hardware accelerated) # Allow ECDHE (PFS) but prioritize faster ciphers cipher TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 cipher TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 cipher TLS_RSA_WITH_AES_256_GCM_SHA384 cipher TLS_RSA_WITH_AES_128_GCM_SHA256
โš ๏ธ Security vs Performance Trade-off: Disabling TLS 1.3 saves CPU but reduces security. We kept TLS 1.3 enabled but prioritized faster ciphers where possible.

๐Ÿ“Š Monitoring & Alerting

+

Key Metrics to Monitor

Metric Warning Threshold Critical Threshold Action
Data Plane CPU >70% >85% Add exclusions or upgrade hardware
SSL Proxy Utilization >60% >80% Check session cache settings
Packet Buffer Utilization >70% >90% Packet drops imminent - urgent action
Session Utilization >75% >90% Check for session leaks or attacks

CLI Commands for Monitoring

# Check SSL proxy resource usage show system resources # View SSL decryption statistics show system state filter sys.s*.ssl* # Check current SSL sessions show session all filter ssl-decrypt yes | match count # View decryption logs show log decryption direction equal backward # Monitor CPU per dataplane show running resource-monitor # Check packet buffer usage show counter global filter packet-buffer drop

โš ๏ธ Common Gotchas & How We Solved Them

These are the painful lessons we learned during our deployment. Save yourself the trouble.

๐Ÿ”ด Gotcha #1: Mobile App Apocalypse

+

What Happened

Day 1 of SSL decryption rollout, we got flooded with tickets: "Outlook mobile won't sync email," "Teams mobile won't connect," "Banking apps showing security errors."

Root Cause

Mobile apps use certificate pinning 10x more than desktop apps. iOS/Android apps bundle the expected certificate and reject our firewall-signed cert.

Solution

Created expedited process for mobile app exclusions:

  1. User reports app name + error screenshot
  2. Security team tests app, confirms pinning (not malware)
  3. Network team identifies domains via packet capture
  4. Add no-decrypt rule within 1 hour
  5. Update KB article with excluded apps
โœ… After 2 weeks: We had excluded 47 corporate mobile apps. Ticket volume dropped from 50/day to 2-3/day. Maintain a living document of excluded apps.

๐Ÿ”ด Gotcha #2: Crypto Currency Wallets Blocked

+

What Happened

Executive VP couldn't access his crypto exchange account. Escalated to CTO within 30 minutes.

Root Cause

Cryptocurrency exchanges (Coinbase, Kraken, Binance) use aggressive certificate pinning to prevent MITM attacks. Makes sense given the financial stakes, but broke our decryption.

Solution

Pre-emptively excluded all major crypto exchanges before general rollout:

set rulebase decryption rules "No-Decrypt-Cryptocurrency" source any destination [ *.coinbase.com *.kraken.com *.binance.com *.blockchain.com *.crypto.com *.gemini.com ] action no-decrypt description "Crypto exchanges use cert pinning"
โš ๏ธ Lesson Learned: Survey executives BEFORE rollout about critical apps/sites. Preventing a CTO escalation is worth 30 minutes of pre-work.

๐Ÿ”ด Gotcha #3: Cloud SaaS Performance Degradation

+

What Happened

Salesforce, Workday, and other cloud apps became noticeably slower (5-10 second delays on page loads).

Root Cause

Cloud SaaS apps make 100+ parallel HTTPS connections per page. Each connection hit the firewall for full SSL handshake (before we enabled session caching). Added 50-100ms latency per request.

Solution

  1. Enabled SSL session caching (see performance section)
  2. Increased cache size from default 10K to 25K sessions
  3. Validated HTTP/2 was working (reduces connection count)

Results

  • Salesforce page load: 8s โ†’ 2s (75% faster)
  • Workday: 6s โ†’ 1.5s (75% faster)
  • User satisfaction scores recovered to pre-decryption levels

๐Ÿ”ด Gotcha #4: TLS 1.3 0-RTT Breaks Decryption

+

What Happened

Some sites (Google, Cloudflare CDN) showed intermittent SSL errors for repeat visitors.

Root Cause

TLS 1.3 "0-RTT" (Zero Round Trip Time) resumption sends encrypted data in the FIRST packet. Firewall can't decrypt traffic it hasn't seen the handshake for, causing connection failures.

Solution

set shared ssl-tls-service-profile Custom-Decryption-Profile protocol-settings tls-1-3-0-rtt enable no # Disables 0-RTT support # Clients fall back to 1-RTT (still fast, but firewall can decrypt)
๐Ÿ’ก Trade-off: Disabling 0-RTT costs ~5-10ms latency for repeat connections but ensures reliable decryption. Worth it.

๐Ÿ“… Our 8-Week Implementation Timeline

Here's the actual timeline from our deployment. Adjust based on your org size, but don't skip phases.

Phase 1: Planning & Hardware (Weeks 1-2)

  • โ˜ Calculate throughput requirements (current + 30% growth)
  • โ˜ Select hardware (PA-5450 vs PA-7080 analysis)
  • โ˜ Order firewalls (8-12 week lead time - start early!)
  • โ˜ Get budget approval ($850K for PA-7080 HA pair)
  • โ˜ Engage legal/compliance team (HIPAA, PCI, GDPR review)
  • โ˜ Document business case and risk assessment

Phase 2: Hardware Setup & CA Deployment (Weeks 3-4)

  • โ˜ Rack and cable firewalls
  • โ˜ Configure HA pair (A/P mode)
  • โ˜ Generate SSL decryption CA certificate (4096-bit)
  • โ˜ Export CA cert and create GPO
  • โ˜ Deploy CA to all Windows/Mac/Linux endpoints via GPO/MDM
  • โ˜ Verify CA deployment (spot-check 50+ machines)
  • โ˜ Configure base security policies (no decryption yet)

Phase 3: Policy Development (Weeks 5-6)

  • โ˜ Create no-decrypt rules (financial, healthcare, government)
  • โ˜ Enable predefined SSL decryption exclusion list
  • โ˜ Build custom exclusion list (Apple, Microsoft, mobile apps)
  • โ˜ Create decrypt-outbound rule (disabled for now)
  • โ˜ Configure SSL forward proxy profile
  • โ˜ Enable SSL session caching (25K sessions, 1hr timeout)
  • โ˜ Set up monitoring & alerting (CPU, sessions, packet buffer)

Phase 4: Pilot Deployment (Week 7)

  • โ˜ Enable decryption for IT department only (50 users)
  • โ˜ Monitor firewall CPU, memory, sessions for 48 hours
  • โ˜ Collect user feedback (anonymous survey)
  • โ˜ Test common apps: Office 365, Salesforce, Zoom, Slack
  • โ˜ Identify and document any cert pinning failures
  • โ˜ Add exclusions as needed
  • โ˜ Verify threat prevention still working (test malware samples)

Phase 5: Production Rollout (Week 8)

  • โ˜ Week 8 Day 1: Enable for 25% of users (random selection)
  • โ˜ Week 8 Day 3: Expand to 50% if no major issues
  • โ˜ Week 8 Day 5: Expand to 100% of users
  • โ˜ Monitor help desk ticket volume closely
  • โ˜ Have rollback plan ready (disable decryption rule)
  • โ˜ Document all exclusions added during rollout
  • โ˜ Schedule monthly review of decryption policy

โœ… Pre-Flight Checklist

Do NOT enable SSL decryption until you can check all these boxes:

๐Ÿšจ Critical Requirements (Must-Have)

  • โ˜ CA certificate deployed to ALL managed endpoints (95%+ coverage)
  • โ˜ Waited 2+ weeks after CA deployment for offline devices to update
  • โ˜ Legal/compliance approval for decryption policy
  • โ˜ Healthcare & financial traffic excluded (HIPAA/PCI compliance)
  • โ˜ Predefined SSL decryption exclusion list enabled
  • โ˜ Pilot tested with 50+ users for 1+ week without major issues
  • โ˜ Rollback plan documented and tested
  • โ˜ Help desk trained on common SSL decryption issues

โš ๏ธ Recommended (Should-Have)

  • โ˜ SSL session caching enabled (25K+ sessions)
  • โ˜ Monitoring & alerting configured (CPU, sessions, packet buffer)
  • โ˜ Custom exclusions for known cert pinning apps (Apple, Microsoft, Zoom)
  • โ˜ TLS 1.3 0-RTT disabled to prevent intermittent failures
  • โ˜ Mobile app exclusion process documented
  • โ˜ Performance baseline captured (pre-decryption latency, throughput)
  • โ˜ Executive/VIP users identified for targeted support
  • โ˜ KB article published with FAQs for users

๐Ÿ’ฌ Questions or Share Your Experience?

This guide is community-maintained. If you've deployed SSL decryption at scale, have additional gotchas to share, or want to discuss your Palo Alto deployment:

๐Ÿ’ฌ Start Discussion ๐Ÿ› Report Issue