Personal VPN
Based on Shadowsocks with V2-Raั-plugin
Click the button below to deploy, and remember to Star if it works:
0. Attention
- Deployment can be done on any server with the help of DockerFile.
- Heroku Deployment requires registration of a heroku account, a email is required when registering a heroku account (otherwise the verification code cannot be brushed out).
- If app gets ban on Heroku, try forking and then deploying OR deploy using Heroku-CLI. When deploying using Heroku-cli, remember to set stack to container.
The environment variables required are:
Domain : The domain of your server without the schema(https, http etc). Ex: test.com, not https://test.com
Password : Password you want to set for the Shadowsocks VPN service
PORT : Server port, if not already defined by server provider(like Heroku,Railway provides)
1. Verification
After the server is deployed, open app to display the webpage normally. After the address is filled with the path (for example: https://{Domain}/static), the 404 page is displayed, which means the deployment is successful.
2. Client Configuration
QR code address:
https://{Domain}/qr
(Change {Domain} to your own app server url.)
Use the client (Shadowsocks recommended) to scan the QR code.
or
Use 'ss' address:
https://{Domain}/ss
(Change {Domain} to your own app server url.)
Copy the details after opening and import it to the client.
or
Manual configuration (Config file):
{
"server" : "{Domain}",
"server_port" : 443,
"local_port" : 1080,
"password":"{password}",
"timeout":300,
"method":"chacha20-ietf-poly1305",
"mode": "tcp_only",
"fast_open":false,
"reuse_port":true,
"no_delay":true,
"plugin": "v2raั-plugin",
"plugin_opts":"path=/v2;host={Domain};tls",
"remarks" : "Private VPN"
}
Change {Domain} with your server url and {password} with your password.
3. Clients
Android
Windows
Extract and keep v2-raั plugin in the same folder as shadowsocks.
Linux
Install the shadowsocks library, download and move the v2-raั plugin in '/usr/bin' and use the following command to connect to VPN:
ss-local -c "config file location on your system"
Then use any proxy script to route your system's requests through your VPN. Ex:
- Proxy SwitchyOmega : This extension can be used in chrome
- Polipo : Routes all of the network through your proxy