NaïveProxy Setup Guide
What is NaïveProxy?
NaïveProxy is a lightweight, high-performance proxy tool designed to bypass internet censorship. It supports both HTTP/2 and HTTP/3, and disguises itself as regular web traffic. Built on Chromium with integrated TLS encryption, it's secure, fast, and efficient—perfect for avoiding restrictions without drawing attention.
Why Choose NaïveProxy?
- Looks Like Normal Traffic: Uses Chromium’s TLS stack, so it blends in like any other browser session.
- Simple to Use: Easy to set up even if you're not super technical.
Getting Started with NaïveProxy + Caddy
What You’ll Need
- A domain name, preferably managed through Cloudflare or a similar DNS provider.
- A Linux VPS with ports 443 and 80 open.
- Basic requirements:
- Some familiarity with the command line
- Root access to your server
Step-by-Step Setup
1. Switch to the Root User
sudo -s
2. Update Your System
apt update
3. Install Go
apt-get install software-properties-common
add-apt-repository ppa:longsleep/golang-backports
apt-get update
apt-get install golang-go
4. Install xcaddy
go install github.com/caddyserver/xcaddy/cmd/xcaddy@latest
5. Build Caddy with the NaïveProxy Plugin
~/go/bin/xcaddy build \
--with github.com/caddyserver/forwardproxy@caddy2=github.com/klzgrad/forwardproxy@naive
Configuration
6. Create a Caddyfile
Make a new file called Caddyfile
and paste in the following. Be sure to replace the placeholder values with your own:
:443, your-domain.com
tls your-email@example.com
route {
forward_proxy {
basic_auth username password
hide_ip
hide_via
probe_resistance
}
reverse_proxy https://example.com {
header_up Host {upstream_hostport}
header_up X-Forwarded-Host {host}
}
}
Make sure to replace
your-domain.com
,your-email@example.com
,username
,password
, andhttps://example.com
with your actual values.
Caddy Commands
Run in the foreground
./caddy run
Run in the background
./caddy start
Stop server
./caddy stop
Reload the configuration
./caddy reload
Getting it Running
7. Generate SSL Certificates
Start Caddy once to generate SSL certificates:
./caddy run
Once you see it’s running, press Ctrl + C
to stop it.
8. Start Caddy in the Background
./caddy start
You're Done!
Your NaïveProxy server is now up and running.
Set up your client to connect using the domain, username, and password you defined, using port 443. Don’t forget to use the domain name in the Server Name Indication (SNI) field. Everything else can stay at default settings.