diff --git a/docs/guides/applications/remote-desktop/install-and-use-meshcentral/index.md b/docs/guides/applications/remote-desktop/install-and-use-meshcentral/index.md new file mode 100644 index 00000000000..4ea17e197b8 --- /dev/null +++ b/docs/guides/applications/remote-desktop/install-and-use-meshcentral/index.md @@ -0,0 +1,224 @@ +--- +slug: install-and-use-meshcentral +title: "How to Install and Use MeshCentral" +description: "MeshCentral is an open-source, web-based remote monitoring and management system. With your MeshCentral server, you can connect to device UIs, terminals, and file systems for administration. Learn how to install a self-hosted MeshCentral server of your own through this tutorial." +keywords: ['meshcentral install','meshcentral vs teamviewer','remote monitoring and management'] +license: '[CC BY-ND 4.0](https://creativecommons.org/licenses/by-nd/4.0)' +authors: ['Nathaniel Stickman'] +published: 2023-06-27 +modified_by: + name: Nathaniel Stickman +external_resources: +- '[GitHub: Ylianst/MeshCentral](https://github.com/Ylianst/MeshCentral)' +- '[MeshCentral](https://www.meshcommander.com/meshcentral2)' +- '[MeshCentral Community Wiki](https://meshcentral-community.com/doku.php?id=start)' +--- + +MeshCentral offers an open-source solution for remote monitoring and management. Through MeshCentral's web interface, you can work with devices remotely with features like remote desktop, shell, and file browser. + +Find out more in this tutorial. Learn how to install your own MeshCentral server and how to start using it to remotely administer Windows and Linux machines. + +## Before You Begin + +1. If you have not already done so, create a Linode account and Compute Instance. See our [Getting Started with Linode](/docs/guides/getting-started/) and [Creating a Compute Instance](/docs/guides/creating-a-compute-instance/) guides. + +1. Follow our [Setting Up and Securing a Compute Instance](/docs/guides/set-up-and-secure/) guide to update your system. You may also wish to set the timezone, configure your hostname, create a limited user account, and harden SSH access. + +{{< note >}} +This guide is written for a non-root user. Commands that require elevated privileges are prefixed with `sudo`. If you’re not familiar with the `sudo` command, see the [Users and Groups](/docs/guides/linux-users-and-groups/) guide. +{{< /note >}} + +## What Is MeshCentral? + +[MeshCentral](https://github.com/Ylianst/MeshCentral) is a remote monitoring and management (RMM) system. What is an RMM? An RMM provides remote access to client systems. This makes RMMs helpful for system administrators, technical support, and others. + +MeshCentral operates out of a self-hosted web interface, making its features accessible and adaptable. Deploy a self-hosted MeshCentral server, and use your browser to connect to devices MeshCentral's a robust set of administration tools. + +Specifically, MeshCentral gives access to remote desktop, shell, and file browsing on connected devices. And MeshCentral can additionally execute general actions on its connected computers, like wake ups, restarts, and shut downs. + +What does an RMM like MeshCentral offer vs TeamViewer? TeamViewer is likewise an RMM, and similarly focuses on remote accessibility. But MeshCentral has the advantage of being open source. This makes MeshCentral free, more adaptable, and more in your control. + +## How to Install MeshCentral + +MeshCentral's web interface runs on a self-hosted server instance, which also manages device connections. So before getting started using MeshCentral to monitor and manage your remote systems, you need to have a server to run it on. + +Below you can see two main paths for setting up your own MeshCentral server. By the end of either approach, you should have a fully-operational MeshCentral instance, accessible through you browser, with an administrator user configured. + +### To Use with Tactical RMM + +Tactical RMM provides remote monitoring and management similar to MeshCentral. Tactical sets itself apart from MeshCentral, however, in its additional handling of features like automated alerts and bulk remote commands/scripts. + +At the same time as adding such features, a Tactical RMM installation includes its own installation of MeshCentral. Tactical leverages MeshCentral's real-time remote features, and at the same time gives full access to its included MeshCentral instance. + +For this reason, one of the best options for installing MeshCentral is actually installing Tactical RMM. You get MeshCentral alongside the wider RMM features of Tactical. + +To install Tactical RMM, and learn more generally about it, refer to our guide [How to Install Tactical RMM](/docs/guides/installing-tactical-rmm/). For more on using MeshCentral and Tactical RMM alongside each other, see our guide [How to Integrate Tactical RMM with MeshCentral](/docs/guides/integrating-tactical-rmm-with-meshcentral/). + +#### Accessing MeshCentral with Tactical RMM + +Tactical RMM installations typically run MeshCentral on a `mesh` subdomain. So, if the base domain for your Tactical server is `example.com`, you would find your MeshCentral instance at `https://mesh.example.com`. + +The Tactical installation script automatically deploys both Tactical and MeshCentral with a reverse proxy and SSL certificate. Doing so saves you the trouble of manually configuring these features and makes both services easier to access from the start. + +To access the MeshCentral interface, navigate to your Tactical server's MeshCentral address in a web browser. Then, use the credentials given at the end of the Tactical installation script to log in. + +![Logging into a MeshCentral instance](meshcentral-tactical-login.png) + +After logging in, you should be directed to the MeshCentral dashboard. Any devices you have configured with agents in Tactical RMM should also appear on the MeshCentral dashboard, providing ready access to those machines. + +[![MeshCentral dashboard via Tactical RMM](meshcentral-tactical-dashboard_small.png)](meshcentral-tactical-dashboard.png) + +### To Use Independently + +You may just want the MeshCentral features, or you may want to keep MeshCentral and Tactical RMM separate for greater control. For those and similar cases, MeshCentral can also be installed without Tactical RMM. + +MeshCentral is built on Node.js, and you can install it using the Node Package Manager. The steps below show you how to create a new NPM project for MeshCentral and how to run the server from there. + +#### Setting Up the Project + +1. Install Node.js. You can do so using the Node Version Manager (NVM). Follow the steps in our guide [Installing and Using NVM](/docs/guides/how-to-install-use-node-version-manager-nvm/) to install NVM and then use NVM to install Node.js. + +1. Create a directory for the MeshCentral project, and change into that directory. + + ```command + mkdir ~/meshcentral/ + cd ~/meshcentral/ + ``` + +1. Install MeshCentral to the project directory using NPM. + + ```command + npm install meshcentral + ``` + +#### Running MeshCentral + +1. Run the MeshCentral module to start up a MeshCentral server. A script runs to set up prerequisites, and afterward the output should indicate that the server is running. + + For this example, the port is designated as `8080`. You can choose another port, but specifying one is helpful for consistency. + + ```command + node node_modules/meshcentral --port 8080 + ``` + + ```output + [...] + Server has no users, next new account will be site administrator. + MeshCentral HTTPS server running on port 8080. + ``` + +1. Navigate to the MeshCentral interface in a web browser. Following the example above, you would navigate to `https://localhost:8080`. + + To navigate to the interface remotely at this stage, you can use an SSH tunnel. Find steps for doing so in our guide on [accessing Futon over SSH](/docs/guides/access-futon-over-ssh-using-putty-on-windows/#establish-an-ssh-connection). Replace the port number in that guide (`5984`) with your MeshCentral port number — `8080` in the example above. + + {{< note >}} + Your browser may give you a warning message when visiting the MeshCentral instance. At this stage, the instance is using self-signed SSL certificates. You need to bypass the warning in order to access the instance. + + The next section gives you some options for subsequently setting up your MeshCentral instance for wider accessibility, including properly signed SSL certificates. + {{< /note >}} + +1. From the login page, choose the **Create Account** option, and enter credentials for a new administrator user. + + ![Creating an initial MeshCentral account](meshcentral-create-account.png) + +1. You should be directed to the MeshCentral dashboard. + + [![MeshCentral dashboard](meshcentral-dashboard_small.png)](meshcentral-dashboard.png) + +#### Completing the MeshCentral Server + +The above installation process starts running a MeshCentral server. However, the server is relatively difficult to access remotely, and it uses self-signed certificates that cause browser warnings. + +To remedy these issues, you can set up a reverse proxy to the MeshCentral server, and configure that proxy with signed SSL certificates. + +NGINX is a frequently-used solution for setting up a reverse proxy server. Alongside that, Certbot provides a relatively easy way to obtain SSL certificates signed by Let's Encrypt. + +Our guide [Use NGINX as a Reverse Proxy](/docs/guides/use-nginx-reverse-proxy/) covers a full process for setting up a reverse proxy and deploying Let's Encrypt certificates. + +The guide builds the reverse proxy around a simple Node.js application, and the setup should be easily adaptable to MeshCentral. Just replace the application's port `3000` with your MeshCentral port (`8080` in the preceding example). + +## How to Use MeshCentral + +With your MeshCentral server running, you are now in a position to start using it for remotely monitoring and managing some systems. The next step in accomplishing that goal is deploying MeshCentral agents on remote devices, which you can see the steps for just below. + +Once you have your agents deployed, keep following along to get an overview of how MeshCentral gives you access to connected devices. Being familiar with MeshCentral's features can help you get started using it effectively for monitoring and managing your remote systems. + +### Deploying an Agent + +A MeshCentral agent needs to be installed on each device you intend to connect to using MeshCentral. The agent essentially facilitates the connection, running the necessary processes on the connected machine. + +1. On the target device, navigate to your MeshCentral URL. With the Tactical RMM example, that URL would be `https://mesh.example.com`. With an independent MeshCentral installation, the default is a localhost instance, using SSH tunneling as discussed above. + +1. Login using your MeshCentral credentials. + +1. Select the **Add Agent** option from the MeshCentral dashboard. + +1. Complete the form, selecting your operating system type and the kind of agent installation you want. Then, download and run the installation executable. + + {{< tabs >}} + {{< tab "Windows" >}} + + ![Downloading a Windows agent from MeshCentral](meshcentral-windows-agent.png) + + 1. Download the executable that matches your system's CPU, then run that executable. + + 1. Complete the setup prompts to install and then connect your agent. + + 1. Close out the installation interface once you have connected the agent. + + {{< note >}} + Windows may require you to verify that you want to run the executable. Select *More Info*, and select the **Run Anyway** option. + {{< /note >}} + + {{< /tab >}} + {{< tab "Linux" >}} + + ![Downloading a Linux agent from MeshCentral](meshcentral-linux-agent.png) + + 1. Choose the Linux **Binary Installation** option, and download the binary. + + 1. Open a terminal, change into the directory with the binary, and run the commands here. These give the binary executable permission and then run the installation process. + + ```command + chmod +x meshagent + sudo ./meshagent -install + ``` + + {{< note >}} + MeshCentral requires Xorg, rather than Wayland, for the GNOME desktop server. Open the `/etc/gdm/custom.conf` file, and uncomment the `WaylandEnable=false` line to make the change if necessary. + {{< /note >}} + + {{< /tab >}} + {{< /tabs >}} + +1. Review the MeshCentral dashboard again, and you should instantly see the new device listed. + + [![MeshCentral with a new device added](meshcentral-tactical-dashboard-new_small.png)](meshcentral-tactical-dashboard-new.png) + +### Accessing a Device + +Selecting a device from the MeshCentral dashboard takes you to a summary page, providing information about the device and its connection. The page also gives you access to a range of options for interacting with the device. + +To start, the **Actions** button provides you with basic functions like *Wake Up*, *Power Off*, and even *Uninstall Agent*. + +From there, the range of MeshCentral remote functions become available from the tabs at the top of the page. Each of the first several of these tabs corresponds to a different kind of remote connection. + +Below you can see a summary of each. Within each tab, select the **Connect** option to start the remote connection, and afterward the **Disconnect** option to end the connection. + +- **Desktop**. Gives you access to a remote desktop on the device. + + ![MeshCentral remote desktop to a Windows machine](meshcentral-tactical-desktop.png) + +- **Terminal**. Starts a terminal as the root user on the remote device. + + [![MeshCentral remote terminal to a Linux machine](meshcentral-tactical-shell_small.png)](meshcentral-tactical-shell.png) + +- **Files**. Accesses the remote file system to browse the files. + + [![MeshCentral remote file browser to a Linux machine](meshcentral-tactical-files_small.png)](meshcentral-tactical-files.png) + +## Conclusion + +MeshCentral provides a powerful open-source tool for real-time remote monitoring and management. Whether for system administrators, technical support, or otherwise, these features can bring significant efficiency. + +For even more remote monitoring and management features, be sure to look at our related guides: [How to Install Tactical RMM](/docs/guides/installing-tactical-rmm/) and [How to Integrate Tactical RMM with MeshCentral](/docs/guides/integrating-tactical-rmm-with-meshcentral/). diff --git a/docs/guides/applications/remote-desktop/install-and-use-meshcentral/meshcentral-create-account.png b/docs/guides/applications/remote-desktop/install-and-use-meshcentral/meshcentral-create-account.png new file mode 100644 index 00000000000..0b62e19983a Binary files /dev/null and b/docs/guides/applications/remote-desktop/install-and-use-meshcentral/meshcentral-create-account.png differ diff --git a/docs/guides/applications/remote-desktop/install-and-use-meshcentral/meshcentral-dashboard.png b/docs/guides/applications/remote-desktop/install-and-use-meshcentral/meshcentral-dashboard.png new file mode 100644 index 00000000000..b681db64da6 Binary files /dev/null and b/docs/guides/applications/remote-desktop/install-and-use-meshcentral/meshcentral-dashboard.png differ diff --git a/docs/guides/applications/remote-desktop/install-and-use-meshcentral/meshcentral-dashboard_small.png b/docs/guides/applications/remote-desktop/install-and-use-meshcentral/meshcentral-dashboard_small.png new file mode 100644 index 00000000000..384a4b5fdc2 Binary files /dev/null and b/docs/guides/applications/remote-desktop/install-and-use-meshcentral/meshcentral-dashboard_small.png differ diff --git a/docs/guides/applications/remote-desktop/install-and-use-meshcentral/meshcentral-linux-agent.png b/docs/guides/applications/remote-desktop/install-and-use-meshcentral/meshcentral-linux-agent.png new file mode 100644 index 00000000000..0e2cdcb9c74 Binary files /dev/null and b/docs/guides/applications/remote-desktop/install-and-use-meshcentral/meshcentral-linux-agent.png differ diff --git a/docs/guides/applications/remote-desktop/install-and-use-meshcentral/meshcentral-tactical-dashboard-new.png b/docs/guides/applications/remote-desktop/install-and-use-meshcentral/meshcentral-tactical-dashboard-new.png new file mode 100644 index 00000000000..c071b071714 Binary files /dev/null and b/docs/guides/applications/remote-desktop/install-and-use-meshcentral/meshcentral-tactical-dashboard-new.png differ diff --git a/docs/guides/applications/remote-desktop/install-and-use-meshcentral/meshcentral-tactical-dashboard-new_small.png b/docs/guides/applications/remote-desktop/install-and-use-meshcentral/meshcentral-tactical-dashboard-new_small.png new file mode 100644 index 00000000000..fd0bc09d923 Binary files /dev/null and b/docs/guides/applications/remote-desktop/install-and-use-meshcentral/meshcentral-tactical-dashboard-new_small.png differ diff --git a/docs/guides/applications/remote-desktop/install-and-use-meshcentral/meshcentral-tactical-dashboard.png b/docs/guides/applications/remote-desktop/install-and-use-meshcentral/meshcentral-tactical-dashboard.png new file mode 100644 index 00000000000..8ccd31542b6 Binary files /dev/null and b/docs/guides/applications/remote-desktop/install-and-use-meshcentral/meshcentral-tactical-dashboard.png differ diff --git a/docs/guides/applications/remote-desktop/install-and-use-meshcentral/meshcentral-tactical-dashboard_small.png b/docs/guides/applications/remote-desktop/install-and-use-meshcentral/meshcentral-tactical-dashboard_small.png new file mode 100644 index 00000000000..9e7b54c2953 Binary files /dev/null and b/docs/guides/applications/remote-desktop/install-and-use-meshcentral/meshcentral-tactical-dashboard_small.png differ diff --git a/docs/guides/applications/remote-desktop/install-and-use-meshcentral/meshcentral-tactical-desktop.png b/docs/guides/applications/remote-desktop/install-and-use-meshcentral/meshcentral-tactical-desktop.png new file mode 100644 index 00000000000..ae5e731657a Binary files /dev/null and b/docs/guides/applications/remote-desktop/install-and-use-meshcentral/meshcentral-tactical-desktop.png differ diff --git a/docs/guides/applications/remote-desktop/install-and-use-meshcentral/meshcentral-tactical-device.png b/docs/guides/applications/remote-desktop/install-and-use-meshcentral/meshcentral-tactical-device.png new file mode 100644 index 00000000000..74c6fc08023 Binary files /dev/null and b/docs/guides/applications/remote-desktop/install-and-use-meshcentral/meshcentral-tactical-device.png differ diff --git a/docs/guides/applications/remote-desktop/install-and-use-meshcentral/meshcentral-tactical-device_small.png b/docs/guides/applications/remote-desktop/install-and-use-meshcentral/meshcentral-tactical-device_small.png new file mode 100644 index 00000000000..515e34cff82 Binary files /dev/null and b/docs/guides/applications/remote-desktop/install-and-use-meshcentral/meshcentral-tactical-device_small.png differ diff --git a/docs/guides/applications/remote-desktop/install-and-use-meshcentral/meshcentral-tactical-files.png b/docs/guides/applications/remote-desktop/install-and-use-meshcentral/meshcentral-tactical-files.png new file mode 100644 index 00000000000..e0446300f2b Binary files /dev/null and b/docs/guides/applications/remote-desktop/install-and-use-meshcentral/meshcentral-tactical-files.png differ diff --git a/docs/guides/applications/remote-desktop/install-and-use-meshcentral/meshcentral-tactical-files_small.png b/docs/guides/applications/remote-desktop/install-and-use-meshcentral/meshcentral-tactical-files_small.png new file mode 100644 index 00000000000..1ecf9d9f22d Binary files /dev/null and b/docs/guides/applications/remote-desktop/install-and-use-meshcentral/meshcentral-tactical-files_small.png differ diff --git a/docs/guides/applications/remote-desktop/install-and-use-meshcentral/meshcentral-tactical-login.png b/docs/guides/applications/remote-desktop/install-and-use-meshcentral/meshcentral-tactical-login.png new file mode 100644 index 00000000000..7f12ff06c46 Binary files /dev/null and b/docs/guides/applications/remote-desktop/install-and-use-meshcentral/meshcentral-tactical-login.png differ diff --git a/docs/guides/applications/remote-desktop/install-and-use-meshcentral/meshcentral-tactical-shell.png b/docs/guides/applications/remote-desktop/install-and-use-meshcentral/meshcentral-tactical-shell.png new file mode 100644 index 00000000000..8fd4e4fc751 Binary files /dev/null and b/docs/guides/applications/remote-desktop/install-and-use-meshcentral/meshcentral-tactical-shell.png differ diff --git a/docs/guides/applications/remote-desktop/install-and-use-meshcentral/meshcentral-tactical-shell_small.png b/docs/guides/applications/remote-desktop/install-and-use-meshcentral/meshcentral-tactical-shell_small.png new file mode 100644 index 00000000000..86f55d34a36 Binary files /dev/null and b/docs/guides/applications/remote-desktop/install-and-use-meshcentral/meshcentral-tactical-shell_small.png differ diff --git a/docs/guides/applications/remote-desktop/install-and-use-meshcentral/meshcentral-windows-agent.png b/docs/guides/applications/remote-desktop/install-and-use-meshcentral/meshcentral-windows-agent.png new file mode 100644 index 00000000000..8e62fddaff8 Binary files /dev/null and b/docs/guides/applications/remote-desktop/install-and-use-meshcentral/meshcentral-windows-agent.png differ diff --git a/docs/guides/applications/remote-desktop/installing-tactical-rmm/index.md b/docs/guides/applications/remote-desktop/installing-tactical-rmm/index.md new file mode 100644 index 00000000000..c125aaaf483 --- /dev/null +++ b/docs/guides/applications/remote-desktop/installing-tactical-rmm/index.md @@ -0,0 +1,304 @@ +--- +slug: installing-tactical-rmm +title: "How to Install Tactical RMM" +description: "Tactical RMM offers a sleek and feature-rich remote monitoring and management tool. Tactical RMM can do everything from monitoring networking activity to running remote scripts to operating a remote desktop viewer, and it integrates with MeshCentral. Follow along with this tutorial to learn how to get started." +keywords: ['tactical rmm tutorial','tacticalrmm install','what is an rmm'] +license: '[CC BY-ND 4.0](https://creativecommons.org/licenses/by-nd/4.0)' +authors: ['Nathaniel Stickman'] +published: 2023-06-22 +modified_by: + name: Nathaniel Stickman +external_resources: +- '[Tactical RMM Documentation](https://docs.tacticalrmm.com/)' +--- + +Tactical RMM offers an open-source solution for remote monitoring and management. Features like remote desktop, services management, remote scripting, event logging, and more make Tactical is a capable tool. And with a clear and modern web interface, working with Tactical is straightforward and efficient. + +Learn more about Tactical RMM and its features in this tutorial. Follow along to install Tactical RMM on your own server, and see how to start deploying agents and get started monitoring and managing. + +## Before You Begin + +1. If you have not already done so, create a Linode account and Compute Instance. See our [Getting Started with Linode](/docs/guides/getting-started/) and [Creating a Compute Instance](/docs/guides/creating-a-compute-instance/) guides. + + {{< note >}} + For this tutorial, you should have a fresh Linode Compute Instance, without additional software installed. The instance should be running Debian 11 or later or Ubuntu 20.04 or later. Additionally, the instance needs to have at least 4GB RAM. + {{< /note >}} + +1. Follow our [Setting Up and Securing a Compute Instance](/docs/guides/set-up-and-secure/) guide to update your system. You may also wish to set the timezone, configure your hostname, create a limited user account, and harden SSH access. + +1. Have a domain name for your server. The tutorial covers how to create the necessary DNS records pointing that domain to your server, but you need to have secured the domain name already. + +1. Have a smartphone or another client device with an authenticator application such as [Google Authenticator](https://safety.google/authentication/) or [Authy](https://www.authy.com/). Many other options exist, and this guide should be compatible with nearly all of them. + +{{< note >}} +This guide is written for a non-root user. Commands that require elevated privileges are prefixed with `sudo`. If you’re not familiar with the `sudo` command, see the [Users and Groups](/docs/guides/linux-users-and-groups/) guide. +{{< /note >}} + +## What Is Tactical RMM? + +[Tactical RMM](https://github.com/amidaware/tacticalrmm) is an open-source remote monitoring and management (RMM) tool. Tactical uses a modern frontend interface built with Vue and Django, while its agents are written in Go for lightweight. + +What is an RMM? An RMM provides remote access to client systems. Using an RMM, system administrators, technical support, and others can run remote desktops (like TeamViewer), remote file browsers, and even remote shells and scripts. + +In this way, RMM tools like Tactical can make IT support and similar tasks significantly easier and more efficient. Tactical in particular brings in several additional features, like automated alerts, services management, and an event logger. + +Tactical RMM also integrates with MeshCentral — and, in fact, the Tactical installation includes its own MeshCentral instance. You can learn more about that in our MeshCentral guide and our guide on integrating the two tools. Both of those are linked at the end of this tutorial. + +For a full list of Tactical RMM's features, see the link above or the linked documentation at the end of this tutorial. + +## How to Install Tactical RMM + +Tactical RMM installs primarily as a server, running on a Debian or Ubuntu system. The Tactical server gives you access to its web RMM interface, where you can perform remote monitoring and management. The interface also provides access to Tactical agents, which you can download and install on client systems. (See [further on](/docs/guides/installing-tactical-rmm/#installing-tactical-rmm-agents) in this tutorial for details on that process.) + +Tactical details two main methods for installing the server: traditional and Docker. However, its recommendation is to follow the traditional installation path, which is what this tutorial covers. + +Follow along with the steps below to start running your Tactical RMM server. + +### Setting Up the Prerequisites + +Tactical requires a few steps taken to prepare your system for the RMM installation. Most of these are taken on the installation system. However, you also need to make some DNS changes, pointing the appropriate domains at your server. + +1. Add a user for Tactical, give that user the `sudo` group, and configure a password for the user. + + ```command + sudo useradd -m -G sudo -s /bin/bash tactical + sudo passwd tactical + ``` + +1. (Optional) Remove the password requirement for `sudo` commands on the `tactical` user. Though not required, Tactical recommends this for more convenience in managing Tactical commands. + + ```command + echo "tactical ALL=(ALL:ALL) NOPASSWD:ALL" | sudo tee "/etc/sudoers.d/tactical" + ``` + +1. Configure the firewall rules for Tactical. It needs HTTPS for accessing the interface, and SSH should be maintained for administration. + + ```command + sudo ufw default deny incoming + sudo ufw default allow outgoing + sudo ufw allow ssh + sudo ufw allow https + sudo ufw enable + sudo ufw reload + ``` + +1. Create three DNS **A** records pointing your domain name at your server's IP. Each record is associated with a different subdomain: `api`, `mesh`, and `rmm`. There are two main approaches for accomplishing this. + + - Use Linode as your DNS name server. Follow our [DNS Manager - Get Started](/docs/products/networking/dns-manager/get-started/) to set up Linode as your domain's name server. Then follow our [Manage DNS Records](/docs/products/networking/dns-manager/guides/manage-dns-records/) for instructions on adding DNS records via the Linode DNS Manager. + + - Use the DNS manager from where you purchased the domain name. The steps for this vary depending on the DNS manager, but most should have clear options for adding **A** records with subdomains and pointing at specified IP addresses. + + Ultimately, you should have a set of DNS records resembling the following. Replace `example.com` with your actual domain name, and replace `192.0.2.0` with your server's actual IP address. + + ```output + api.example.com A 192.0.2.0 + mesh.example.com A 192.0.2.0 + rmm.example.com A 192.0.2.0 + ``` + + And in the Linode DNS Manager the record entries should look like what you see here. + + ![DNS A records in the Linode DNS Manager](linode-dns-records.png) + +### Running the Installation Script + +Now you are ready to start running the Tactical RMM installation script. Throughout the script's execution, you need to be available to respond to a few prompts. Additionally, midway through you need to create a DNS **TXT** record with a variable generated by the script before proceeding. + +1. Switch to the Tactical user created above. + + ```command + su - tactical + ``` + +1. Download and run the installation script. The script needs to be given executable permissions before it can be run. + + ```command + wget https://raw.githubusercontent.com/amidaware/tacticalrmm/master/install.sh + chmod +x install.sh + ./install.sh + ``` + + Respond to the prompts, entering each of the subdomains recorded above and the root domain. Replace `example.com` in the example responses below with your own root domain name. + + ```output + Enter the subdomain for the backend (e.g. api.example.com): api.example.com + Enter the subdomain for the frontend (e.g. rmm.example.com): rmm.example.com + Enter the subdomain for meshcentral (e.g. mesh.example.com): mesh.example.com + Enter the root domain (e.g. example.com or example.co.uk): example.com + Enter a valid email address for django and meshcentral: admin@example.com + ``` + + {{< note type="warning" >}} + Do not yet press Enter to continue when prompted about creating **TXT** record. Instead, first complete the next step to deploy the **TXT** record using your DNS manager. + {{< /note >}} + +1. Create a DNS **TXT** record pointing to your domain name's `_acme-challenge` subdomain. The **TXT** record should have the output from the Tactical installation script, as shown here. + + ```output + [...] + Please deploy a DNS TXT record under the name + _acme-challenge.example.com with the following value: + + BFdNF6RcjX5nG1Aq5ALoeeS5Z3rD3OtfJ7PJZ190VbM + + Before continuing, verify the record is deployed. + [...] + ``` + +1. Wait for the **TXT** record to propagate. This may take several minutes. You can verify the **TXT** record's propagation with a dig command like the one here, but you need to run this from a different machine than the Tactical one. + + ```command + dig -t txt _acme-challenge.example.com + ``` + + Keep checking until you get an answer section like the one below. + + ```output + [...] + + ;; ANSWER SECTION: + _acme-challenge.example.com. 86400 IN TXT "BFdNF6RcjX5nG1Aq5ALoeeS5Z3rD3OtfJ7PJZ190VbM" + + [...] + ``` + +1. Continue the Tactical installation script by pressing Enter, and, when prompted, create initial login credentials for the Tactical web interface. + + ```output + Username: tacticaladmin + Password: + Password (again): + ``` + +1. Use your chosen authentication application to either scan the QR code or to enter the authentication setup key. Doing so is required to log into your Tactical instance's interface. + + ```output + Scan the barcode above with your authenticator app + If that doesn't work you may manually enter the setup key: CEA2KGXHHLQKE2P52UNTGT72ZRS2Z7FQ + ``` + +After a few final tasks, the script should complete. You should get some output like the following. Be sure to save this information for later. + +Particularly, the MeshCentral credentials are necessary if you want to use the MeshCentral instance installed with Tactical RMM. You can learn more about that in the MeshCentral guides linked at the end of this tutorial. + +```output +******************************************************************************** + +Installation complete! + +Access your rmm at: https://rmm.example.com + +Django admin url (disabled by default): https://api.example.com/B9XAYep1LjXEhG3HYJ5VSZ3tbCWPRhisFuZUlcCn4UoJZyJkAKBWj8jNl4xrQAXJcQLukW/ + +MeshCentral username: manmkcbi +MeshCentral password: PwjzWWkVukFaLLiygMqYgammM + +******************************************************************************** +``` + +## How to Use Tactical RMM + +Your Tactical RMM instance is up and running, and now you can start using it for remote monitoring and management. + +Start by navigating to the instance's URL, as shown at the end of the installation script: `https://rmm.example.com`. The interface should prompt you to login — using the credentials you created during installation — and authenticate with your authentication application. + +Follow along with the sections below to start working with your Tactical instance from there. The first of these sections walks you through the initial setup within the interface. From there, see some of the features Tactical's interface offers and how to beginning setting up your remote agents. + +### Completing Initial Setup for Tactical RMM + +On first logging into the Tactical interface, you are prompted to create a client and site. These designations allow you to effectively group entities for monitoring, management, and deployment of agents. + +For this example, an initial client of `Example Client` and site of `Example Site` are used. + +![Creating an initial client and site in Tactical RMM](tactical-client.png) + +You should be directed to the Tactical RMM dashboard after you have created a client and site. + +[![Tactical RMM dashboard](tactical-dashboard_small.png)](tactical-dashboard.png) + +### Installing Tactical RMM Agents + +Before exploring Tactical RMM's capabilities, you should deploy at least one agent. An agent allows you to actually run Tactical's monitoring and management features, so each option you try you can see the results. + +Tactical mostly targets Windows systems for its agents. You have a few options for deploying these — all of which you can see in the [official documentation](https://docs.tacticalrmm.com/install_agent/#installing-a-windows-agent). Probably the most useful is a deployment link, which Tactical uses to generate agent executables on demand. + +The steps that follow show you how to deploy a Tactical agent to a Windows machine using this approach. + +Additionally, Tactical also has beta support for Linux agents. These agents are still in development, so they may not be as stable or full featured. But you can find information further below about how to deploy a Linux agent. + +#### Deploying an Agent to Windows + +1. Access your Tactical RMM dashboard. + +1. From the top menu, select **Agents** -> **Manage Deployments**. + +1. Select **New**, and complete the form to generate a new *Deployment* entity. + + ![Creating a new deployment in Tactical RMM](tactical-deployment.png) + + {{< note >}} + For a generic agent download link, Tactical recommends creating a "Default" site and a deployment with a long expiry. The link could be used to generate an installer at any time for any client or site. + {{< /note >}} + +1. Observe the new deployment listing, and its *Download Link*. + + [![Deployment listing in Tactical RMM](tactical-deployments_small.png)](tactical-deployments.png) + +1. On the target machine, navigate in a web browser to the download link for the deployment. Run the executable once the download has finished. + + {{< note >}} + Windows may require you to verify that you want to run the executable. Select *More Info*, and select the **Run Anyway** option. + {{< /note >}} + + After the executable has run, you should see a message like the one below. Additionally, you should see an entry for the new agent within Tactical RMM. + + ```output + Installation was successful! / Allow a few minutes for the agent to properly display in the RMM" + ``` + +#### Deploying an Agent to Linux (Beta) + +Tactical's deployment links do not support Linux agents. Instead, a Linux agent should be deployed using a dynamically-generated executable. + +{{< note type="warning" >}} +While Linux agents are in beta, Tactical requires you to be a paid sponsor in order to use these agents. Learn more about this requirement in Tactical's [code-signing](https://docs.tacticalrmm.com/code_signing/) documentation. +{{< /note >}} + +1. On the target machine, access your Tactical RMM dashboard. + +1. From the top menu, select **Agents** -> **Install Agent**. + +1. Complete the form, selecting the *Linux* option. + + ![Generating a Linux agent in Tactical RMM](tactical-linux-agent.png) + +1. Download the agent installation script, and run the following commands to execute it. These commands assume you are working in the same directory as the script, and you need to alter the script name to the actual name of your downloaded script. + + ```command + chmod +x rmm-exampleclient-examplesite-type.sh + sudo ./rmm-exampleclient-examplesite-type.sh + ``` + +### Navigating the Tactical RMM Interface + +From here, you can take a look around to familiarize yourself with the options. The three primary places to start are the **Settings** and **Tools** options from the top menu and the option you get by right-clicking an agent entry. + +To give you an idea, as well as some useful tools to start off with, here are a set of options to try. Each one comes from one of the menus mentioned above, and pretty well represents the kinds of options present in each menu. + +- **Automation Manager**. Available from the **Settings** menu, this tool lets you set up policies for automated checks and tasks. The example in the image below checks for update notifications on the client. You could also define an automated task to apply patches when available. + + ![Policy defined in the Tactical RMM Automation Manager](tactical-automation-manager.png) + +- **Bulk Command**. From the **Tools** menu, you can chose this and similar "bulk" actions, allowing you to execute commands, scripts, and patch updates to agent machines in bulk. The example shown here uses the *Bulk Patch Management* and seeks to apply patches to all *Workstation* type agents on a selected *Client*. + + ![Bulk action to install patches via the Tactical RMM](tactical-bulk-patches.png) + +- **Take Control**. By right-clicking on an agent, you can get this option along with a set of other agent-related actions. Taking control starts up a TeamViewer-like remote desktop on the target machine. This features uses MeshCentral, and so you can find more thorough coverage of it in the integration guide linked below. + +## Conclusion + +Everything with your Tactical RMM instance is now ready for to meet your remote monitoring and management needs. From here, you can configure automated alerts, remote desktops, bulk script executions, and more. + +The Tactical RMM server includes an installation of MeshCentral, and Tactical RMM includes a set of features that integrate with MeshCentral. Since you have it installed already, you can start learning more about these features in our guide [How to Integrate Tactical RMM with MeshCentral](/docs/guides/integrating-tactical-rmm-with-meshcentral/). + +To learn more about MeshCentral generally, take a look at our guide [How to Install and Use MeshCentral](/docs/guides/install-and-use-meshcentral/). diff --git a/docs/guides/applications/remote-desktop/installing-tactical-rmm/linode-dns-records.png b/docs/guides/applications/remote-desktop/installing-tactical-rmm/linode-dns-records.png new file mode 100644 index 00000000000..8c5d1936d8f Binary files /dev/null and b/docs/guides/applications/remote-desktop/installing-tactical-rmm/linode-dns-records.png differ diff --git a/docs/guides/applications/remote-desktop/installing-tactical-rmm/tactical-automation-manager.png b/docs/guides/applications/remote-desktop/installing-tactical-rmm/tactical-automation-manager.png new file mode 100644 index 00000000000..faf888b9b68 Binary files /dev/null and b/docs/guides/applications/remote-desktop/installing-tactical-rmm/tactical-automation-manager.png differ diff --git a/docs/guides/applications/remote-desktop/installing-tactical-rmm/tactical-bulk-patches.png b/docs/guides/applications/remote-desktop/installing-tactical-rmm/tactical-bulk-patches.png new file mode 100644 index 00000000000..c90e38c5a93 Binary files /dev/null and b/docs/guides/applications/remote-desktop/installing-tactical-rmm/tactical-bulk-patches.png differ diff --git a/docs/guides/applications/remote-desktop/installing-tactical-rmm/tactical-client.png b/docs/guides/applications/remote-desktop/installing-tactical-rmm/tactical-client.png new file mode 100644 index 00000000000..31a59aad165 Binary files /dev/null and b/docs/guides/applications/remote-desktop/installing-tactical-rmm/tactical-client.png differ diff --git a/docs/guides/applications/remote-desktop/installing-tactical-rmm/tactical-dashboard.png b/docs/guides/applications/remote-desktop/installing-tactical-rmm/tactical-dashboard.png new file mode 100644 index 00000000000..0fbd65170b3 Binary files /dev/null and b/docs/guides/applications/remote-desktop/installing-tactical-rmm/tactical-dashboard.png differ diff --git a/docs/guides/applications/remote-desktop/installing-tactical-rmm/tactical-dashboard_small.png b/docs/guides/applications/remote-desktop/installing-tactical-rmm/tactical-dashboard_small.png new file mode 100644 index 00000000000..2c6558c1a24 Binary files /dev/null and b/docs/guides/applications/remote-desktop/installing-tactical-rmm/tactical-dashboard_small.png differ diff --git a/docs/guides/applications/remote-desktop/installing-tactical-rmm/tactical-deployment.png b/docs/guides/applications/remote-desktop/installing-tactical-rmm/tactical-deployment.png new file mode 100644 index 00000000000..50c16d10dbf Binary files /dev/null and b/docs/guides/applications/remote-desktop/installing-tactical-rmm/tactical-deployment.png differ diff --git a/docs/guides/applications/remote-desktop/installing-tactical-rmm/tactical-deployments.png b/docs/guides/applications/remote-desktop/installing-tactical-rmm/tactical-deployments.png new file mode 100644 index 00000000000..33663dc48c4 Binary files /dev/null and b/docs/guides/applications/remote-desktop/installing-tactical-rmm/tactical-deployments.png differ diff --git a/docs/guides/applications/remote-desktop/installing-tactical-rmm/tactical-deployments_small.png b/docs/guides/applications/remote-desktop/installing-tactical-rmm/tactical-deployments_small.png new file mode 100644 index 00000000000..2ee6f7dd8b8 Binary files /dev/null and b/docs/guides/applications/remote-desktop/installing-tactical-rmm/tactical-deployments_small.png differ diff --git a/docs/guides/applications/remote-desktop/installing-tactical-rmm/tactical-linux-agent.png b/docs/guides/applications/remote-desktop/installing-tactical-rmm/tactical-linux-agent.png new file mode 100644 index 00000000000..43342d0c7f6 Binary files /dev/null and b/docs/guides/applications/remote-desktop/installing-tactical-rmm/tactical-linux-agent.png differ diff --git a/docs/guides/applications/remote-desktop/integrating-tactical-rmm-with-meshcentral/index.md b/docs/guides/applications/remote-desktop/integrating-tactical-rmm-with-meshcentral/index.md new file mode 100644 index 00000000000..b4e8b8fef81 --- /dev/null +++ b/docs/guides/applications/remote-desktop/integrating-tactical-rmm-with-meshcentral/index.md @@ -0,0 +1,83 @@ +--- +slug: integrating-tactical-rmm-with-meshcentral +title: "How to Integrate Tactical RMM with MeshCentral" +description: "MeshCentral and Tactical RMM offer excellent open-source solutions for remote monitoring and management. And with Tactical RMM's built-in integration with MeshCentral, you can get the best of both tools. Learn more about each and how they work together in this tutorial." +keywords: ['tactical rmm vs meshcentral','remote monitoring and management','meshcentral vs teamviewer'] +license: '[CC BY-ND 4.0](https://creativecommons.org/licenses/by-nd/4.0)' +authors: ['Nathaniel Stickman'] +published: 2023-07-03 +modified_by: + name: Nathaniel Stickman +external_resources: +- '[Tactical RMM Documentation - MeshCentral Integration](https://docs.tacticalrmm.com/mesh_integration/)' +--- + +Tactical RMM and MeshCentral are each powerful open-source tools for remote monitoring and management. Each offers features that the other does not on its own, making the two even better as a team. By integrating the best features of each tool, you can get a truly outstanding remote monitoring and management solution. + +This tutorial shows you how to do just that. Follow along to learn about MeshCentral and Tactical RMM, how each stands out, and what each offers that the other does not. Then see how the two tools can work together for a more full remote monitoring and management system. + +## Before You Begin + +Follow our [How to Install Tactical RMM](/docs/guides/installing-tactical-rmm/) guide to deploy a Tactical RMM instance. Completing the Tactical RMM installation as shown in that guide also automatically deploys a MeshCentral instance alongside the new Tactical RMM instance. + +## What Is an RMM? + +What is remote monitoring and management, or RMM? An RMM provides remote access to client systems. Typically, an RMM consists of two parts. First, a server that gives a central interface for accessing client systems. Second, one or more agents that allow the server to communicate with the client systems. + +An RMM can be a valuable tool for system administrators, technical support, and others. RMM features like remote desktop let you troubleshoot remote client systems more directly, without relying on often cumbersome and obscure communications. Features like remote updates make it possible to ensure all client systems maintain the latest patches and security. + +Between MeshCentral and Tactical RMM, you have more than just the above RMM features. You also have automated alerts, service management, remote file browsers, remote shells, and more. + +### Tactical RMM vs MeshCentral: What Are the Differences? + +If MeshCentral and Tactical RMM are both RMM tools, what distinguishes them? What sets MeshCentral apart from Tactical RMM, and which one makes more sense for your needs? + +Each tool prioritizes a different set of RMM needs. + +- MeshCentral provides real-time features. This includes a remote desktop (like TeamViewer), a remote file browser, and a remote shell. All of these let you access a client system to view resources and perform tasks in real time. + +- Tactical RMM offers automated features. For instance, Tactical RMM has a set of bulk execution tools that let you easily run updates, scripts, or shell commands across a set of client systems. Tactical RMM also includes automated alerts. + +But, as you can see in the rest of this tutorial, Tactical RMM manages to include all of the exceptional features of MeshCentral. By installing and integrating with its own MeshCentral instance, Tactical RMM gets the full suite of real-time access tools. + +## How Tactical RMM Integrates with MeshCentral + +Tactical RMM integrates with MeshCentral by default. Following the instructions in our [How to Install Tactical RMM](/docs/guides/installing-tactical-rmm/) guide, you get a MeshCentral instance installed alongside Tactical RMM. And immediately, the two tools are integrated, with features from MeshCentral available within Tactical RMM. + +You can verify this by accessing the included MeshCentral interface. See our [How to Install and Use MeshCentral](/docs/guides/install-and-use-meshcentral/#accessing-meshcentral-with-tactical-rmm) guide for instructions on accessing the MeshCentral instance included with Tactical RMM. + +Tactical automatically adds and maintains MeshCentral agents alongside its own agents, so you can see your Tactical RMM devices within the MeshCentral interface. An example is shown here. + +[![A Tactical RMM device shown parallel in the integrated MeshCentral interface](meshcentral-tactical-dashboard_small.png)](meshcentral-tactical-dashboard.png) + +Tactical RMM does all of this in order to leverage MeshCentral's embedding feature. With this, Tactical can integrate with the included MeshCentral instance to provide MeshCentral's robust real-time RMM tools. + +## How to Use MeshCentral with Tactical RMM + +One way to access MeshCentral features alongside Tactical RMM is by directly accessing the interface for the included MeshCentral instance. Doing so involves visiting the MeshCentral URL as shown in the guide linked above. + +However, the greatest advantage of Tactical's integration with MeshCentral is the ability to access MeshCentral features directly within the Tactical RMM interface. Tactical provides numerous agent actions that use embedded MeshCentral features for real-time RMM. + +To see these options, access your Tactical RMM interface and log in. Then, either select or right-click one of your listed client devices. From there, you have two options to start up real-time MeshCentral tools. + +- Choose **Take Control** to start a remote desktop on the client device. A new window opens, where Tactical RMM provides a custom frame for MeshCentral's remote desktop. Just as with MeshCentral, select **Connect** to start the session, and, when you are finished, select **Disconnect** to end it. + + [![Tactical RMM with an embedded MeshCentral remote desktop](tactical-meshcentral-desktop_small.png)](tactical-meshcentral-desktop.png) + +- Choose **Remote Background** to see options for remote background actions on the client devices. A new window opens with a series of tabs, each corresponding to a category of action or information provided by MeshCentral. Several are devoted to current information about the client device, while the first two provide real-time RMM tools. + + - **Terminal** accesses a remote terminal into the client device, where you can execute commands as root in real time. + + - **File Browser** lets you browse the remote system's files, with standard features for manipulating files and directories as well as tools for uploading and downloading files. + + [![Tactical RMM with an embedded MeshCentral remote file browser](tactical-meshcentral-files_small.png)](tactical-meshcentral-files.png) + +## Conclusion + +Tactical RMM and MeshCentral together provide a robust open-source solution for your remote monitoring and management needs. With the integrated toolset covered in this tutorial, you can better leverage each tool's strengths and understand how they work together. + +To go further in getting the most out of MeshCentral and Tactical RMM, you should also refer to our guides covering each individually. + +- [How to Install Tactical RMM](/docs/guides/installing-tactical-rmm/) gets you started with Tactical RMM, covering the installation and navigation of the interface + +- [How to Install and Use MeshCentral](/docs/guides/install-and-use-meshcentral/) introduces MeshCentral with a full coverage of installation and usage. diff --git a/docs/guides/applications/remote-desktop/integrating-tactical-rmm-with-meshcentral/meshcentral-tactical-dashboard.png b/docs/guides/applications/remote-desktop/integrating-tactical-rmm-with-meshcentral/meshcentral-tactical-dashboard.png new file mode 100644 index 00000000000..8ccd31542b6 Binary files /dev/null and b/docs/guides/applications/remote-desktop/integrating-tactical-rmm-with-meshcentral/meshcentral-tactical-dashboard.png differ diff --git a/docs/guides/applications/remote-desktop/integrating-tactical-rmm-with-meshcentral/meshcentral-tactical-dashboard_small.png b/docs/guides/applications/remote-desktop/integrating-tactical-rmm-with-meshcentral/meshcentral-tactical-dashboard_small.png new file mode 100644 index 00000000000..9e7b54c2953 Binary files /dev/null and b/docs/guides/applications/remote-desktop/integrating-tactical-rmm-with-meshcentral/meshcentral-tactical-dashboard_small.png differ diff --git a/docs/guides/applications/remote-desktop/integrating-tactical-rmm-with-meshcentral/tactical-meshcentral-desktop.png b/docs/guides/applications/remote-desktop/integrating-tactical-rmm-with-meshcentral/tactical-meshcentral-desktop.png new file mode 100644 index 00000000000..d0b87b03382 Binary files /dev/null and b/docs/guides/applications/remote-desktop/integrating-tactical-rmm-with-meshcentral/tactical-meshcentral-desktop.png differ diff --git a/docs/guides/applications/remote-desktop/integrating-tactical-rmm-with-meshcentral/tactical-meshcentral-desktop_small.png b/docs/guides/applications/remote-desktop/integrating-tactical-rmm-with-meshcentral/tactical-meshcentral-desktop_small.png new file mode 100644 index 00000000000..0e79afa3d03 Binary files /dev/null and b/docs/guides/applications/remote-desktop/integrating-tactical-rmm-with-meshcentral/tactical-meshcentral-desktop_small.png differ diff --git a/docs/guides/applications/remote-desktop/integrating-tactical-rmm-with-meshcentral/tactical-meshcentral-files.png b/docs/guides/applications/remote-desktop/integrating-tactical-rmm-with-meshcentral/tactical-meshcentral-files.png new file mode 100644 index 00000000000..abdd42b7fbc Binary files /dev/null and b/docs/guides/applications/remote-desktop/integrating-tactical-rmm-with-meshcentral/tactical-meshcentral-files.png differ diff --git a/docs/guides/applications/remote-desktop/integrating-tactical-rmm-with-meshcentral/tactical-meshcentral-files_small.png b/docs/guides/applications/remote-desktop/integrating-tactical-rmm-with-meshcentral/tactical-meshcentral-files_small.png new file mode 100644 index 00000000000..6e81efcb315 Binary files /dev/null and b/docs/guides/applications/remote-desktop/integrating-tactical-rmm-with-meshcentral/tactical-meshcentral-files_small.png differ