# How to configure and access a Jellyfin media server remotely

## Introduction <a href="#introduction" id="introduction"></a>

Today, many people have extensive home video libraries — footage ranging from a collection of Blu-rays to precious family recordings. Having an easy-to-use solution for managing such content is essential. Moreover, the media might be scattered across multiple devices, so the software should be capable of transmitting videos from various sources. A popular choice to address these needs is Jellyfin.

[Jellyfin ](https://jellyfin.org/docs/)is an open-source media system that allows you to manage all of your media content conveniently. This free software is compatible with most operating systems. However, accessing video files on the Jellyfin server from outside the local area network (LAN) requires port forwarding or advanced networking configurations.

With [Meshnet](https://nordvpn.com/meshnet/), the Jellyfin media server can be connected to the same virtual network with client devices. This configuration allows you to access digital content on the Jellyfin server remotely, without any changes to your router or firewall settings.

In this article, you'll find instructions on setting up a media library using the Jellyfin server for local and remote media. You'll also learn how to remotely watch your content using Meshnet.

## Configure a Jellyfin server <a href="#configure-a-jellyfin-server" id="configure-a-jellyfin-server"></a>

To begin the setup process, you will need to configure the Jellyfin server on your host device.

### Installing Jellyfin software <a href="#installing-jellyfin-software" id="installing-jellyfin-software"></a>

Instructions on how to download and install the Jellyfin server can be found on the Jellyfin website:

* [Instructions for Windows](https://jellyfin.org/docs/general/installation/windows)
* [Instructions for macOS](https://jellyfin.org/docs/general/installation/macos)
* [Instructions for Linux](https://jellyfin.org/downloads/linux)

{% hint style="info" %}
**Note**

Ubuntu 22.04.1 LTS distribution will be used as an example in this article.
{% endhint %}

### Setting up the Jellyfin web interface <a href="#setting-up-the-jellyfin-web-interface" id="setting-up-the-jellyfin-web-interface"></a>

After installing Jellyfin, you can control it using the web interface.

1. Open your internet browser and visit the following address:\
   \
   `http://localhost:8096`<br>
2. Follow the instructions provided by the initial configuration wizard to finish the setup process.
3. Ensure to select the **Allow remote connections to this server** option when prompted.
4. Log in with your newly created Jellyfin account.

All of the settings can be changed later on the Jellyfin dashboard, which you can access by navigating to:\
\
`http://localhost:8096/web/index.html#!/dashboard.html`

### Adding media content <a href="#adding-media-content" id="adding-media-content"></a>

The Jellyfin server is now active, but no media is visible yet. To display your content, add the required directories. You can add locally stored or remotely shared files to your media library. Jellyfin scans these folders automatically, and once completed, all located files will be visible on the Jellyfin home page.

#### Add local media <a href="#add-local-media" id="add-local-media"></a>

{% hint style="info" %}
**Note**

This guide uses a Windows PC as an example, but the process is identical on macOS and Linux. The only difference will be the path structure of the media folder directory.
{% endhint %}

To add media files stored locally on your device, follow these steps:

1. Open the Jellyfin dashboard.

2. From the menu on the left, under **Server**, select **Libraries** and click **Add media library**.<br>

   <div align="left"><figure><img src="https://3559400189-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F0cTezbT2vN0lurEio8Z5%2Fuploads%2FfOGgA0Z3bIcn0M9YI8lF%2Fwin_jelly_add_media.png?alt=media&#x26;token=d0d12780-52df-4856-9985-c4571d9ac5bc" alt="Libraries section of the Jellyfin dashboard."><figcaption></figcaption></figure></div>

3. In the new window, select the desired content type from the dropdown list and enter a display name.

4. Click the plus (+) button next to **Folders**.<br>

   <div align="left"><figure><img src="https://3559400189-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F0cTezbT2vN0lurEio8Z5%2Fuploads%2FsmmkCnTDPy5ByGZ8xe6Q%2Fwin_jelly_add_folder_local.png?alt=media&#x26;token=b5c11fa2-2870-44fb-b9f9-f56990b06b4f" alt="Add button."><figcaption></figcaption></figure></div>

5. In the **Folder** field, enter the path to your media folder. Alternatively, you can navigate to it using the options underneath.

   <div align="left"><figure><img src="https://3559400189-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F0cTezbT2vN0lurEio8Z5%2Fuploads%2FfnyRH3OrbLw2f5hDwme7%2Fwin_jelly_add_folder_final_local.png?alt=media&#x26;token=9db955a9-2647-4506-bb92-6a13cab52c50" alt="Path to folder"><figcaption></figcaption></figure></div>

6. Click **OK** twice.

#### Add remote media <a href="#add-remote-media" id="add-remote-media"></a>

You can also add remotely shared media folders from your [Meshnet peers](https://meshnet.nordvpn.com/~/changes/1En9yEoSh1cmyjIBsnEk/features/linking-devices-in-meshnet) to Jellyfin. However, the Jellyfin application itself does not establish connections to shared folders. As a result, you must first mount the shared folder inside the operating system.

{% tabs %}
{% tab title="Windows" %}
**Mount a network share**

Instructions for mounting network shares on Windows can be found in the [Mount a network share section](https://meshnet.nordvpn.com/~/changes/1En9yEoSh1cmyjIBsnEk/how-to/set-up-folder-sharing/configure-and-access-shared-folders-on-windows#mount-a-network-share) of the "Configure and access shared folders on Windows" article.<br>

**Map a network share in Jellyfin**

With the network share mounted, you can map it in Jellyfin.

1. Open the Jellyfin dashboard.

2. From the menu on the left, under **Server**, select **Libraries** and click **Add media library**.

   <div align="left"><figure><img src="https://3559400189-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F0cTezbT2vN0lurEio8Z5%2Fuploads%2FE9YfMy98tYTQaBcY6xFS%2Fwin_jelly_add_media_mesh.png?alt=media&#x26;token=ff1dea6c-be5a-476f-8728-437d35f3ec2f" alt="Libraries section of the Jellyfin dashboard."><figcaption></figcaption></figure></div>

3. In the new window, select the desired content type from the dropdown list and enter a display name.

4. Click the plus (+) button next to **Folders**.<br>

   <div align="left"><figure><img src="https://3559400189-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F0cTezbT2vN0lurEio8Z5%2Fuploads%2Frg7bUq6z8PyxAkpJcej3%2Fwin_jelly_add_folder_mesh.png?alt=media&#x26;token=12d380c7-c4f0-4516-adc1-3da32894f7ca" alt="Add button"><figcaption></figcaption></figure></div>

5. In the new window, select the letter of your mounted network share.<br>

   <div align="left"><figure><img src="https://3559400189-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F0cTezbT2vN0lurEio8Z5%2Fuploads%2FIlKqTutPdvOEGVC56gXA%2Fwin_jelly_add_folder_final_mesh.png?alt=media&#x26;token=074a0360-7615-4213-92be-e439e9a76222" alt="Path to folder"><figcaption></figcaption></figure></div>

6. Click **OK** twice.
   {% endtab %}

{% tab title="macOS" %}
**Mount a network share**

On macOS, the shared location is mounted automatically after you connect to it. To connect to a network share on macOS, refer to the [Access shared folders section](https://meshnet.nordvpn.com/~/changes/1En9yEoSh1cmyjIBsnEk/how-to/set-up-folder-sharing/configure-and-access-shared-folders-on-macos#access-shared-folders) of the "Configure and access shared folders on macOS" article.

After mounting the shared folder, the path to it will be as follows:

```
/Volumes/<NameOfShare>
```

**Example**

```
/Volumes/MeshnetVideos
```

\
**Map a network share in Jellyfin**

With the network share mounted, you can map it in Jellyfin.

1. Open the Jellyfin dashboard.

2. From the menu on the left, under **Server**, select **Libraries** and click **Add media library**.<br>

   <div align="left"><figure><img src="https://3559400189-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F0cTezbT2vN0lurEio8Z5%2Fuploads%2FdKW5IrnCTdpe881VPhtq%2Fmac_add_media.png?alt=media&#x26;token=f5d152b8-d652-471b-b654-db1d860eef99" alt="Libraries section of the Jellyfin dashboard."><figcaption></figcaption></figure></div>

3. In the new window, select the desired content type from the dropdown list and enter a display name.

4. Click the plus (+) button next to **Folders**.

   &#x20;

   <div align="left"><figure><img src="https://3559400189-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F0cTezbT2vN0lurEio8Z5%2Fuploads%2FVN1P7niZpSiUcd3oOAaq%2Fmac_add_folder.png?alt=media&#x26;token=5dcc72f0-982e-4745-9f7b-fedd42c59b8a" alt="Add button"><figcaption></figcaption></figure></div>

5. In the new window, select the path to the mounted network share.

   <div align="left"><figure><img src="https://3559400189-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F0cTezbT2vN0lurEio8Z5%2Fuploads%2FPnZ691QE9VXZARvs932z%2Fmac_select_path.png?alt=media&#x26;token=8f2402c7-6b50-47f6-9d3d-bd25071dd06a" alt="Path to folder"><figcaption></figcaption></figure></div>

6. Click **OK** twice.

{% hint style="info" %}
**Note**

Upon restarting your Mac, you'll need to reconnect to the network share. Until that is done, the media content will be visible but unplayable.
{% endhint %}
{% endtab %}

{% tab title="Linux" %}
**Mount a network share**

Instructions for mounting network shares on Linux can be found in the [Mount a network share section](https://meshnet.nordvpn.com/~/changes/1En9yEoSh1cmyjIBsnEk/how-to/set-up-folder-sharing/configure-and-access-shared-folders-on-linux#mount-a-network-share) of the "Configure and access shared folders on Linux" article.<br>

**Map a network share in Jellyfin**

With the network share mounted, you can map it in Jellyfin.

1. Open the Jellyfin dashboard.

2. From the menu on the left, under **Server**, select **Libraries** and click **Add media library**.<br>

   <div align="left"><figure><img src="https://3559400189-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F0cTezbT2vN0lurEio8Z5%2Fuploads%2FwOoFerk9OhmJHFobHOtg%2Flinux_jelly_add_content.png?alt=media&#x26;token=80a125fb-a502-456e-a335-37ee4b96582b" alt="Libraries section of the Jellyfin dashboard."><figcaption></figcaption></figure></div>

3. In the new window, select the desired content type from the dropdown list and enter a display name.

4. Click the plus (+) button next to **Folders**.<br>

   <div align="left"><figure><img src="https://3559400189-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F0cTezbT2vN0lurEio8Z5%2Fuploads%2FZeZv7zZQ776SaixSBHMH%2Flinux_jelly_add_folder_mesh.png?alt=media&#x26;token=5dc4adca-a702-4060-b8f2-ec97391f72e9" alt="Add button"><figcaption></figcaption></figure></div>

5. In the new window, select the path to the mounted network share.<br>

   <div align="left"><figure><img src="https://3559400189-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F0cTezbT2vN0lurEio8Z5%2Fuploads%2FiJsu3aIILYDY3K0GO0jZ%2Flinux_add_mounted.png?alt=media&#x26;token=32b35814-92c9-411a-832e-e2eafcdaf7dd" alt="Path to folder"><figcaption></figcaption></figure></div>

6. Click **OK** twice.
   {% endtab %}
   {% endtabs %}

## Access a Jellyfin server <a href="#access-a-jellyfin-server" id="access-a-jellyfin-server"></a>

After setting up the Jellyfin server and adding the desired media content to it, you can access the server remotely.

### Method 1: Using Jellyfin Media Player <a href="#method-1-using-jellyfin-media-player" id="method-1-using-jellyfin-media-player"></a>

The first method to access media content stored on a Jellyfin server is by using Jellyfin’s media player software.

{% tabs %}
{% tab title="Windows" %}

1. Download and install Jellyfin Media Player for Windows from [Jellyfin’s GitHub page](https://github.com/jellyfin/jellyfin-media-player/releases).

2. Copy the server device’s Nord name directly from the NordVPN application by clicking it.

3. Launch **Jellyfin Media Player** and click **Add server**.

4. In the **Host** field, paste the copied Nord name, followed by `:8096`. Click **Connect**.<br>

   <div align="left"><figure><img src="https://3559400189-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F0cTezbT2vN0lurEio8Z5%2Fuploads%2FKAMMEDGkgHml8OJbGWs9%2Fwin_jelly_connect_to_server.png?alt=media&#x26;token=02eb52e9-4a39-4ad3-9396-9bad274de2be" alt="Jellyfin server Nord name and port number"><figcaption></figcaption></figure></div>

5. Sign in to the user account created on the Jellyfin server.

All media content stored on the Jellyfin server is now accessible via the Jellyfin Media Player app.
{% endtab %}

{% tab title="Android" %}

1. Download and install Jellyfin for Android from [Jellyfin’s downloads page](https://jellyfin.org/downloads).

2. Copy the server device's Nord name directly from the NordVPN application by tapping it.\
   \
   ![Nord name](https://3559400189-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F0cTezbT2vN0lurEio8Z5%2Fuploads%2FG6kOBTnz26Ynq5Fxm8il%2Fnord_name1.png?alt=media\&token=b8722b6c-61ab-4907-87e1-fb51e63e9d60)

   &#x20;

3. Launch **Jellyfin**.

4. In the **Connect to server** field, paste the copied Nord name and tap **Connect**.\
   \
   ![Jellyfin server Nord name](https://3559400189-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F0cTezbT2vN0lurEio8Z5%2Fuploads%2FZ7V78SuA8ndCE3vYFu6H%2Fandroid_connect_server.png?alt=media\&token=f2d3360e-67db-422a-9e0b-14ddb95434c8)

5. Sign in to the user account created on the Jellyfin server.

All media content stored on the Jellyfin server is now accessible via the Jellyfin Media Player app.
{% endtab %}

{% tab title="iOS" %}

1. Download and install [Jellyfin Mobile for iOS](https://apps.apple.com/us/app/jellyfin-mobile/id1480192618?mt=8) from the App Store.
2. Copy the server device's Nord name directly from the NordVPN application by tapping it.\
   \
   ![Nord name](https://3559400189-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F0cTezbT2vN0lurEio8Z5%2Fuploads%2FMV1LuEvKMqQLYG4rBA2D%2Fios_nord_name.png?alt=media\&token=2b74cfe5-e746-46ba-b034-31e3d80ac5b7)

   &#x20;
3. Launch **Jellyfin**.
4. In the **Server address** field, paste the copied Nord name, followed by `:8096`, and tap **go**.\
   \
   ![Jellyfin server Nord name and port number](https://3559400189-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F0cTezbT2vN0lurEio8Z5%2Fuploads%2FtMqd2zf87galkggfcVze%2Fios_server_address.png?alt=media\&token=38a86cf8-9a1d-44bf-801e-b58e34972748)

   &#x20;
5. Sign in to the user account created on the Jellyfin server.

All media content stored on the Jellyfin server is now accessible via the Jellyfin Media Player app.
{% endtab %}

{% tab title="macOS" %}

1. Download and install Jellyfin Media Player for macOS from [Jellyfin’s GitHub page](https://github.com/jellyfin/jellyfin-media-player/releases).

2. Copy the server device’s Nord name directly from the NordVPN application.

3. Launch **Jellyfin Media Player** and click **Add server**.

4. In the **Host** field, paste the copied Nord name, followed by `:8096`. Click **Connect**.<br>

   <div align="left"><figure><img src="https://3559400189-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F0cTezbT2vN0lurEio8Z5%2Fuploads%2FbCT4sFtjPen1yQjeFIgt%2Fmac_connect_to_server.png?alt=media&#x26;token=d37129a8-45be-4cff-afc1-d807362b1044" alt="Jellyfin server Nord name and port number"><figcaption></figcaption></figure></div>

5. Sign in to the user account created on the Jellyfin server.

All media content stored on the Jellyfin server is now accessible via the Jellyfin Media Player app.
{% endtab %}

{% tab title="Linux" %}

#### Install Jellyfin Media Player <a href="#install-jellyfin-media-player" id="install-jellyfin-media-player"></a>

1. Download the Jellyfin Media Player installation file for your Linux distribution from [Jellyfin’s GitHub page](https://github.com/jellyfin/jellyfin-media-player/releases).

2. Right-click the downloaded file and select **Open with other application**.\
   \
   ![Open with other application](https://3559400189-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F0cTezbT2vN0lurEio8Z5%2Fuploads%2FRXzQNh68dtDy7fuKTkXR%2Flinux_open_with.png?alt=media\&token=3b214a38-81ee-4153-82bb-239dd97be585)

   &#x20;

3. Choose **Software install** and click **Select**.\
   \
   ![Software install option](https://3559400189-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F0cTezbT2vN0lurEio8Z5%2Fuploads%2FSTz2fq5YJNw4wK5ZgJuh%2Flinux_sw_install.png?alt=media\&token=a2ee1190-ddbf-4dbc-b4ed-b8d1ecfbfdf8)

   &#x20;

4. Click the **Install** button.<br>

   <div align="left"><figure><img src="https://3559400189-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F0cTezbT2vN0lurEio8Z5%2Fuploads%2FSYiWYJK2zceP8y76QRlD%2Flinux_jelly_install.png?alt=media&#x26;token=fcc278c3-5148-47da-9fa3-a07e7fb04c95" alt="Install button"><figcaption></figcaption></figure></div>

5. Enter your account password and click **Authenticate**.

#### Connect to the Jellyfin server <a href="#connect-to-jellyfin-server" id="connect-to-jellyfin-server"></a>

1. Copy the server device’s Nord name from the `nordvpn meshnet peer list` command output.

2. Launch **Jellyfin Media Player** and click **Add server**.

3. In the **Host** field, paste the copied Nord name, followed by `:8096`. Click **Connect**.<br>

   <div align="left"><figure><img src="https://3559400189-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F0cTezbT2vN0lurEio8Z5%2Fuploads%2FGjIJPkqG74RYSEfKWeQQ%2Flinux_connect_to_server.png?alt=media&#x26;token=2cb871dd-d96a-4f01-8da0-b1ad79eb82ca" alt="Jellyfin server Nord name and port number"><figcaption></figcaption></figure></div>

4. Sign in to the user account created on the Jellyfin server.

All media content stored on the Jellyfin server is now accessible via the Jellyfin Media Player app.
{% endtab %}
{% endtabs %}

### Method 2: Using an internet browser <a href="#method-2-using-an-internet-browser" id="method-2-using-an-internet-browser"></a>

You can also access the Jellyfin server through an internet browser, a method that works consistently across all devices using Meshnet.

1. Copy the server device’s Nord name directly from the NordVPN application.

2. Open your internet browser.

3. Paste the copied Nord name followed by `:8096/` to the URL field and press **Enter**. \
   \
   **Example**\
   `secret.meerkat-andes.nord:8096/`

   &#x20;

   <div align="left"><figure><img src="https://3559400189-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F0cTezbT2vN0lurEio8Z5%2Fuploads%2FK5mkrs9o86bj9BheeTuM%2Fjelly_access_web_1.png?alt=media&#x26;token=0b09ae03-e1c9-46cc-bf19-bb9664da0ee4" alt="Jellyfin web UI login page"><figcaption></figcaption></figure></div>

4. Sign in to the user account created on the Jellyfin server.

All media content stored on the Jellyfin server is now accessible via the internet browser.
