FreeVPNNet

How to set up SSH Tunnel on Android

An SSH tunnel sends your traffic through the server using a username and password. Besides plain SSH, the server also accepts SSH over TLS and over WebSocket, which help on restrictive networks.

Last reviewed

What you need

  • An active SSH configuration from this site
  • Hostname, ports, username and password from your configuration page

App

HTTP Injector

Get it from Google Play

Official source only.

Where each detail goes

Account details and the matching fields in the app
On your configuration pageIn the app or settings
HostnameHost / Server
PortSSH port
SSL/TLS portSSL/TLS (stunnel) port, with SNI if shown
WebSocket portWebSocket port (and path for WS+TLS)
Username / PasswordUsername / Password

Steps

  1. Install HTTP Injector from Google Play (link above). HTTP Custom also works.

    Illustration of step 1: Install HTTP Injector from Google Play (link above). HTTP Custom also works.
    Illustration — your app may look slightly different.
  2. Create an SSH connection and enter your Hostname, Port, username and password.

    Illustration of step 2: Create an SSH connection and enter your Hostname, Port, username and password.
    Illustration — your app may look slightly different.
  3. For restrictive networks choose the SSL/TLS or WebSocket option and use the matching port from your configuration page.

    Illustration of step 3: For restrictive networks choose the SSL/TLS or WebSocket option and use the matching port from your configuration page.
    Illustration — your app may look slightly different.
  4. Tap Start and allow the VPN request.

    Illustration of step 4: Tap Start and allow the VPN request.
    Illustration — your app may look slightly different.

Check that it works

The app shows it is connected (or the terminal stays open without errors). Search the web for "what is my IP" in a browser that uses the tunnel.

Disconnect

Tap Stop.

Troubleshooting

Permission denied / auth failed

Copy the username and password again from your configuration page. The configuration may have expired.

Connection times out

Your network may block port 22. Switch the app to SSL/TLS or WebSocket mode using the ports on your configuration page.

Only the browser uses the VPN

That is normal for a SOCKS proxy on computers. Set the proxy in the system network settings to cover more apps.