LogoLogo
DownloadBlog
  • Overview
  • Getting started
    • Meshnet explained
    • How to start using Meshnet
      • Using Meshnet on Windows
      • Using Meshnet on Android
      • Using Meshnet on iPhone/iPad
      • Using Meshnet on macOS
      • Using Meshnet on Linux
      • Using Meshnet on Android TV
    • How to use Meshnet securely
  • Features
    • Linking devices in Meshnet
      • Linking external Meshnet devices on Windows
      • Linking external Meshnet devices on Android
      • Linking external Meshnet devices on iPhone/iPad
      • Linking external Meshnet devices on macOS
      • Linking external Meshnet devices on Linux
      • Linking external Meshnet devices on Android TV
    • Explaining permissions
      • Remote access permissions
      • File sharing permissions
      • Traffic routing permissions
      • Local network permissions
    • Renaming devices in Meshnet
      • Renaming devices on Windows
      • Renaming devices on Android
      • Renaming devices on iPhone/iPad
      • Renaming devices on macOS
      • Renaming devices on Linux
    • Sharing files in Meshnet
      • Sharing files on Windows
      • Sharing files on Android
      • Sharing files on iPhone/iPad
      • Sharing files on macOS
      • Sharing files on Linux
      • Sharing files on Android TV
    • Routing traffic in Meshnet
      • Routing traffic from Windows
      • Routing traffic from Android
      • Routing traffic from iPhone/iPad
      • Routing traffic from macOS
      • Routing traffic from Linux
      • Routing traffic from Android TV
  • How-to guides
    • Gaming
      • How to set up a private Minecraft server with Meshnet
      • How to set up a private Stardew Valley server with Meshnet
      • How to play Quake 3 Arena over Meshnet
      • How to set up a private Team Fortress 2 server with Meshnet
      • How to set up a remote game-streaming server for Moonlight
      • How to set up a Palworld dedicated server
      • How to play Fallout: New Vegas multiplayer over Meshnet
      • How to set up a private Factorio server with Meshnet
    • Remote files and media access
      • How to set up and access shared folders
        • Configure and access shared folders on Windows
        • Configure and access shared folders on macOS
        • Configure and access shared folders on Linux
        • Access shared folders from Android
        • Access shared folders from iPhone/iPad
        • Access shared folders from Android TV
      • How to watch videos over Meshnet using Kodi
      • How to configure and access a Jellyfin media server remotely
      • How to set up a Plex media server and access it remotely
      • How to set up a remote NAS using OpenMediaVault and Meshnet
      • How to set up a remote picture library with LibrePhotos and Meshnet
      • How to use Syncthing for remote continuous file synchronization
      • How to set up a remote Airsonic music server
      • How to set up HTTP File Server for remote file access
      • How to set up a remote audiobook server
      • How to host a remote Kavita e-book server
      • How to set up and remotely access Immich using Meshnet
    • Remote device access
      • How to log in to your PC remotely over Meshnet
        • Connect to a Windows device
        • Connect to a macOS device
        • Connect to a Linux device
      • How to access remote systems over Meshnet using SSH
      • How to access your IP camera over Meshnet
      • How to use Home Assistant remotely over Meshnet
      • How to make secure macOS Time Machine backups from anywhere
      • How to use Ansible over Meshnet
      • How to access files in your NAS from anywhere without compromising its security
      • How to set up a phone as a security camera with remote access
      • How to assign custom host names to Meshnet services using Nginx proxy manager
      • How to use Proxmox VE remotely over Meshnet
      • How to set up a remotely controlled 3D printer
      • How to set up and remotely access a CasaOS server
    • Joint projects
      • How to set up an NGINX web server and remotely access it over Meshnet
      • How to use Nextcloud file syncing with Meshnet
      • How to set up pair programming using tmux
      • How to set up a Visual Studio Code server for remote development over Meshnet
      • How to host a Focalboard server for remote project management
      • How to use Meshnet for multi-screen Node.js development
      • How to use the Multi-user editing plugin in Unreal Engine over Meshnet
      • How to set up a private Mumble voice chat server
      • How to host a private Rocket.Chat server
    • Own VPN server setup
      • How to set up a VPN server through self-hosting or with DigitalOcean
      • How to create a VPN server with Microsoft Azure
      • How to create a VPN server with AWS
      • How to create a VPN server with Google Cloud
      • How to create a VPN server with Linode
      • How to create a VPN server with Hetzner
    • Network protection
      • How to set up your network protection with Pi-hole
      • How to set up your own DNS server
      • How to protect your network with AdGuard Home
      • How to use the self-hosted Whoogle search engine remotely
      • How to set up a VPN router using Meshnet
  • Troubleshooting
    • Common issues on Windows
    • Common issues on Android
    • Common issues on iPhone/iPad
    • Common issues on macOS
    • Common issues on Linux
Powered by GitBook

© 2025 Nord Security. All Rights Reserved.

On this page
  • Introduction
  • Installing CasaOS
  • Access the CasaOS web interface
  • Installing apps
  • Method 1: From the App Store
  • Method 2: Manual setup
  • Setting up Meshnet
  • Install NordVPN
  • Log in to NordVPN
  • Enable Meshnet
  • Accessing CasaOS over Meshnet
  • Optional: Configuring folder sharing
  • Share a folder
  • Connect to a shared folder

Was this helpful?

  1. How-to guides
  2. Remote device access

How to set up and remotely access a CasaOS server

Learn how to set up a personal Linux server with CasaOS and remotely access it over Meshnet.

PreviousHow to set up a remotely controlled 3D printerNextJoint projects

Last updated 4 months ago

Was this helpful?

Introduction

For many individuals, the initial steps of and personal server setups can often appear daunting. Beginners frequently seek straightforward solutions that offer guidance without requiring significant commitments.

A tool novices use to familiarize themselves with self-hosting is — open-source software designed to convert a Linux machine into a functional personal server. CasaOS offers an intuitive web interface, simplifying the deployment and management of various apps. Depending on the apps you decide to host, you may want remote access to the server. This would allow you to access your apps while away from home and perform remote maintenance.

By pairing CasaOS with , you can create a private device network that mimics a traditional (LAN) without . This functionality enables seamless to your CasaOS server, regardless of your physical location.

To start, check out the video tutorial below for a visual walkthrough:

Alternatively, if you prefer written instruction, this page contains a step-by-step guide on installing CasaOS on a Linux machine and establishing a remote connection using Meshnet.

Installing CasaOS

CasaOS can be installed by using a single-line installation script. The script will check whether your system is compatible with CasaOS and then start downloading and installing all required software. To begin the installation:

  1. Open Terminal.

  2. Run the following command to execute the CasaOS installation script:

    curl -fsSL https://get.casaos.io | sudo bash

You can monitor the installation progress in the terminal window. Once the installation is complete, you will see the address for accessing your CasaOS dashboard.

Access the CasaOS web interface

To use your CasaOS instance, navigate to its web interface and create an account.

  1. Open your internet browser.

  2. In the URL bar, enter the address shown after completing the CasaOS installation and press Enter. Example http://192.168.202.83

  3. On the CasaOS welcome screen, select Go.

  4. Type in your preferred username and password.

  5. Click Create.

The page should now reload and showcase your CasaOS dashboard.

Note

Installing apps

Method 1: From the App Store

  1. Open your CasaOS web interface.

  2. Under App, select App Store.

  3. Locate the app you want to install.

  4. Click the Install button if you wish to install it using the default configuration.

    Otherwise, if you want to review the settings or make some adjustments before installing:

    1. Select the app in the App Store.

    2. Hover over the dropdown arrow next to the Install button and click Custom install.

    3. Check and adjust the available values to your preference.

    4. Click Install.

  5. Close the installation dialog by clicking the Continue in background button.

Once the software is installed, you will see it under the App section of the dashboard. Click it to navigate to the app’s web interface.

Method 2: Manual setup

CasaOS provides a graphical user interface (GUI) solution for manually deploying Docker containers. It provides you with all of the relevant fields where you need to enter the data for the app you want to install. To install an app manually:

  1. Open your CasaOS web interface.

  2. Under App, select App Store.

  3. In the upper-right corner, click Custom install.

  4. Click Install.

Once the software is installed, you will see it under the App section of the dashboard. Click it to navigate to the app’s web interface.

Setting up Meshnet

After you’ve installed the apps you want to have on your server, you can proceed with setting up Meshnet to remotely access the server.

Install NordVPN

Take the following steps to set up NordVPN on your CasaOS server:

  1. Open your CasaOS web interface.

  2. In the upper-left corner, select Terminal and logs.

  3. Under Terminal, enter the username and password of your Linux user account (not the CasaOS web account) and click Connect.

  4. Download and install the NordVPN Linux client by running this command:

    sh <(wget -qO - https://downloads.nordcdn.com/apps/linux/install.sh)

  5. Log in to your NordVPN account.

Log in to NordVPN

You can log in to your NordVPN account without the use of a graphical user interface (GUI) in two ways:

  • By running the nordvpn login command with the --token flag

  • By running the nordvpn login command with the --callback flag

Instructions for both methods are outlined below.

Log in using a token
  1. Under Advanced settings, select Get access token.

  2. Enter the verification code sent to your email address.

  3. Under Access token, click Generate new token.

  4. In the dialog that appears, choose either a token that expires in 30 days or one that never expires, and then select Generate token.

  5. Select Copy and close.

  6. On your server, run the nordvpn login --token <your_token> command, replacing <your_token> with the copied token. Example

    nordvpn login --token 3fe460cefb8dcf1478c92e45908cec9f9bdbadf7a456a6dfb35dc2c58ee39d5b

You should now see a welcome message.

Log in using a URL
  1. Run the following command:

    nordvpn login

  2. Open the provided link on any device in your browser.

  3. Complete the login procedure.

  4. Right-click the Continue button and select Copy link address.

  5. Run the nordvpn login --callback "<URL>" command, replacing <URL> with the previously copied link address. Example

    nordvpn login --callback "nordvpn://login?action=login&exchange_token=MGFlY2E1NmE4YjM2NDM4NjUzN2VjOWIzYWM3ZTU3ZDliNDdiNzRjZTMwMjE5YjkzZTNhNTI3ZWZlOTIwMGJlOQ%3D%3D&status=done"

You should now see a welcome message.

Tip

To preserve your token when logging out of the NordVPN app, use the nordvpn logout --persist-token command. Otherwise, your token will be revoked.

Note

If you encounter the error message “Whoops! Permission denied accessing /run/nordvpn/nordvpnd.sock,” enter sudo usermod -aG nordvpn $USER. Then, reboot your server and log back in.

Enable Meshnet

nordvpn set meshnet on

To view the Nord name and Meshnet IP address of your device, enter the following command:

nordvpn meshnet peer list

Tip

Accessing CasaOS over Meshnet

Once Meshnet is set up, you can start accessing and using your CasaOS instance, and the apps hosted on it, from remote devices with the help of Meshnet. To remotely access CasaOS:

  1. Copy the Nord name of your CasaOS server device from the NordVPN app.

  2. Open your internet browser.

  3. In the URL field, paste the copied Nord name followed by :81/ and press Enter. Example secret.meerkat-atlas.nord:81/

  4. Enter the login credentials for your CasaOS account and click Log in.

To access any of your hosted apps, simply click its card under the App section. The app’s web interface will open in a new browser tab.

Tip

To directly access a specific app, replace the :81/ part of the URL in step 3 with the corresponding port number of the app you want to reach.

Example secret.meerkat-atlas.nord:8096/

Optional: Configuring folder sharing

Share a folder

To start sharing a folder:

  1. Open your CasaOS web interface.

  2. Under App, select Files.

  3. Navigate to the folder you want to share.

  4. Hover over the folder, select the three-dot menu, and click Share.

  5. Note the path to the shared folder and close the dialog by clicking Got it.

Now, your Meshnet peer devices can access the shared folder using the previously presented path. However, the local IP address must be replaced by the CasaOS server’s Nord name or Meshnet IP address.

Example \\secret.meerkat-atlas.nord\Videos

For detailed instructions on accessing shared folders from different platforms, consult the following pages:

Connect to a shared folder

To access a folder shared by another Meshnet peer device:

  1. Open your CasaOS web interface.

  2. Under App, select Files.

  3. On the left, next to Location, click the add (+) button and select Connect to network storage.

  4. In the Server address field, enter smb:// followed by the Nord name of the Meshnet peer that has shared the folder. Example smb://secret.meerkat-himalayas.nord

  5. Turn off the Connect as guest toggle and enter the authentication details for accessing the shared folder.

  6. Click Connect.

The Files app should now display all shared folders of the Meshnet peer device you specified. In addition, the network share will be available under the Location section on the left.

If you forget your username or password, you can reset the credentials by following the instructions on the page.

To streamline the process of installing apps on your home server, CasaOS has a dedicated App Store. In the store, you can choose from a wide range of popular apps, such as , , , and many others. Alternatively, if you cannot find a wanted service in the store, you can manually configure and launch it using Docker.

This section will use as an example. However, the process for installing other apps is nearly identical.

Fill in the Manual app install dialog with the data for your Docker container. The image below is an example of the Docker configuration.

On any device, log in to your dashboard and select the Meshnet (by NordVPN) card.

Upon logging in, with this command:

For more convenient device access, you can and use its nickname instead of the default Nord name.

The Files app of CasaOS provides a simple interface for configuring and accessing network shares. This allows you to make a folder accessible over the network or connect to a folder shared by another device.

CasaOS documentation
Jellyfin
Pi-hole
Home Assistant
AdGuard Home
Kavita e-book server’s
Nord Account
enable Meshnet
Samba
Accessing shared folders from Android
Accessing shared folders from iPhone/iPad
Accessing shared folders from Android TV
self-hosting
CasaOS
Docker-based
Meshnet
local area network
port forwarding
remote access
URL for accessing CasaOS web interface highlighted in the terminal.
"Create" button highlighted on the CasaOS account creation page.
App store card highlighted.
"Install" button for AdGuard Home highlighted.
Arrows pointing to the dropdown menu icon and the "Custom install" button.
"Install" button highlighted.
AdGuard Home underlined under the App category.
Kavita Docker container configuration in CasaOS.
"Kavita" underlined under the App category.
Arrow pointing to the "Terminal and logs" button on the CasaOS web interface.
Username and password of the CasaOS server filled in.
"Meshnet (by NordVPN)" card highlighted.
Clicking the 'Set up NordVPN manually' button.
Clicking 'Generate new token'.
Selecting the token expiry option.
Arrow pointing to the three-dot menu button and the "Share" option is highlighted.
"Got it" button highlighted.
The Add (plus) button and "Connect to network storage" option highlighted.
Shared folder URL and authentication credentials entered and the "Connect" button is highlighted.
Added network share visible under "Location".
rename this device
Accessing shared folders from Linux
Accessing shared folders from macOS
Accessing shared folders from Windows