Skip to main content

Configure HTTPS Inspection

This guide covers the complete HTTPS inspection setup: generate or import a Root CA certificate, enable inspection in SafeSquid, deploy the certificate to clients, and configure bypass rules for sensitive domains.

Time to complete: 30-60 minutes (including client certificate deployment)

Prerequisites

Before You Start

SafeSquid side:

  • SafeSquid installed and licensed
  • Access to Self-Service Portal (for certificate generation)
  • Access to SafeSquid Configuration Portal (http://safesquid.cfg/—embedded Rest UI interface built into SafeSquid; accessible only when your client uses the proxy, but NOT resolved by SafeSquid's DNS resolver—or https://SERVER-IP:8443/ for direct access)

Client side:

  • List of domains to bypass (banking, healthcare, SSL-pinned apps)
  • Method to deploy Root CA to all clients (GPO, MDM, or manual)
  • Administrative access to client systems (for certificate import)

Step 1: Generate or Import Root CA Certificate

You have three options for the Root CA certificate:

OptionWhen to UseProsCons
Self-SignedTesting, small deploymentsQuick, no external dependenciesNot trusted by default, harder to revoke
Enterprise CA (with passphrase)Production with existing CACentralized trust, auditableRequires CA infrastructure
Enterprise CA (without passphrase)Production, new passphraseSame as aboveNeed to set new passphrase

Recommended: Use self-signed for testing/pilot. Use enterprise CA for production.


Generate Certificate in Self-Service Portal

  1. Log in to the Self-Service Portal

    Self-Service Portal login

  2. Navigate to Certificate Management

    In the dashboard → find your deployment → click Manage Certificate

    Manage Certificate button


Option A: Self-Signed Certificate

  1. Click Generate (appears if no certificate exists yet)

    Generate button

  2. Select "General self-signed"Enter passphraseGenerate

    Save Your Passphrase

    The passphrase is non-recoverable. Save it securely—you'll need it to reuse the certificate with different activation keys.

    Generate self-signed certificate

  3. Click Close to continue

    Certificate generated


Option B: Enterprise CA with Existing Passphrase

  1. Click RegenerateUpload enterprise CA filesSelect "has passphrase"

    Upload enterprise CA with passphrase

  2. Select CA certificate files (.crt and .key)

    Select CA files

  3. Enter passphraseClick "Validate private key"

    Enter passphrase

  4. Select "Retain password"Upload

    Retain password and upload

  5. Click Close

    Upload complete


Option C: Enterprise CA Without Passphrase (Set New One)

  1. Click RegenerateUpload enterprise CASelect "does not have passphrase"

    Upload enterprise CA without passphrase

  2. Select CA certificate files

    Select CA files

  3. Enter new passphraseUpload

    Save Your Passphrase

    This new passphrase is non-recoverable. Save it securely.

    Enter new passphrase

  4. Click Close

    Upload complete


Download Certificate

  1. Enter passphrase (if prompted) → Click Download

    Download certificate Certificate download

Save this file — you'll deploy it to all client systems.


Step 2: Enable HTTPS Inspection in SafeSquid

Access Configuration Portal

  1. Open SafeSquid interfaceClick "Configure"

    Click Configure

  2. Expand "Real Time Content Security" in the sidebar

    Real Time Content Security

  3. Click "HTTPS Inspection"

    HTTPS Inspection


Enable Global HTTPS Inspection

  1. Click the "Global" tabClick Edit (pencil icon)

    Version Change

    SafeSquid versions after June 2017 have three tabs: Global, Inspection Policies, and Bypass Policies.

    Global tab Click Edit

  2. Set "Enabled" to "True"Save Policy

    Enable HTTPS Inspection Save Policy


Enable Inspection Policies

  1. Click "Inspection Policies" tab

    Inspection Policies tab

  2. Verify default policies are enabled

    Default policies

  3. Find "Enforce SSL scanning for all websites"Click Edit

    Edit enforce policy

  4. Set "Enabled" to "True"Save Policy

    Enable enforce policy Save Policy


Save Configuration

  1. Click "Save Configuration" (floppy disk icon, bottom left)

    Save Configuration

  2. Select "No" (unless deploying to a cluster) → Submit

    Cloud Config

    Select "Yes" only if:

    • You're deploying the same config to multiple SafeSquid instances (cluster)
    • All sections are fully configured for production

    Otherwise, select "No" to save locally only.


Step 3: Deploy Root CA to Clients

All clients must trust the SafeSquid Root CA to avoid certificate warnings.

Windows (Chrome, Edge, IE)

See detailed guide: Import Certificate into Chrome/IE

Quick summary:

  1. Double-click the downloaded certificate
  2. Install CertificateLocal MachineNext
  3. BrowseTrusted Root Certification AuthoritiesOK
  4. NextFinish

For enterprise deployment: Use GPO to push the certificate to all Windows machines.


Firefox (All Platforms)

Firefox uses its own certificate store.

  1. Download the SafeSquid Root CA (from Step 1)
  2. Open FirefoxSettingsPrivacy & SecurityCertificatesView Certificates
  3. Authorities tabImport
  4. Select the SafeSquid certificate file
  5. Check "Trust this CA to identify websites"OK

Verify:

  • Visit https://www.google.com (via SafeSquid proxy)
  • Click padlock → More informationView Certificate
  • Certificate chain should show SafeSquid Root CA

macOS

Via System Keychain:

  1. Double-click the certificate file
  2. Add → Enter admin password
  3. Open Keychain AccessSystem keychain
  4. Find SafeSquid certificate → Get Info
  5. Trust section → When using this certificateAlways Trust

For enterprise: Use MDM (Jamf, Intune) to deploy to all Macs.


Mobile Devices

iOS/Android:

  • Deploy via MDM (Jamf, Intune, Workspace ONE)
  • Manual: Email certificate → Open on device → Install

Step 4: Configure Bypass Policies

Bypass HTTPS inspection for:

  • Banking and financial sites (compliance)
  • Healthcare portals (HIPAA)
  • SSL-pinned applications (will break otherwise)
  • Government sites

Enable Default Bypass Policy

  1. Click "Configure" in SafeSquid interface

    Click Configure

  2. Click Search (magnifying glass icon, top right)

    Click Search

  3. Type "BYPASS SSL INSPECTION"Enter

    Search bypass

  4. Click Edit on the bypass policy

    Edit bypass policy

  5. Set "Enabled" to "True"Save Policy

    Enable bypass Save bypass policy

  6. Review and enable related bypass policies (for banking apps, Windows Update, etc.)

    Review bypass policies


Create Custom Bypass for Specific Domains

Example: Bypass HTTPS inspection for Dropbox.

Custom bypass example

Step 1: Define Request Type

  1. SidebarProfiling EngineRequest TypesAdd New

    Request Types Add New

  2. Comment: "Dropbox domains"
    Match pattern: .*dropbox.*
    Smart TLD: True

    Define Dropbox pattern Enable Smart TLD

Step 2: Create Access Policy

  1. SidebarAccess PoliciesAccess ProfilesAdd New

    Access Profiles

  2. Comment: "Bypass SSL for Dropbox"
    Request Type: Select "Dropbox domains" (from Step 1)
    Added profiles: Select "BYPASS SSL INSPECTION"

    Create bypass policy

  3. Save Policy

    Save bypass

  4. Save Configuration (floppy disk icon, bottom left)

Test: Upload/download files via Dropbox to verify bypass works.


Verification

Test HTTPS Inspection is Working

On a client with SafeSquid Root CA installed:

  1. Browse to https://www.google.com
  2. Click padlockCertificateView
  3. Verify: Certificate chain shows SafeSquid Root CA as the issuer
  4. No certificate warnings should appear

Expected certificate chain:

www.google.com (issued by SafeSquid Root CA)
└─ SafeSquid Root CA (self-signed or your enterprise CA)

Test Bypass is Working

On the same client:

  1. Browse to a bypassed site (e.g., banking site you added to bypass)
  2. Click padlockCertificateView
  3. Verify: Certificate shows the original site's CA (not SafeSquid)

Expected: Bypassed sites show their original certificates (e.g., DigiCert, Let's Encrypt).


Check SafeSquid Logs

On SafeSquid server:

tail -f /var/log/safesquid/access/extended.log

Expected for inspected sites:

  • Full URL logged (including path, not just domain)
  • 200 OK or similar HTTP status

Expected for bypassed sites:

  • Only CONNECT method logged
  • No detailed path information

Troubleshooting

IssueLikely CauseFix
Certificate warnings on all HTTPS sitesRoot CA not installed on clientInstall SafeSquid Root CA in Trusted Root store (see Step 3)
Firefox shows warnings, Chrome worksFirefox uses separate cert storeImport certificate into Firefox separately (see above)
Banking/healthcare sites brokenHTTPS inspection enabled, no bypassAdd sites to bypass policy (Step 4)
Mobile apps not workingSSL pinningAdd app's domains to bypass policy
"NET::ERR_CERT_AUTHORITY_INVALID"Root CA not trustedVerify certificate installed in Trusted Root Certification Authorities (not Intermediate)
Inspection works, then stopsSafeSquid restart cleared configRe-save configuration; check if config was saved to cloud
Some sites work, others don'tPartial bypass or incorrect policyReview bypass policies; check logs for CONNECT vs full requests

Still not working?

  1. Verify HTTPS Inspection is enabled:

    • Configuration Portal → Real-time Content Security → HTTPS Inspection → Global = True
  2. Check certificate is deployed:

    • Windows: Run certmgr.msc → Trusted Root Certification Authorities → Certificates
    • Firefox: Settings → Privacy & Security → Certificates → View Certificates → Authorities
    • macOS: Keychain Access → System → Find SafeSquid cert
  3. Test with curl:

    # Should work without cert if bypass is correct:
    curl --proxy http://SAFESQUID-IP:8080 https://www.google.com
  4. Check SafeSquid logs:

    tail -50 /var/log/safesquid/safesquid.log
    grep -i "ssl\|cert\|handshake" /var/log/safesquid/safesquid.log

Next Steps

  1. Authentication — Enable user-aware policies (SSL Inspection must be working first)
  2. Access Restriction — Configure URL filtering (now works on HTTPS)
  3. Data Leakage Prevention — Scan HTTPS uploads for sensitive data
  4. Troubleshooting — SSL-specific issues and diagnostics

Related: