NaiveProxy is the SlipNet protocol you can use on iPhone and iPad. It makes your traffic look like normal HTTPS browsing, and you connect with the Shadowrocket app. This guide covers setup, the routing setting you must change, and common fixes.
Try these first
On iOS there are simpler options that often work on restricted networks:
- The PremierVPN iOS app. Leave the protocol on Auto and it tries WireGuard, AmneziaWG and VLESS (REALITY, xHTTP and CDN) for you. See How to set up the PremierVPN iOS app.
- Our PremierNexus app for StormDNS. See Setting Up PremierNexus on iOS (StormDNS).
If those are blocked on your network, set up NaiveProxy as below.
What you need
- An active PremierVPN VPN plan
- An iPhone or iPad
- The Shadowrocket app from the App Store (a paid app)
Step 1: Install Shadowrocket
Buy and install Shadowrocket from the App Store.
Shadowrocket isn't sold in every App Store region, and the App Store is often unavailable on Iranian Apple IDs. If you can't find or buy it, you'll need an Apple ID registered in a country where it's available.
Step 2: Get your NaiveProxy details
- Sign in to the portal and go to Anti-Censorship › SlipNet.
- Click Activate on a server, if you haven't already.
- Scroll down and open the iOS Setup Guide section for NaiveProxy via Shadowrocket.
- For each server you've activated, you'll see its Address, Port (443), Username and Password. Use Show and the copy buttons to get the password exactly.
Step 3: Add the server in Shadowrocket
- Open Shadowrocket and tap + to add a server.
- Set Type to HTTPS.
- Enter the Address from the portal.
- Set Port to
443. - Enter your Username and Password from the portal.
- Make sure TLS is on.
- Tap Save.
Step 4: Set Global Routing to Proxy
This step is essential. Without it, Shadowrocket shows as connected but websites won't load.
- On Shadowrocket's home screen, find Global Routing.
- Select Proxy.
- Don't use Config or Direct. They don't send your DNS through the proxy.
Step 5: Connect
- Select the server you added.
- Turn on the connection switch at the top.
- The first time, iOS asks to add a VPN configuration. Tap Allow and confirm with Face ID, Touch ID or your passcode.
- When VPN appears in the status bar, open Safari and load a website to check.
Only one VPN app can be active on iOS at a time. Turn off the PremierVPN app, PremierNexus or any other VPN before connecting with Shadowrocket.
Troubleshooting
- Connected but nothing loads: check that Global Routing is set to Proxy. If it is, change your DNS settings: see How to Change DNS Settings on iOS.
- Connection refused or fails at once: check the address, port 443, username and password. Make sure there are no extra spaces, and that TLS is on.
- It stopped working: activate a second server on the SlipNet page and add it to Shadowrocket too, so you have a fallback.
- Still blocked: NaiveProxy needs HTTPS to our server to get through. If it's blocked, try the PremierVPN app or PremierNexus instead.
Fixing an "impersonation" warning after disconnecting
If Safari warns that a website may be impersonated after you stop using NaiveProxy, a Shadowrocket setting may still be active. To clear it:
- In Shadowrocket, turn the connection switch off.
- Go to Settings › General › VPN & Device Management and remove any Shadowrocket VPN or profile entries you no longer need.
- Go to Settings › Safari › Clear History and Website Data.
- Restart your iPhone or iPad.
Still stuck? Open a support ticket and tell us your device, app version and what you've tried.