{"id":20796769,"url":"https://github.com/cpscript/vpn-server","last_synced_at":"2025-06-16T09:32:57.791Z","repository":{"id":226454755,"uuid":"768728873","full_name":"CPScript/VPN-Server","owner":"CPScript","description":"Setup a OpenVPN server on your phone and let other devices connect!","archived":false,"fork":false,"pushed_at":"2024-03-07T16:28:51.000Z","size":3,"stargazers_count":13,"open_issues_count":1,"forks_count":1,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-01-18T11:29:21.380Z","etag":null,"topics":["termux","vpn"],"latest_commit_sha":null,"homepage":"","language":null,"has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/CPScript.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null}},"created_at":"2024-03-07T16:15:52.000Z","updated_at":"2025-01-14T14:01:25.000Z","dependencies_parsed_at":"2024-03-07T17:45:15.149Z","dependency_job_id":null,"html_url":"https://github.com/CPScript/VPN-Server","commit_stats":null,"previous_names":["cpscript/vpn-server"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/CPScript%2FVPN-Server","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/CPScript%2FVPN-Server/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/CPScript%2FVPN-Server/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/CPScript%2FVPN-Server/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/CPScript","download_url":"https://codeload.github.com/CPScript/VPN-Server/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243141257,"owners_count":20242817,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["termux","vpn"],"created_at":"2024-11-17T16:28:58.433Z","updated_at":"2025-03-12T01:44:37.810Z","avatar_url":"https://github.com/CPScript.png","language":null,"readme":"# HOW TO MAKE YOUR PHONE HOST A `OpenVPN` SERVER USING TERMUX\n\n\u003e I dont know why i'm doing this... BUT\n\n## Step 1: Install Termux\nFirst, you need to `install Termux` from the Google Play Store or `F-Droid`. (I like to install it using `F-Droid`)\n\n## Step 2: Install OpenVPN\n`OpenVPN` is a popular VPN protocol that is highly secure and easy to set up. You can install it on Termux by running the following commands:\n```\npkg update\npkg install openvpn\n```\nVery simple :P\n\n## Step 3: Generate Certificates and Keys\nOpenVPN requires a set of `certificates and keys` to function. \n\nYou can generate these using the `easy-rsa` package. Install it and then use it to generate your keys:\n```\npkg install easy-rsa\neasyrsa init-pki\neasyrsa build-ca\neasyrsa gen-dh\neasyrsa build-server-full server nopass\neasyrsa build-client-full client nopass\n```\nThis will create a set of certificates and keys in the `pki` directory under your home directory.\n\n\n## Step 4: Configure OpenVPN\nYou need to create a configuration file for OpenVPN. Create a new file named `server.conf` and add the following content:\n\n```\nport 1194\nproto udp\ndev tun\nca /path/to/your/pki/ca.crt  \u003e Replace path!\ncert /path/to/your/pki/server.crt  \u003e Replace path!\nkey /path/to/your/pki/server.key  \u003e Replace path!\ndh /path/to/your/pki/dh.pem  \u003e Replace path!\nserver 10.8.0.0 255.255.255.0\nifconfig-pool-persist ipp.txt\npush \"redirect-gateway def1 bypass-dhcp\"\npush \"dhcp-option DNS 208.67.222.222\"\npush \"dhcp-option DNS 208.67.220.220\"\nkeepalive 10 120\ncipher AES-256-CBC\nuser nobody\ngroup nogroup\npersist-key\npersist-tun\nstatus openvpn-status.log\nverb 3\n```\nReplace `/path/to/your/pki/` with the actual path to your `pki` directory.\n\n## Step 5: Start OpenVPN Server\nNow you can start the OpenVPN server by running:\n```\nopenvpn --config /path/to/your/server.conf\n```\n\n## Step 7: Connect to the VPN\nOn a differant device, use an OpenVPN client app to connect to the VPN using the `client.ovpn` file. You will need to enter the username and password you set when generating the client certificate.\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcpscript%2Fvpn-server","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcpscript%2Fvpn-server","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcpscript%2Fvpn-server/lists"}