{"action":"opened","issue":{"url":"https://api.github.com/repos/shadowsocks/shadowsocks-android/issues/733","repository_url":"https://api.github.com/repos/shadowsocks/shadowsocks-android","labels_url":"https://api.github.com/repos/shadowsocks/shadowsocks-android/issues/733/labels{/name}","comments_url":"https://api.github.com/repos/shadowsocks/shadowsocks-android/issues/733/comments","events_url":"https://api.github.com/repos/shadowsocks/shadowsocks-android/issues/733/events","html_url":"https://github.com/shadowsocks/shadowsocks-android/issues/733","id":162423733,"number":733,"title":"[report for wiki] turns out it IS possible to tunnel OpenVPN over shadowsocks on android","user":{"login":"tonsimple","id":19839514,"avatar_url":"https://avatars.githubusercontent.com/u/19839514?v=3","gravatar_id":"","url":"https://api.github.com/users/tonsimple","html_url":"https://github.com/tonsimple","followers_url":"https://api.github.com/users/tonsimple/followers","following_url":"https://api.github.com/users/tonsimple/following{/other_user}","gists_url":"https://api.github.com/users/tonsimple/gists{/gist_id}","starred_url":"https://api.github.com/users/tonsimple/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/tonsimple/subscriptions","organizations_url":"https://api.github.com/users/tonsimple/orgs","repos_url":"https://api.github.com/users/tonsimple/repos","events_url":"https://api.github.com/users/tonsimple/events{/privacy}","received_events_url":"https://api.github.com/users/tonsimple/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":0,"created_at":"2016-06-27T10:47:09Z","updated_at":"2016-06-27T10:47:09Z","closed_at":null,"body":"Hi!\r\nJust reporting it in a separate issue because it might be of interest and might warrant being put on a wiki.\r\n\r\nLong story short, you can run openvpn over shadowsocks on android\r\n\r\nPrerequisites \r\nRoot\r\nBusybox\r\nShadowsocks (specifically the ss-local binary)\r\n\r\nFirst, create a custom folder (let's say /data/custom) in /data/ and move ss-local there \r\ncreate a config for shadowsocks there \r\n\r\nNB! Disable \"normal\" shadowsocks VPN (of course)\r\n\r\nshadowsocks must be launched as root \r\n\r\nsu -c sh nohup /data/custom/ss-local -u -A -f /data/custom/custompid.pid -c /data/custom/shadowsocksconfig.conf&\r\n\r\nLet's say our config specifies port 2090 as the listening one for our manually launched, root-user shadowsocks (to ensure it doesn't conflict with anything)\r\nLet's say our shadowsocks server is 107.183.14.53\r\n\r\nNow configure ics-openvpn (only android openvpn client to support socks-proxy directive)\r\n\r\nCreate a normal openvpn config\r\n\r\nNow enable custom options under server\r\nAdd socks-proxy 127.0.0.1:2090 \r\n\r\nNow go to routing tab and add 107.183.14.53/32 under Excluded Networks\r\n\r\nAttempt connection.\r\n\r\nSurprisingly enough, connection is established and ipleak.net shows the openvpn server's IP\r\n\r\nN.B.\r\nIt does not work if shadowsocks is not run as root."}}
{"actor":{"display_login":"tonsimple"}}