Fuzzball Documentation
Toggle Dark/Light/Auto mode Toggle Dark/Light/Auto mode Toggle Dark/Light/Auto mode Back to homepage

Establish the SSH Tunnel

On your local workstation, open a terminal and establish an SSH connection with SOCKS proxy enabled:

# ssh -D 8080 -N <user>@<server_node_address>

Here’s an explanation of the different parts of the command:

  • -D 8080: Sets up a dynamic SOCKS proxy on your local machine, listening on port 8080. You can choose a different port if 8080 is already in use, but remember to adjust subsequent steps accordingly.

  • -N: Tells SSH not to execute a remote command. We only want the tunnel, not a shell on the server.

  • <user>@<server_node_address>: Replace this with your username and the address of your Server Node. This is the same address you would use to SSH into the server normally. For example: root@192.168.1.100

That’s all. After running this command, it will appear to hang. This is expected behavior. The tunnel is now active in the background. Do not close this terminal window, as doing so will terminate the tunnel.

Testing the Tunnel

You can verify that the tunnel is functioning properly with a curl command. Open a new terminal window on your local machine and run the following:

# curl --proxy socks5h://localhost:8080 http://<your-ingress-hostname>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <link rel="icon" type="image/svg+xml" href="/favicon-32x32.png" />
    <meta name="theme-color" content="#021E37" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <script src="/init.js"></script>
    <title>Fuzzball</title>
    <script type="module" crossorigin src="/assets/index-DyhR37kp.js"></script>
    <link rel="stylesheet" crossorigin href="/assets/index-B94Acsvk.css">
  </head>
  <body>
    <div id="root"></div>
  </body>
</html>

Replace <your-ingress-hostname> with the actual User UI Ingress hostname from your Fuzzball deployment and adjust 8080 if you changed the port of the SOCKS proxy.

Great! If you see the HTML content of the Fuzzball Admin UI page, the tunnel is working correctly. The final step is to configure your browser to use the SOCKS proxy you’ve just set up!