Set up a personal proxy server to access blocked websites from countries with heavy network filtering.
Route application traffic through a censorship-resistant proxy that mimics real Chrome browser behavior.
Deploy a server-side proxy hidden behind a normal-looking website using Caddy so external probes see nothing unusual.
Use NaiveProxy on Android through a third-party app without needing to set up a separate VPN.
Requires a VPS outside the restricted network and manual Caddy web server configuration on the server side.
NaiveProxy is a proxy tool built to help people access the internet in environments where traffic is monitored and selectively blocked, commonly called censorship or filtering. It works by disguising internet traffic so that it looks indistinguishable from ordinary web browsing using a Chrome browser. This makes it significantly harder for blocking systems to identify and stop. The way it achieves this disguise is by reusing Chromium's actual network code, the same code that powers the Chrome browser. Because the traffic it produces comes from the same code a real Chrome browser uses, it passes many of the fingerprinting and inspection techniques that censorship systems rely on. Additional protections include hiding the proxy server behind an ordinary web server (so that anyone probing the server from outside just sees a normal website), adding random padding to packet lengths to obscure usage patterns, and routing traffic through standard web protocols rather than protocols that look unusual. The setup has two parts. A server component runs on a machine outside the restricted network, typically using a web server tool called Caddy to handle incoming connections. A client component runs on the user's local machine and creates a local proxy endpoint that other applications can route traffic through. NaiveProxy supports Windows, Linux, macOS, Android (through several third-party apps), and OpenWrt (a router operating system). It also integrates with the v2rayN graphical client for users who prefer not to use the command line. The README contains a detailed technical section explaining the padding protocol it uses to blend traffic lengths with typical browser behavior. The full README is longer than what was shown.
← klzgrad on gitmyhub — every repo by this author, as a profile.
Verify against the repo before relying on details.