How to Remotely Access a Computer Behind a Firewall with SSH/VNC

Accessing a computer behind a firewall using SSH and VNC might sound like a daunting task, but it’s actually quite straightforward once you know the steps. Firstly, SSH (Secure Shell) allows you to remotely connect to a computer and execute commands. VNC (Virtual Network Computing) lets you see and interact with the desktop of the remote computer. Together, these tools can be used to remotely access and control a computer that’s behind a firewall.

Step by Step Tutorial: Remotely Accessing a Computer via SSH and VNC

Before we dive into the nitty-gritty, let’s understand what we’re trying to achieve. We’re going to set up a secure connection to a remote computer using SSH, and then we’ll start a VNC session to interact with the remote desktop. This two-pronged approach ensures both security and usability.

Step 1: Check the Firewall Settings

Ensure that the firewall on the remote computer allows incoming SSH connections.

Firewalls are designed to block unauthorized access, so you’ll need to make sure that the remote computer’s firewall is configured to allow SSH connections. This usually involves opening a specific port (port 22) that SSH uses.

Step 2: Install an SSH Server on the Remote Computer

Install an SSH server software on the remote computer if it’s not already installed.

Popular SSH server software includes OpenSSH and Dropbear. This software listens for incoming SSH connections and will be the bridge between your local computer and the remote machine.

Step 3: Connect to the Remote Computer via SSH

Use an SSH client to establish a secure connection to the remote computer.

An SSH client, like PuTTY for Windows or the terminal in Linux and Mac, will allow you to initiate the connection. You’ll need the remote computer’s IP address or hostname and the appropriate user credentials.

Step 4: Install a VNC Server on the Remote Computer

Once connected via SSH, install a VNC server on the remote computer.

There are many VNC servers available, such as TightVNC, RealVNC, or TigerVNC. This software will share the remote desktop and allow you to control it.

Step 5: Start a VNC Session

Start the VNC server on the remote computer and connect to it using a VNC client.

After starting the VNC server, you’ll be given a VNC address (like IP address and port number). Enter this address into your VNC client to start interacting with the remote desktop.

After you’ve completed these steps, you’ll have full access to the remote computer’s desktop, as if you were sitting right in front of it. You’ll be able to open applications, edit documents, and even reboot the system if necessary.

Tips for Remotely Accessing a Computer via SSH and VNC

  • Always use strong, unique passwords for both SSH and VNC connections to prevent unauthorized access.
  • Consider setting up a VPN (Virtual Private Network) for an added layer of security when accessing a remote computer.
  • Keep all software up to date to protect against vulnerabilities that could be exploited by attackers.
  • If possible, use SSH keys instead of passwords for a more secure SSH connection.
  • Disable the VNC server when not in use to minimize security risks.

Frequently Asked Questions

How do I know if my firewall is blocking SSH or VNC connections?

If you’re unable to connect, check the firewall settings to see if the ports used by SSH (port 22) and VNC (port 5900 by default) are open.

Can I access a computer behind a firewall without adjusting the firewall settings?

It’s not recommended as it could be seen as a breach of security. However, techniques like port forwarding or using a VPN might allow access without directly changing firewall rules.

Is it safe to access a remote computer via SSH and VNC?

Yes, if proper security measures like strong passwords, SSH keys, and updated software are used, it’s safe to access a remote computer this way.

Can I access a Windows computer using SSH and VNC?

Yes, you can. Install an SSH server and a VNC server on the Windows computer first.

What if I don’t have permission to change the firewall settings?

You’ll need to contact the network administrator or person in charge of the firewall to grant you access or make the necessary changes.


  1. Check the Firewall Settings
  2. Install an SSH Server
  3. Connect via SSH
  4. Install a VNC Server
  5. Start a VNC Session


Remotely accessing a computer behind a firewall using SSH and VNC is a powerful way to maintain productivity and provide support, no matter where you are. Although it might take a bit of setup initially, the flexibility it provides is well worth the effort. Remember, the key to a successful remote access setup is security. Always protect your connections with strong passwords or SSH keys, keep your software updated, and ensure that your firewall settings are correctly configured. Whether you’re a remote worker, IT professional, or just someone looking to access their home PC while on vacation, mastering SSH and VNC is an invaluable skill in today’s connected world. So go ahead, give it a try, and unlock the potential of remote access!