VPNs help with privacy, but on managed networks they’re often used to bypass safety controls. Use this guide to understand VPNs, why blocking is complex, and how to implement layered defenses.
Learn About PricingA Virtual Private Network (VPN) encrypts traffic and routes it through a remote server. While this can be beneficial for privacy and security on personal or untrusted networks, it presents significant challenges on managed networks such as schools, libraries, and corporate environments.
On these networks, VPNs effectively create a secure tunnel that bypasses local protections, making it impossible for administrators to apply Acceptable Use Policies (AUPs). When a VPN is active, content filters, firewalls, and monitoring tools can no longer see or control the traffic. This means:
Blocking VPNs is complex because they reuse common ports like 443 (HTTPS), rotate IP addresses frequently, and adopt new protocols (e.g., WireGuard) that are designed to blend in with normal traffic. This is why organizations should view VPN blocking as a layered, best-effort strategy. The goal is not perfect prevention, but raising the barrier enough that casual users cannot easily bypass protections.
Learn more: What is a VPN?
The first and simplest line of defense against VPN usage is at the DNS layer. By blocking access to known VPN and proxy domains (provider websites, app bootstrap hosts, and API endpoints), administrators can stop many casual attempts before they even begin. If a user can’t reach the download page, update server, or handshake host, the VPN client often fails to connect.
DNS filtering is effective because it’s network-wide: apply the controls at your router, firewall, or DNS resolver and all connected devices inherit the same protections. This reduces the likelihood that users can install or activate VPN clients without being noticed.
However, DNS filtering is not enough on its own. Advanced VPN clients may connect directly by IP or use encrypted DNS (DoH/DoT) to bypass your resolver. That’s why DNS filtering should be viewed as one piece of a broader policy for VPN control — complementary to firewall rules, port blocking, DPI, and endpoint restrictions. Think of it as your first layer of defense that removes easy circumvention paths and reduces the volume of attempts you need to handle at deeper layers.
Most VPNs rely on specific ports and protocols to establish connections. By blocking or restricting these at your firewall, you can significantly reduce the number of VPNs that will connect successfully on your network. This approach is one of the most effective “first line of defense” techniques because many commercial VPN services default to well-known ports. While determined users may still tunnel VPN traffic over common ports like 443 (HTTPS), blocking the obvious ports removes a large portion of casual VPN usage.
Protocol | Typical Ports | Notes |
---|---|---|
OpenVPN | UDP 1194 (varies) | May fall back to TCP/443 |
IPSec / IKEv2 | UDP 500, 4500 | Block both; NAT-T uses 4500 |
PPTP | TCP 1723 | Legacy; easy to block |
L2TP | UDP 1701 | Often paired with IPSec |
WireGuard | UDP (often 51820) | Port configurable |
This won’t catch every case (some VPNs tunnel over TCP/443), but it removes low-hanging fruit and makes it much harder for users to casually bypass your filters.
QUIC is the transport behind HTTP/3. It runs over UDP/443 (not TCP) and was designed for speed and reliability, especially on mobile and lossy networks. That performance gain comes with a tradeoff for administrators: QUIC traffic is harder for traditional HTTPS controls to see or shape.
Practically speaking, you generally can’t perform deep inspection on QUIC like you might on TCP/443 with classic HTTPS proxies. QUIC’s handshake + TLS 1.3 minimize what’s visible to middleboxes, so many NGFW/SWG features don’t apply. This makes QUIC a convenient evasion path for VPNs and other tunneling tools that want to blend into “normal” web traffic.
Important: The control here is policy-level—you can reliably identify QUIC (UDP/443) and block or limit it to force fallback to TCP/443. That restores more effective controls (e.g., SNI-based rules today, selective TLS inspection on managed devices, and DPI signatures for some VPNs over TCP). Blocking QUIC is coarse: you won’t know if a given QUIC flow was a VPN or a legitimate app, but you will remove a blind spot.
On TCP/443, many devices can still use SNI (the TLS hostname) to block known VPN/proxy domains without full decryption. But SNI visibility is shrinking as ECH (Encrypted Client Hello) rolls out. Plan accordingly: pair SNI rules with DNS enforcement (force resolver, block DoH/DoT) and, where feasible, IP/ASN allow/deny for critical services.
h3
; after enforcing, you should see h2
/h1
.Bottom line: QUIC isn’t bad—it’s the future of the web—but unmanaged QUIC is a blind spot. Control it to keep your broader VPN-blocking layers effective.
Basic port and domain blocking will stop many VPNs, but advanced services are designed to mimic normal HTTPS. This is where Deep Packet Inspection (DPI) and TLS fingerprinting help—especially once you’ve limited QUIC (Step 4) so traffic falls back to TCP/443 where these controls are most effective.
Scope: DPI and TLS fingerprinting generally apply to TLS over TCP/443. You typically can’t deeply inspect QUIC (UDP/443). Control QUIC first, then apply these detections.
DPI (Deep Packet Inspection) looks beyond ports and destinations to identify apps/protocols by behavior. Even if a VPN runs on TCP/443, DPI can detect signatures for OpenVPN, WireGuard, IPSec, L2TP, or vendor “stealth/obfuscation” modes and block or alert accordingly.
TLS fingerprinting examines the TLS handshake characteristics to derive a “fingerprint.” Different clients— including VPN apps—negotiate distinct cipher lists, extensions, and ordering that differ from standard browsers. Matching these fingerprints against known sets helps flag VPN tunnels that blend with HTTPS.
On TCP/443, you can often match on SNI (Server Name Indication) to deny known VPN/proxy hostnames without full TLS decryption—useful for coarse domain-level control. Be aware this is fragile: as ECH (Encrypted Client Hello) adoption grows, SNI will be hidden from intermediaries.
Technique | Where it works | Strength | Limitations |
---|---|---|---|
DPI / App-ID | TLS over TCP/443 | Identifies VPN protocols even when on 443 | Vendor coverage varies; compute overhead |
TLS fingerprinting | TLS over TCP/443 | Flags non-browser clients by handshake | Fingerprints change; requires updates |
SNI filtering | TLS over TCP/443 | Domain blocks w/o full decryption | Degrades with ECH; CDN hostnames tricky |
QUIC control (Step 4) | UDP/443 (HTTP/3) | Forces fallback to TCP → more visibility | Coarse; may impact some apps |
Bottom line: Limit QUIC to regain vantage on TCP/443, use SNI while it lasts, and rely on DPI/TLS fingerprinting (plus DNS enforcement) as your durable, layered detection path.
Users don’t need a full VPN to bypass filtering—simple local DNS changes can route their lookups around your resolver. Add to that Encrypted DNS (DNS-over-HTTPS and DNS-over-TLS), and you have two common paths that quietly undermine Acceptable Use enforcement. Treat DNS evasion with the same priority as VPN blocking.
“Forcing DNS” means the network only allows DNS queries to your approved resolver(s), and silently drops or redirects everything else. This keeps all clients—managed or not—on the same policy.
DoH/DoT encrypt DNS lookups so they can’t be seen or filtered by traditional DNS controls. If enabled to public providers, they effectively nullify your DNS policy. Either terminate encrypted DNS on your resolver (enterprise DoH/DoT) or block it outbound. Get the full overview here: Encrypted DNS (DoH & DoT).
Deep dive: Block DNS Filtering Evasion | Background on DoH/DoT: Encrypted DNS (DoH & DoT)
On managed devices, use MDM/Group Policy to block VPN apps and VPN/proxy extensions, restrict local admin rights, and lock network settings to retain control. Endpoint controls reduce the chance users can install or run tunneling software even if network controls miss something.
In addition to endpoint restrictions, maintain deny-lists of known VPN egress IPs and Tor relays/exits on the firewall. This won’t catch everything (providers rotate IPs and use cloud ranges), but it cuts down casual use and gives your monitoring a head start.
Tor routes traffic through multiple relays to hide origin and destination. It’s not a VPN, but it can similarly defeat filtering and logging by encrypting and bouncing traffic outside your policy controls. Tor is harder to block comprehensively because:
Practical steps include blocking known Tor exits/relays, monitoring for Tor TLS/DPI signatures where supported, and preventing Tor Browser installation on endpoints. See our guide: How to Block the Tor Network (DNS & Firewall).
Target | Typical Indicators | Notes |
---|---|---|
VPN providers (egress) | Known provider IPs/ranges; long-lived encrypted sessions | Use feeds; expect rotation and cloud overlap (tune carefully) |
Tor relays / exits | Exit-node IP lists; ORPort ~9001/tcp, DirPort ~9030/tcp; sometimes 443/tcp | Block lists help; bridges/pluggable transports need DPI/fingerprints |
Tor/Tunnel apps | Process names, installers, unsigned binaries, portable app bundles | Stop at the endpoint with allow-listing and MDM policies |
Bottom line: lock down the endpoint to stop tunnel apps from running, and complement it with IP-based blocks for known VPN/Tor infrastructure. Use logs and alerts to iterate—both ecosystems change often.
VPN control is never “set and forget.” Providers rotate IPs, add protocols, and adopt tricks like QUIC and encrypted DNS. Active monitoring is what turns your controls into an adaptive system: you see bypass attempts, tune policies, and prove enforcement. Without monitoring, VPN and Tor traffic becomes a blind spot—and Acceptable Use enforcement weakens over time.
Detection | Trigger | Why it matters |
---|---|---|
QUIC spike by host | >100 QUIC (UDP/443) connections in 15 min from one device | Potential tunnel over HTTP/3 or misconfigured browser policy |
Long-lived TLS to unknown ASN | TLS session >20 min to ASN not in allow-list (non-CDN/non-business) | Characteristic of VPN egress or Tor bridge |
DoH/DoT usage | Outbound to TCP 853 or known DoH hostnames/IPs | Encrypted DNS bypassing your resolver |
Non-approved DNS egress | UDP/TCP 53 to any IP except your resolver(s) | Local DNS override; policy not enforced at gateway |
VPN protocol fingerprint | DPI/App-ID = OpenVPN/WireGuard/IPSec/L2TP | Direct tunnel detection regardless of port |
Tor indicators | Connections to known relay/exit IPs or Tor TLS fingerprint | Non-VPN anonymity network bypassing policy |
Centralize logs and build dashboards/alerts in a SIEM to make this operational. Trunc (our SIEM & log management platform) simplifies ingestion from DNS resolvers, firewalls/NGFWs, web filters, endpoints, and identity providers, then gives you prebuilt VPN/Tor/DoH detections, visualizations, and scheduled reports for audits. Learn more: Trunc SIEM | Log Analysis.
Bottom line: Controls stop yesterday’s tunnels; monitoring finds today’s. Use dashboards to see attempts, alerts to react fast, and a SIEM like Trunc to prove enforcement to auditors and stakeholders.
VPN controls decay over time. Providers rotate IPs, introduce new protocols, and browsers change defaults (e.g., QUIC/DoH). Regular testing is what keeps your posture current, proves Acceptable Use enforcement, and catches regressions early.
Layer | What to test | Example actions | Expected result |
---|---|---|---|
DNS filtering | Block VPN/proxy domains; SafeSearch enforcement | Visit provider sites (e.g., nordvpn.com); search “VPN download” | Blocked/redirected; SafeSearch enforced in SERPs |
Firewall ports | Block common VPN ports/protocols | OpenVPN UDP/1194; IPSec UDP/500,4500; L2TP UDP/1701; PPTP TCP/1723; WireGuard UDP/51820 | Connections fail; logs show blocked outbound |
QUIC control | Restrict HTTP/3 (UDP/443) | Load QUIC-capable sites; attempt VPNs that prefer QUIC | QUIC blocked or downgraded to TCP/443; inspection regains visibility |
Encrypted DNS | Enforce resolver; block public DoH/DoT | Enable DoH in browser; try TCP/853; change local DNS | DoH/DoT denied or forced to enterprise endpoint; port 53 forced to your resolver |
DPI / TLS fingerprint | Detect tunneled VPN over 443 | OpenVPN over TCP/443; WireGuard variants; vendor “stealth/obfuscation” modes | DPI/App-ID identifies and blocks/alerts |
Endpoint controls | Prevent app/extension installs; lock network settings | Install Tor Browser / VPN apps; add proxy/DoH extensions; edit DNS | Install/execute denied; settings locked |
IP deny-lists | Block known VPN/Tor egress | Connect to listed egress IPs; browse via Tor | Sessions blocked/alerted; see Block Tor |
Monitoring & alerts | High-signal detections fire | Generate test events (DoH attempts, QUIC surge, long-lived TLS) | SIEM receives logs; alerts and dashboards update |
Maintain a simple “VPN Blocking Test Log” so results are provable and trends are visible. Store screenshots, CLI outputs, and SIEM links.
Date | Segment/SSID | Device/OS | Test | Result | Evidence | Owner | Fix/Retest |
---|---|---|---|---|---|---|---|
YYYY-MM-DD | Guest-WiFi | Win11 | NordVPN (WireGuard) | Blocked | Screenshot / SIEM link | J.D. | N/A |
YYYY-MM-DD | Staff | macOS | Browser DoH | Allowed ❌ | Chrome policy screenshot | A.K. | Disable DoH policy; retest by DD-MM |
Centralize logs and validations in a SIEM for dashboards, alerting, and scheduled reports. Trunc can ingest DNS, firewall/NGFW, web filter, and endpoint logs; ship prebuilt detections (VPN/Tor/DoH/QUIC); and produce monthly/quarterly compliance summaries. See: Trunc SIEM | Log Analysis.
Reference: Strategies to Block VPNs
Use this evidence-based checklist to validate your setup. Fill in the Status column (✓/✗/N/A), describe How Implemented, and attach Evidence (screenshots, config exports, SIEM links). Frequency indicates how often to review.
Control Area | What to Check | How Implemented | Evidence to Attach | Frequency | Status (✓/✗/N/A) |
---|---|---|---|---|---|
Technology Identification |
|
|
|
Annual / on change | |
Policy & Governance |
|
|
|
Annual | |
DNS Filtering |
|
|
|
Quarterly | |
DNS Evasion & Encrypted DNS |
|
|
|
Quarterly / on browser updates | |
Firewall / Ports & Protocols |
|
|
|
Quarterly | |
QUIC / HTTP/3 Control |
|
|
|
Quarterly / on browser changes | |
DPI / TLS Fingerprinting |
|
|
|
Quarterly | |
Endpoint Restrictions |
|
|
|
Quarterly | |
IP Deny-lists & Tor Controls |
|
|
|
Monthly | |
Monitoring & SIEM |
|
|
|
Continuous | |
Testing & Validation |
|
|
|
Monthly / Quarterly / On change | |
Exceptions & Review |
|
|
|
Quarterly |
Need more depth? See Strategies to Block VPNs, the encrypted DNS overview at /encrypteddns, and Tor-specific guidance: How to Block the Tor Network (DNS & Firewall).