Access your system from anywhere: Guacamole

In this article, I am writing a very useful solution to access your systems from anywhere on the internet. Apache Guacamole (https://guacamole.apache.org/) is a web application which can be installed in the network system. We can add the all systems there to make them accessible from internet. Note that the web page should be accessible from internet. So, all systems can be accessed from a webpage which uses HTTP protocol.

Why I need Guacamole?

So, I have setup a homelab with two server computers which run 24 hours a day. When I am at home , I will be in the same network, I can access the servers using SSH. But what if you are in different network and you need to urgently fix some server issues or update something in the server? I have no choice, but install Guacamole and make your systems connect using SSH. There are many other alternatives too to access your systems, but I prefer SSH.

Installation

The installation can be done by downloading the installtation files from https://guacamole.apache.org/releases/

But I prefer using Docker to install Guacamole and we can run it in container. I have written docker compose file for the installation.

docker-compose.yml

version: "3"
services:
  guacamole:
    image: abesnier/guacamole
    container_name: guacamole
    user: root
    volumes:
      - ./volumes/config:/config
    ports:
      - 8731:8080

By running the following command, the Guacamole is up and running.

docker-compose up -d

Now Apache Guacamole can be accessed using the port 8731. For example:

http://localhost:8731

You can login with default username and password (guacadmin/guacadmin) to login. After login, you need to change the password immediately.

How to add a System

To add a system, you have to go to settings (visible under the login name on top right corner). You can add a new system by choosing Connections -> New Connection.

I have selected SSH protocol to connect.

In PARAMETERS section, I have filled Network and Authentication group as follows:

Other fields can be left empty. Then click the Save button. Then go to “Home”, you will see the recently added connection. When you click there, you can access the system via SSH Terminal.

Congratulations!

Leave a Reply

Your email address will not be published. Required fields are marked *