How to Setup OpenVPN on Tomato Firmware - Complete Router VPN Guide

Last updated: September 11, 2025
Table of Contents

🍅 About Tomato Firmware

Tomato is a powerful open-source firmware that transforms consumer routers into enterprise-grade networking devices. It offers advanced VPN features, real-time bandwidth monitoring, and extensive customization options.

Benefits: Better stability, advanced QoS, detailed statistics, and full OpenVPN support.

Router Compatibility

Router Model Tomato Version VPN Performance Recommended
ASUS RT-AC68U FreshTomato 2024.x ~40-50 Mbps ⭐⭐⭐⭐⭐
ASUS RT-AC3200 AdvancedTomato ~35-45 Mbps ⭐⭐⭐⭐
Netgear R7000 FreshTomato ARM ~45-55 Mbps ⭐⭐⭐⭐⭐
Netgear R8000 FreshTomato ARM ~50-60 Mbps ⭐⭐⭐⭐⭐
Linksys WRT54GL Tomato 1.28 ~5-8 Mbps ⭐⭐ (Legacy)

💡 Pre-Configured Routers Available

Save time with a pre-flashed router from the TorGuard store, already configured with your VPN account.

Prerequisites

  • Router flashed with Tomato firmware (FreshTomato recommended)
  • Active TorGuard VPN subscription
  • Your TorGuard VPN username and password
  • Access to router admin panel (usually 192.168.1.1)
  • TLS-AUTH key and CA certificate from TorGuard certificates page

Step-by-Step Configuration

Step 1: Access Router Admin Panel

Open your web browser and navigate to your router's IP address:

http://192.168.1.1

Common alternative addresses: 192.168.0.1, 192.168.2.1, or 10.0.0.1

Step 2: Navigate to VPN Settings

Tomato VPN menu location

Select "VPN Tunneling" under "USB and NAS"

Step 3: Configure Basic Settings

In the OpenVPN Client submenu, configure these basic settings:

Start with WAN: Checked (for auto-start)
Interface Type: TUN
Protocol: UDP (or TCP if blocked)
Server Address/Port: [server].torguardvpnaccess.com:1912
Firewall: Automatic
Authorization Mode: TLS
Username/Password Auth: Checked
Username: Your TorGuard VPN username
Password: Your TorGuard VPN password
Username Auth. Only: Checked
Extra HMAC Authorization: Outgoing (1)
Create NAT on tunnel: Checked
Tomato basic VPN settings

Basic OpenVPN configuration

📍 Server Selection Tips

  • Choose servers geographically close for better speed
  • Use dedicated IPs for streaming services
  • Find all servers at TorGuard Network page

Step 4: Configure Advanced Settings

Click the Advanced tab and configure:

Poll Interval: 0
Redirect Internet Traffic: Checked (for full tunnel)
Accept DNS Configuration: Strict
Encryption Cipher: AES-128-CBC
Compression: Disabled
TLS Renegotiation Time: -1
Connection Retry: 30
Verify Server Certificate: Unchecked

Custom Configuration

Add these lines to the Custom Configuration box:

persist-key persist-tun auth SHA256 sndbuf 393216 rcvbuf 393216 # Optional performance tweaks fast-io # For better stability on wireless mssfix 1400 # Kill switch (optional) pull-filter ignore "redirect-gateway" redirect-gateway def1
Tomato advanced VPN settings

Advanced OpenVPN configuration

Step 5: Add Keys and Certificates

Click the Keys tab and add:

  1. Static Key (TLS-AUTH)

    Copy the TLS-AUTH key from TorGuard certificates page into the Static Key box.

  2. Certificate Authority

    Copy the OpenVPN CA certificate into the Certificate Authority box.

Tomato keys configuration

Keys and certificates configuration

Step 6: Save and Connect

  1. Click the Status tab
  2. Click Save at the bottom right
  3. Click Start Now to connect
Tomato VPN connected status

Successfully connected VPN status

Configuration Options by Use Case

General Use
Streaming
Maximum Privacy
Performance

General Internet Use

  • Protocol: UDP
  • Port: 1912
  • Cipher: AES-128-CBC
  • Best for everyday browsing and downloads

Streaming Configuration

  • Use dedicated streaming IPs
  • Enable DNS leak protection
  • Add to custom config: block-outside-dns
  • Consider split tunneling for non-streaming traffic

Maximum Privacy

  • Protocol: TCP
  • Port: 443
  • Cipher: AES-256-CBC
  • Add to custom config:
    cipher AES-256-CBC auth SHA512 tls-cipher TLS-DHE-RSA-WITH-AES-256-GCM-SHA384

Maximum Performance

  • Protocol: UDP
  • Cipher: AES-128-GCM (if supported)
  • Add to custom config:
    sndbuf 524288 rcvbuf 524288 push "sndbuf 524288" push "rcvbuf 524288" tun-mtu 1500 mssfix 1450 comp-lzo no

Performance Optimization

🚀 Speed Optimization Tips

  1. CPU Overclocking (Advanced)

    Some Tomato builds support CPU overclocking:

    • Administration → Overclock CPU
    • Start conservatively (10-15% increase)
    • Monitor temperatures
  2. Buffer Tuning

    Adjust buffer sizes based on your connection:

    • Fast connections (>100Mbps): Use 524288
    • Medium (50-100Mbps): Use 393216
    • Slower (<50Mbps): Use 262144
  3. MTU Optimization

    Find optimal MTU:

    # Test from computer: ping -f -l 1472 google.com # Windows ping -D -s 1472 google.com # Mac/Linux

    Reduce size until no fragmentation, then add 28

Advanced Features

Policy-Based Routing

Route specific devices through VPN while others use regular internet:

  1. Go to VPN → OpenVPN Client → Routing Policy
  2. Add device IPs or MAC addresses
  3. Choose "Route via VPN" or "Route via WAN"

Kill Switch Implementation

Prevent internet access if VPN disconnects:

# Add to Firewall script (Administration → Scripts) iptables -I FORWARD -i br0 -o $(nvram get wan_iface) -j DROP

DNS Over VPN Only

Force all DNS through VPN tunnel:

# Add to custom configuration dhcp-option DNS 10.8.0.1 block-outside-dns

Troubleshooting

VPN Won't Connect
  • Verify username/password are correct
  • Check if account is active
  • Try different server
  • Switch between UDP/TCP
  • Ensure correct time/date on router
  • Clear NVRAM and reconfigure if needed
Slow Speeds
  • Router CPU may be bottleneck - check usage
  • Try AES-128 instead of AES-256
  • Disable compression
  • Use closer server
  • Consider hardware upgrade for better performance
DNS Leaks
  • Set DNS to "Strict" mode
  • Add custom DNS servers in Advanced → DHCP/DNS
  • Test at dnsleaktest.com
  • Use TorGuard's DNS servers
Random Disconnections
  • Increase keepalive interval: keepalive 10 60
  • Add to custom config: resolv-retry infinite
  • Check router temperature
  • Update to latest Tomato version

Security Best Practices

🔒 Security Recommendations

  • Change default router password
  • Disable WPS
  • Use WPA3 if available (WPA2 minimum)
  • Enable firewall logging
  • Regularly update firmware
  • Disable unnecessary services (SSH, Telnet if not used)

Alternative Configuration Methods

Import .ovpn File

Some Tomato versions support importing configuration files:

  1. Download .ovpn file from TorGuard
  2. In Tomato: VPN → OpenVPN Client → Import Configuration
  3. Browse and select file
  4. Add username/password
  5. Save and start

Multiple VPN Clients

FreshTomato supports up to 2 OpenVPN clients simultaneously:

  • Use Client 1 for general traffic
  • Use Client 2 for specific devices/purposes
  • Configure routing policies to direct traffic

Need Help?

If you're experiencing issues with your Tomato router VPN setup:

Contact Support

Include your router model and Tomato version for faster assistance

Was this article helpful?

Share:

Ready to Get Help?

Our support team is available 24/7 to assist you with any questions.