# What is Termius

This page introduces the core concepts of Termius, including Vaults, Groups, Hosts, Keychain, and Terminal, and explains how they work together to organize infrastructure access.

<figure><img src="/files/hIjSM08T40FNVef3BbpP" alt=""><figcaption></figcaption></figure>

Termius is a **modern SSH client** designed for productivity and collaboration. Connect securely to remote infrastructure with just one click from any device and collaborate with your team in an encrypted cloud [vault](#vaults).

Unlike traditional SSH clients that treat each connection as a separate session string, Termius provides a structured model for managing infrastructure access.

## Basic concepts

Termius organizes infrastructure access around three core concepts: Vaults, Groups, and Hosts.

```abap
Vaults
└── Groups
	└── Hosts 
		├── SSH (port 22, key: prod-key)  
		├── SFTP  
		└── Telnet (port 23)
```

Instead of thinking in terms of raw connection strings, Termius lets you think in terms of machines and environments.

### Vaults

<figure><img src="/files/bulaLkQPIky2MDomEsTa" alt=""><figcaption></figcaption></figure>

Vaults are the top-level structure in Termius for organizing data, controlling access, and syncing across devices. They provide **end-to-end encrypted storage** for all your data, including Hosts, Groups, SSH keys, Snippets, Port Forwarding rules, and Known Hosts.

Every account includes a **Personal vault**, accessible only to you and synced across all your devices.

When you add team members, a **Team vault** is created automatically. This vault is shared with all team members, allowing your team to manage infrastructure together.

You can also create additional vaults to **separate data and control access** across different team members or environments. Learn more in [Team vaults](/team-collaboration/team-vaults).

### Groups

<figure><img src="/files/B7Zn0psCIm55iNRgjI7x" alt=""><figcaption></figcaption></figure>

Groups are collections of Hosts that share a common attribute, such as a customer, environment, region, or project. Groups support nesting, so you can reflect the structure of your infrastructure.

Groups can also define shared settings, including protocol options, credentials, jump hosts, and ports. They are automatically inherited by all Hosts within the group.

For example, if you configure a jump host for a Group, every Host within it will automatically connect through that jump host.

```abap
Group: Production
├── Group: AWS EU
│   ├── Host: web-01
│   └── Host: db-01
└── Group: AWS US
    ├── Host: web-02
    └── Host: db-02
```

Learn more about how to create and manage groups in [Groups and tags](/organize-and-connect-to-hosts/groups-and-tags).

### Hosts

<figure><img src="/files/BXRyWeYkS20SJgYFLuI5" alt=""><figcaption></figcaption></figure>

A Host represents a remote machine with all the protocols used to connect.\
It is defined by an IP address or a hostname and includes:

* **Labels and tags** for search and navigation
* **Multiple protocols:** SSH, Mosh, SFTP, Telnet, each with its own port and credentials
* **Authentication settings:** SSH keys, certificates, or password(s)
* **Jump host** or **proxy** settings

You only need to configure the machine once and then you are able to connect to it in multiple ways without duplicating settings.

```abap
Host: db-prod-01 (10.0.1.15) 
|── SSH port 22 key: prod-db-key user: ubuntu 
|── SFTP port 22 key: prod-db-key user: ubuntu 
└── Telnet port 23 user: admin
```

***

## Termius Keychain

<figure><img src="/files/vZwF3EY0DFKtujUSjL52" alt=""><figcaption></figcaption></figure>

Termius Keychain is a secure storage for credentials like usernames, passwords, [SSH keys and certificates](/keychain/ssh-keys-and-certificates), and [Identities](/keychain/identities). Items in the Keychain can be referenced by multiple Hosts and Groups without duplicating them.

When a password changes, update it in the Keychain once. Every Host that references it automatically picks up the change.

Learn how Termius keeps your data safe in [Security](/security/encryption-overview).

***

## Terminal

The terminal in Termius is where you interact with connected hosts. It supports standard terminal emulation and includes features built directly into the session experience.

### Workspaces

<figure><img src="/files/1mS98DZ0MFmYl1JYdV9p" alt=""><figcaption></figcaption></figure>

A Workspace groups two or more terminal sessions into a single environment. Sessions inside a Workspace can be viewed one at a time in Focus mode, or all at once in Split view. You can broadcast a command to all sessions simultaneously and save the entire setup as a reusable template.

Learn how to use [Workspaces](/terminal/workspaces) to manage multiple sessions in one environment.

### Snippets

<figure><img src="/files/crEaXrnBGlv2YpyPJPUp" alt=""><figcaption></figcaption></figure>

Snippets are saved commands or shell scripts accessible directly from the terminal. You can run them from the side panel, trigger them via autocomplete, or execute them on multiple hosts at once from the Snippets screen.

Learn how to use [Snippets](/terminal/snippets) to save, organize, and run commands across your hosts.

### Autocomplete

<figure><img src="/files/P9ZZDdT9jYA1EAvMaVO5" alt=""><figcaption></figcaption></figure>

Autocomplete in Termius suggests completions from many sources, such as snippets, shell history commands, paths, built-in commands with arguments, and sudo passwords.

#### **AI in the terminal**

<figure><img src="/files/J6usS11URZGV3uGEad7Y" alt=""><figcaption></figcaption></figure>

Termius can convert a plain-language description into a shell command. Press the **Down Arrow** in the terminal, describe what you want to do, and Termius generates the command using AI.

{% hint style="info" %}
AI command generation is part of Autocomplete and requires an account.
{% endhint %}

Learn how to enable [Shell integration & autocomplete](/terminal/autocomplete-and-shell-integration) to enhance your terminal experience.

### Side panel

<figure><img src="/files/GDv4P2OJDHP3wOhwCyk8" alt=""><figcaption></figcaption></figure>

The terminal side panel helps you customize the look of your terminal with themes and boost your productivity with command history and snippets.

## Session logs

<figure><img src="/files/LIg2VQP21Gja4RroFE9u" alt=""><figcaption></figcaption></figure>

Termius automatically collects terminal session logs for every host. Logs are synced across devices and shared with your team. You can search logs and save them using Bookmarks.

Learn how to use [Team session logs](/team-collaboration/team-session-logs) to review activity, troubleshoot issues, and understand what happened in your sessions.


# Quick start

This guide walks you through installing Termius, setting up your account, and connecting to your first host.

Termius is an SSH client for connecting to remote hosts, managing infrastructure, and running terminal sessions across devices.&#x20;

With a paid subscription, there is no limit on the number of devices you can use. Termius is available on macOS, Windows, Linux, iOS, and Android, so you can use it across all your devices.

See [Download Termius](/getting-started/download-termius).

## Install Termius

{% stepper %}
{% step %}

#### Download and install Termius on your device

Termius is supported on macOS, Windows, Linux, iOS, and Android. Use it across all your devices. See [Download Termius](/getting-started/download-termius)
{% endstep %}

{% step %}

#### Sign in or create an account

When you open the app for the first time, you will be asked to **sign in** or **create an account**.

Creating an account starts a **Pro trial**. You will not be charged automatically when the trial ends. After the trial, you can choose to subscribe or downgrade to the **Starter** plan.\
Learn more about plans in [Billing and plans](/administration/billing-and-plans#h_01jr7a3h6qnpeab58wn5dy60ey)

You can also use Termius locally without an account by logging out after the trial.
{% endstep %}

{% step %}

#### Save your Encryption Password

When creating an account, you must set an **encryption password**. This password is used to encrypt and decrypt your data. Even if you choose to sign up with Google, you still need to specify a separate encryption password to secure your data.

{% hint style="danger" %}
Store it securely, for example, in a password manager.

If you forget your **Encryption Password**, Termius cannot decrypt your data, and you will need to reset your account and lose all stored data.
{% endhint %}
{% endstep %}
{% endstepper %}

## Connect to a host

Once your account is created and you are logged in, you can create your first host.

{% stepper %}
{% step %}
Click `New Host`

<div align="center" data-full-width="true"><figure><img src="/files/ZeRNUSdma8T9sT1aFUzM" alt=""><figcaption></figcaption></figure></div>
{% endstep %}

{% step %}
Enter the **IP address**, **port**, **username,** and **password**.\
Termius auto-saves your host.

<figure><img src="/files/YBIP9gNAzVpt97LBl5UF" alt=""><figcaption></figcaption></figure>
{% endstep %}

{% step %}
Double-click the host in the list or click `Connect`

<figure><img src="/files/r5YAurv1ANyXFB2eIs64" alt=""><figcaption></figcaption></figure>
{% endstep %}
{% endstepper %}

Once the connection is established, you will see the terminal where you can control your host and run commands. Termius will also auto-detect the operating system on your host and update the host icon accordingly.

See [Connecting to a server](/organize-and-connect-to-hosts/connecting-to-a-server) for a more complete review of supported protocols and host settings.

## Explore Termius Settings

<figure><img src="/files/4WzvKSdXYYFLI31DOVPv" alt=""><figcaption></figcaption></figure>

Termius aims to provide users with meaningful default settings. Some of these settings can be customized to accommodate your existing habits.

Navigate to `Termius > Settings > Terminal` or `Termius > Settings > Shortcuts` to customize your terminal experience in Termius.

## What to do next

Now that you’ve connected to your first host, continue with setting up Vaults to securely store and organize your hosts, credentials, and snippets. With a paid subscription, Vaults sync your data across devices and enable secure sharing with your team.

Learn how to get started with vaults in [Learn about Vaults](/getting-started/learn-about-vaults).


# Download Termius

This page covers how to install Termius on desktop and mobile devices.

## Overview

Termius is available as a desktop application and as native mobile app, so you can connect to your infrastructure from any device.

Apps installed from the official Termius website offer the most complete functionality and update automatically.

{% hint style="info" %}
Apps installed from the Mac App Store and Snap do not have access to **Local Terminal** and **Local Storage** in **SFTP**.
{% endhint %}

## macOS

1. Download [Termius.dmg](https://termius.com/download/macos) from the official website
2. Drag and drop the Termius app to your Applications folder
3. Open Termius, then `Sign in` or `Create` a new account to sync your data

## Windows

1. Download [Termius.exe](https://termius.com/download) from the official website
2. Run the installer and follow the on-screen instructions
3. Open Termius, then `Sign in` or `Create` a new account to sync your data

## Linux

1. Download the [Termius.deb](https://termius.com/download) package from the official website
2. Run the installer and follow the on-screen instructions
3. Open Termius, then `Sign in` or `Create` a new account to sync your data

## iOS and Android

1. Download Termius from the [App Store](https://apps.apple.com/us/app/termius-terminal-ssh-client/id549039908) or [Google Play](https://play.google.com/store/apps/details?id=com.server.auditor.ssh.client)
2. `Sign in` or `Create` a new account to sync your data


# Learn about vaults

This page explains how Vaults in Termius work, how to organize and control access to your infrastructure, and how to create and manage vaults for secure collaboration and data separation.

Vaults in Termius are the **end-to-end encrypted cloud storage** for Hosts, Keys, Snippets, Port Forwarding rules, and Known Hosts. Vaults enable **sync** across devices and **secure sharing** across your team.

Your Termius account includes three types of vaults:

* Your **Personal vault** is for items not meant to be seen by the team, such as credentials or test and work-in-progress servers.
* **Team vault** is created automatically once you invite your first teammate. This vault is shared with everyone on the team, enabling your team to manage infrastructure together.
* **Custom team vaults** are additional vaults when your company requires **granular permissions** and controlled access to information across team members. Use them to separate data by team, project, or environment, and define who can access each vault.

This structure allows you to organize access based on your team’s needs.

For example, a SaaS company has dedicated DevOps, Developers, and QA teams, each with different access levels to the infrastructure. The company uses vaults in Termius to separate **Production**, **Development**, and **Staging** environments. DevOps has access to all three. Developers can access Development and Staging, while QA can access only Staging.

For more examples and ideas on organizing your vaults, see [Team vaults](/team-collaboration/team-vaults).

### Set up a new vault

<figure><img src="/files/PoQUk3D4jlwka4dveX0f" alt=""><figcaption></figcaption></figure>

1. Click the chevron on the `Vault` tab and click `Add vault`
2. Give the vault an explicit name
3. Select the teammates you want to collaborate with in this vault and assign their permissions
4. Click `Create Vault` to save the changes
5. When adding new hosts, specify which vault you want to save them in


# Import existing hosts

This page describes how to import your data to Termius from a previously used SSH client.

Termius supports several import options, allowing you to migrate your existing hosts to Termius.

## Import data

{% tabs %}
{% tab title="\~/.ssh/config file" %}
Termius supports importing the contents of the `~/.ssh` folder, including `ssh_config`, `known_hosts`, and key files:

1. Navigate to the **Hosts** screen and select `Import` from the `New Host` drop-down

   <figure><img src="/files/SZx1nmGjoBSnR8WIGb9s" alt=""><figcaption></figcaption></figure>
2. Choose `~/.ssh` as the import source

   <figure><img src="/files/qooXejTrc8UslXVD5Iiu" alt=""><figcaption></figcaption></figure>
3. Select the entities you want to import and click `Import`

   <figure><img src="/files/HDbsa4Apn4XWjGO18HXm" alt=""><figcaption></figcaption></figure>
4. The imported entities will be added to your **Personal vault**

{% hint style="info" %}
There are a few limitations to be aware of:

* `ProxyCommand` is not supported and will be ignored
* `JumpHost` settings will be converted into a Host chain
* `IdentityFile` can only be imported with the Termius app downloaded directly from the website
  {% endhint %}
  {% endtab %}

{% tab title="CSV" %}
Termius can import hosts from a CSV file, including labels, IP addresses, protocols, ports, groups, subgroups, tags, and credentials.

#### Fill out the Termius CSV template first

1. Navigate to the **Hosts** screen and select `Import` from the `New Host` drop-down

   <figure><img src="/files/SZx1nmGjoBSnR8WIGb9s" alt=""><figcaption></figcaption></figure>
2. Choose `CSV` as the import source

   <figure><img src="/files/qooXejTrc8UslXVD5Iiu" alt=""><figcaption></figcaption></figure>
3. Download the template. Enter the information you want to import into the file. Ensure that each host's hostname or IP address is specified in the CSV file

   <figure><img src="/files/2lCrKo2zT7tXPchqAkPD" alt=""><figcaption></figcaption></figure>

#### Import into Termius

When preparing a CSV file, make sure it matches the required format. Once ready, upload your file to import hosts into Termius:

1. Select `Import` from the `New Host` drop-down on the Hosts screen

   <figure><img src="/files/SZx1nmGjoBSnR8WIGb9s" alt=""><figcaption></figcaption></figure>
2. Choose `CSV` as the import source, then click `Skip download`

   <figure><img src="/files/mirBmQQpslbYhCClu0ST" alt=""><figcaption></figcaption></figure>
3. Drag and drop your file to Termius, then click `Continue`

   <figure><img src="/files/svefdVC1CeqbLmAFplYB" alt=""><figcaption></figcaption></figure>
4. The imported entities will be added to your **Personal vault**
   {% endtab %}

{% tab title="PuTTY" %}
Termius can import connections, tunnels, and keys from PuTTY.

#### Import from PuTTY on Windows

Termius can automatically import your saved PuTTY sessions and convert them into hosts, so you can reuse your existing setup without recreating it:

1. Navigate to the **Hosts** screen and select `Import` from the `New Host` drop-down

   <figure><img src="/files/SZx1nmGjoBSnR8WIGb9s" alt=""><figcaption></figcaption></figure>
2. Choose `PuTTY` as the import source

   <figure><img src="/files/qooXejTrc8UslXVD5Iiu" alt=""><figcaption></figcaption></figure>
3. Select the entities you want to import and click `Import`

   <figure><img src="/files/4d7Gv9dxzHN1ZmOBeMDZ" alt=""><figcaption></figcaption></figure>
4. The imported entities will be added to your **Personal vault**

***

#### Import from PuTTY on macOS and Linux

**1. Export from PuTTY**

If you want to transfer your PuTTY sessions to another system, export them as a file:

1. Open Windows PowerShell
2. Run the following command:\
   `reg export HKCU\Software\SimonTatham ([Environment]::GetFolderPath("Desktop") + "\putty.reg")`
3. Transfer the `putty.reg` file to your macOS or Linux device<br>

**2. Import into Termius**

Once you have the exported file:

1. Navigate to the **Hosts** screen and select `Import` from the `New Host` drop-down

   <figure><img src="/files/SZx1nmGjoBSnR8WIGb9s" alt=""><figcaption></figcaption></figure>
2. Choose `PuTTY` as the import source, then drag and drop your **.reg** file

   <figure><img src="/files/qooXejTrc8UslXVD5Iiu" alt=""><figcaption></figcaption></figure>
3. Select the entities you want to add to Termius and click `Import`

   <figure><img src="/files/4d7Gv9dxzHN1ZmOBeMDZ" alt=""><figcaption></figcaption></figure>
4. The imported entities will be added to your **Personal vault**
   {% endtab %}

{% tab title="MobaXterm" %}
Termius can import sessions, folders, and SSH tunnels from MobaXterm.\
MobaXterm stores sessions in a configuration file, so you can transfer them by copying the `MobaXterm.ini` file and importing it into Termius.

#### 1. Export the configuration file

1. In MobaXterm, navigate to `Settings > Export configuration`
2. Select an option to export the entire MobaXterm configuration

#### 2. Import into Termius

1. Navigate to the **Hosts** screen and select `Import` from the `New Host` drop-down<br>

   <figure><img src="/files/SZx1nmGjoBSnR8WIGb9s" alt=""><figcaption></figcaption></figure>
2. Choose `MobaXterm` as the import source, then drag and drop your **.mobaconf** or **.mxtsession** file

   <figure><img src="/files/qooXejTrc8UslXVD5Iiu" alt=""><figcaption></figcaption></figure>
3. Enter the passphrase if the file is encrypted
4. Select the entities you want to import and click `Import`

   <figure><img src="/files/PcRNNO4ZGFpuvOCVihFW" alt=""><figcaption></figcaption></figure>
5. The imported entities will be added to your **Personal vault**
   {% endtab %}

{% tab title="SecureCRT" %}
Termius can import hosts, groups, and credentials from SecureCRT.\
SecureCRT stores sessions as files on all platforms, so you can transfer them by copying the configuration folder and importing it into Termius.

#### 1. Export the configuration file

1. In SecureCRT, navigate to `Tools` > `Export settings`
2. Choose a file name and click `Export`

#### 2. Import into Termius

1. Navigate to the **Hosts** screen and select `Import` from the `New Host` drop-down

   <figure><img src="/files/SZx1nmGjoBSnR8WIGb9s" alt=""><figcaption></figcaption></figure>
2. Choose `SecureCRT` as the import source, then drag and drop your **.xml** file

   <figure><img src="/files/qooXejTrc8UslXVD5Iiu" alt=""><figcaption></figcaption></figure>
3. Enter the passphrase if the file is encrypted
4. Select the entities you want to import and click `Import`

   <figure><img src="/files/tngYfLhRXzK5tTLw4izw" alt=""><figcaption></figcaption></figure>
5. The imported entities will be added to your **Personal vault**
   {% endtab %}
   {% endtabs %}

## Organize your data

To keep your hosts structured and easy to manage, use **Groups** and **Vaults** to organize your infrastructure. This helps you separate environments, simplify navigation, and control access across your team.

Learn more in [Groups and tags](/organize-and-connect-to-hosts/groups-and-tags) and [Team vaults](/team-collaboration/team-vaults).


# Invite your team

This page explains how Termius enables team collaboration with Vaults, helping you keep infrastructure data in sync, establish a single source of truth, and manage access for your team.

<figure><img src="/files/EllH4NW1E45MCoiRKiXS" alt=""><figcaption></figcaption></figure>

Termius is a modern SSH client designed for collaboration. It helps your team stay on the same page by keeping Hosts, Keys, Snippets, Port Forwarding rules, and Known Hosts in sync with encrypted cloud vaults.

### Single source of truth <a href="#single-source-of-truth" id="single-source-of-truth"></a>

Old-school SSH clients were never designed with collaboration in mind. Teams often maintain shared spreadsheets, wikis, or NetBox as a single source of truth. This scattered approach leads to wasted time and confusion. Team members search for connection information in one place and copy and paste it into their SSH client of choice, only to find that someone forgot to update the details. So they spend even more time asking where to get the latest connection details.

Termius transforms this process with team vaults. Vaults serve as a single source of truth for Hosts, Groups, Snippets, Port Forwarding rules, and Credentials, which are stored securely and updated in real time. With a single click, every team member gets immediate access to the connection details they need, ensuring that everyone is always on the same page.

### Invite your team

<figure><img src="/files/GppqfIHeLOKqqn5O1wRy" alt=""><figcaption></figcaption></figure>

Adding new team members in Termius is straightforward, but access to shared data is granted in steps:

1. Send the invitations to your teammates
2. Once the invitation is accepted, the new member joins the team and gets access to their **Personal** vault
3. The team owner receives a notification prompting them to grant access to the Team vault containing the shared data
4. Only after access is granted can the team member see the shared data in Termius

See [Team vaults](/team-collaboration/team-vaults) for more details on setting up and managing your team.


# Sync to mobile

This page shows how to get started on mobile with sync so you can access and manage your infrastructure from anywhere.

<figure><img src="/files/xj8pu9f0ZQOa3E87h4Hb" alt=""><figcaption></figcaption></figure>

Termius mobile app is a fully-fledged SSH client for [iOS](https://termius.com/free-ssh-client-for-iphone), [iPadOS](https://termius.com/free-ssh-client-for-ipad), and [Android](https://termius.com/free-ssh-client-for-android). It can do everything your desktop app can, so you can work from anywhere. Whether you’re responding to an emergency, updating infrastructure on the go, or prefer the convenience of your phone or tablet, the mobile app keeps your infrastructure within reach.

### **Designed for mobile**

Termius includes a keyboard add-on with all the necessary keys, gesture support for fast terminal navigation, and snippets to improve the terminal experience. This helps you stay as productive on mobile as you are on desktop.

### **Quick start with sync**

Automatic sync across all your vaults lets you start connecting on a new device in no time, without having to set everything up from scratch.

### Set up the Termius mobile app <a href="#set-up-termius-mobile-app" id="set-up-termius-mobile-app"></a>

Getting started with Termius on mobile takes just a few steps:

1. Install the Termius app on [iOS](https://termius.com/download/ios) or [Android](https://termius.com/download/android).
2. Log in to your account — your Vaults, hosts, and configurations will be synced automatically.

Once logged in, you can immediately connect to your hosts and continue working without any additional setup.

Use the connection method that fits your workflow and continue working across your devices.

See [Connecting to a server](/organize-and-connect-to-hosts/connecting-to-a-server) for supported protocols and setup steps.


# Glossary

This page defines key terms and concepts used in Termius to help you better understand features, workflows, and documentation.

### **Host**

A host in Termius represents a remote machine that can be accessed via multiple protocols, such as SSH, Telnet, etc. It is defined by an IP address and includes metadata, such as labels and tags, for easier search and navigation. You can configure multiple protocols for a single Host. For example, you can set up SSH with a port, credentials, and a jump host; enable Mosh when you need connection stability while changing networks; or configure Telnet with a different port and credentials.

### **Group**

A group is a labeled collection of Hosts that share a common characteristic, such as a customer, location, or environment. A nested structure helps organize Hosts and simplify navigation. All hosts in a group inherit the group settings unless they are overridden.

### **Key**

A key in Termius is a labeled secret container that holds private and public keys, certificates, and passphrases.

### **Identity**

An identity in Termius holds a username, password, and key. It links to hosts and groups to eliminate credential duplication.

### **Snippet**

A snippet is a labeled shell script for easy repeated executions.

### **Snippet package**

A snippet package is a collection of related snippets. It allows you to organize your snippets by type, target system, or domain.

### **Known hosts**

A known host in Termius stores the remote machine's public key. It is used to verify the host's identity on connection, to prevent man-in-the-middle attacks.

### **Port forwarding rule**

A port forwarding rule in Termius stores information about remote, local, and dynamic port forwardings so you can get them up in one click.

### **Vault**

A vault is the top-level organizational unit, designed for access control. It's an end-to-end encrypted storage for all your data in Termius: Hosts, Groups, Keys, Snippets, Port Forwarding rules, and Known Hosts. Vaults let you give different members access to different resources.

### **Local vault**

The local vault stores data only on the current device, without syncing or sharing it across devices. Data in the Local Vault is not backed up.&#x20;

If you don't have a subscription, log out of your Starter account, or the app removal will lead to permanent deletion of unsynchronized changes.

### **Personal vault**

The personal vault is created automatically when you sign up. It can be used for items not meant to be seen by the team, such as credentials or test and work-in-progress servers.

Data in the Personal Vault is protected by your encryption password and is not accessible without it.

### **Team vault**

The team vault is created automatically once you invite your first teammate. This vault is shared with everyone on the team, enabling your team to manage infrastructure together.

### Custom team vaults

The custom team vaults are additional vaults when your company requires **granular permissions** and controlled access to information across team members. Use them to separate data by team, project, or environment, and define who can access each vault.


# Connecting to a server

This page covers the different ways to connect to a server in Termius, including SSH, Mosh, Telnet, Serial, SFTP, and the Local Terminal.

Termius provides users with a variety of options to connect to servers. It includes a built-in Local terminal and supports SSH, Mosh, Telnet, Serial, and SFTP.

## SSH with a password

{% tabs %}
{% tab title="Desktop" %}
To connect using a password on the desktop:

1. Open the `Vault` tab, then `Hosts` screen
2. Click `New Host`

   <figure><img src="/files/ZeRNUSdma8T9sT1aFUzM" alt=""><figcaption></figcaption></figure>
3. Enter the IP address, port, username, and password. Termius auto-saves your host

   <figure><img src="/files/YBIP9gNAzVpt97LBl5UF" alt=""><figcaption></figcaption></figure>
4. Click `Connect`

   <figure><img src="/files/r5YAurv1ANyXFB2eIs64" alt=""><figcaption></figcaption></figure>

{% endtab %}

{% tab title="Mobile" %}
To connect using a password on mobile:

1. Tap the `+` button on the Hosts screen, then tap `New Host`

   <div align="left"><figure><img src="/files/EEN54VA1KTPl0cGpLiTo" alt="" width="375"><figcaption></figcaption></figure></div>
2. Enter the IP address, port, username, and password

   <div align="left"><figure><img src="/files/r6w7X6tJtyC9PhJGBTlX" alt="" width="375"><figcaption></figcaption></figure></div>
3. Tap `Save`

   <div align="left"><figure><img src="/files/NAq7meKm5I1bjGLJRz0C" alt="" width="375"><figcaption></figcaption></figure></div>
4. Tap your host to `Connect`
   {% endtab %}
   {% endtabs %}

## SSH with an SSH key

{% tabs %}
{% tab title="Desktop" %}
To connect to a server using an SSH key on the desktop:

1. Open the `Vault` tab, then `Hosts` screen
2. Click `New Host`

   <figure><img src="/files/ZeRNUSdma8T9sT1aFUzM" alt=""><figcaption></figcaption></figure>
3. Enter the IP address, port, and username

   <figure><img src="/files/YBIP9gNAzVpt97LBl5UF" alt=""><figcaption></figcaption></figure>
4. To add an SSH Key, click `+ SSH ID, Key, Certificate, FIDO2` section and choose `Key`

   <figure><img src="/files/tttWlzFeRVN3bYwl4zGq" alt=""><figcaption></figcaption></figure>
5. Enter the key name/label

   <figure><img src="/files/HISkGHNDtm4crdlCPT62" alt=""><figcaption></figcaption></figure>
6. Import or paste your private key, then click `Save`. Termius auto-saves your host

   <figure><img src="/files/SI6Kf2MXORmOgc7HtJJB" alt=""><figcaption></figcaption></figure>
7. Click `Connect`

   <figure><img src="/files/Nnef7Y4Se3hg7p56IdnB" alt=""><figcaption></figcaption></figure>

{% endtab %}

{% tab title="Mobile" %}
To connect to a server using an SSH key on mobile:

1. Tap the `+` button on the hosts screen and then tap `New Host`

   <div align="left"><figure><img src="/files/EEN54VA1KTPl0cGpLiTo" alt="" width="375"><figcaption></figcaption></figure></div>
2. Enter the IP address, port, and username

   <div align="left"><figure><img src="/files/r6w7X6tJtyC9PhJGBTlX" alt="" width="375"><figcaption></figcaption></figure></div>
3. To add an SSH Key, and tap `SSH ID, Key, Certificate, FIDO2` in credential section

   <div align="left"><figure><img src="/files/FfOakJbd353JDaHCj5ds" alt="" width="375"><figcaption></figcaption></figure></div>
4. Choose a key

   <div align="left"><figure><img src="/files/Ud4CkYmSAPrl8jmFIYJT" alt="" width="375"><figcaption></figcaption></figure></div>
5. Tap `Save`

   <div align="left"><figure><img src="/files/NAq7meKm5I1bjGLJRz0C" alt="" width="375"><figcaption></figcaption></figure></div>
6. Tap your host to `Connect`
   {% endtab %}
   {% endtabs %}

{% hint style="info" %}
See [Keychain](/keychain/ssh-keys-and-certificates) to explore all Termius Keychain capabilities.
{% endhint %}

## Connect through jump hosts

Jump hosts provide secure access to a target machine that is not directly reachable. Termius makes it easy to configure multiple jump hosts in a sequence called a **host chain**. This lets you connect to the target machine in one click, automatically hopping through the chain of your hosts. To set up a host chain, follow the steps below.

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

1. [Create a host](#ssh-with-a-password) or edit an existing one. This host is a target host
2. In the Host details screen, scroll down and click `Show more`

   <figure><img src="/files/9MuQqeDdLm1DhvodMGKw" alt=""><figcaption></figcaption></figure>
3. Click `Host Chaining` field

   <figure><img src="/files/Bk1VQ89IH7wr9lGNzpRD" alt=""><figcaption></figcaption></figure>
4. Select an `intermediate host` from the list or create a new one. You can select multiple intermediate hosts, reflecting your network configuration and use case

   <figure><img src="/files/Mq06wPfahtb9YMqQdjIh" alt=""><figcaption></figcaption></figure>
5. Click `Save`. Then Termius auto-saves your host configuration

   <figure><img src="/files/YHNULSxw4KT6dy1zKy2a" alt=""><figcaption></figcaption></figure>
6. Click `Connect`. Termius sets up SSH tunnels to the target host through all the chained hosts

   <figure><img src="/files/4J2OjtlWOk5XViFaiVYS" alt=""><figcaption></figcaption></figure>

{% endtab %}

{% tab title="Mobile" %}

1. Create a host or edit an existing one. This host is a target host

   <div align="left"><figure><img src="/files/EEN54VA1KTPl0cGpLiTo" alt="" width="375"><figcaption></figcaption></figure></div>
2. In the `Edit Host` screen, scroll down and tap `Host Chaining`

   <div align="left"><figure><img src="/files/YfIrDrEQPQMbSOU1wdk8" alt="" width="375"><figcaption></figcaption></figure></div>
3. Select a `bastion host` from the list (if you already created one) or create a new one. You can select multiple intermediate hosts, reflecting your network configuration and use case

   <div align="left"><figure><img src="/files/qXsenMwRSoNMlvhgzCxi" alt="" width="375"><figcaption></figcaption></figure></div>
4. Tap `Save`

   <div align="left"><figure><img src="/files/3cNTfU3BphaTKMRWVVpl" alt="" width="375"><figcaption></figcaption></figure></div>
5. Tap your `Target host` to connect. Termius sets up SSH tunnels to a `Target host` through all the chain hosts.
   {% endtab %}
   {% endtabs %}

{% hint style="info" %}
**Pro tip:** If you need the same host chain for multiple hosts, configure it on a group instead of setting it on each host.

Every host placed in this group inherits the host chaining settings from that group.
{% endhint %}

## Connect through a proxy

Termius supports SSH connections through HTTP or SOCKS5 proxies.

{% tabs %}
{% tab title="Desktop" %}
To connect through a proxy on the desktop:

1. Open the `Vault` tab, then `Hosts` screen
2. Click `New Host` or edit an existing one
3. In the Host details screen, scroll down, and click `Show more` if you don't see the extra options

   <figure><img src="/files/9MuQqeDdLm1DhvodMGKw" alt=""><figcaption></figcaption></figure>
4. Click the `Proxy` field

   <figure><img src="/files/qJQqlXBiV5CwmcjKe7yS" alt=""><figcaption></figcaption></figure>
5. In the `Type` drop-down, select the proxy server protocol: SOCKS5 or HTTP

   <figure><img src="/files/eQDzggOcueqURdaXxjFB" alt=""><figcaption></figcaption></figure>
6. Enter the hostname or address, port, and credentials of your proxy server

   <figure><img src="/files/g1Aoe48d9zKlHxDpOidR" alt=""><figcaption></figcaption></figure>
7. Click `Save`. Then Termius auto-saves your host configuration

   <figure><img src="/files/dgeXp6WnuWVfAGWY22Qr" alt=""><figcaption></figcaption></figure>
8. Click `Connect`
   {% endtab %}

{% tab title="Mobile" %}
To connect through a proxy on mobile:

1. Create a host or edit an existing one

   <div align="left"><figure><img src="/files/EEN54VA1KTPl0cGpLiTo" alt="" width="375"><figcaption></figcaption></figure></div>
2. In the `Edit host` screen, scroll down, and tap `Proxy`

   <div align="left"><figure><img src="/files/CyYSdywk1d0QbvU3m9lE" alt="" width="375"><figcaption></figcaption></figure></div>
3. Choose the type of proxy server protocol: HTTP or SOCKS5

   <div align="left"><figure><img src="/files/H3t3SpYEvAmjyWtaFInt" alt="" width="375"><figcaption></figcaption></figure></div>
4. Enter the hostname or address, port, and credentials of your proxy server

   <div align="left"><figure><img src="/files/vm6dVwllP74hmg0UpLqg" alt="" width="375"><figcaption></figcaption></figure></div>
5. Tap `Save`
6. Then `Save` the host to apply the changes
7. Tap your host to `Connect`
   {% endtab %}
   {% endtabs %}

## Mosh (Mobile Shell)

[Mosh](https://mosh.org/) is a companion protocol to SSH that maintains sessions when TCP connections are interrupted. It employs a parallel UDP session to keep the session alive. That also enables Mosh to maintain its own terminal buffer that intelligently echoes your input, even if the server is slow or the network lags.

The enhancements provided by Mosh are really important for reliable mobile connectivity. If your device changes networks or loses connection, Mosh can keep your session alive until the connection is re-established.

The Mosh service is distinct from SSH and must be installed and configured separately on your host system. Once the service is up and running, you can use it on your hosts in Termius.

{% hint style="info" %}
Termius uses its own library for Mosh compatibility. Mosh 1.3.0 and newer versions are supported.
{% endhint %}

{% tabs %}
{% tab title="Desktop" %}
To connect via Mosh on the desktop:

1. Open the `Vault` tab, then the `Hosts` screen
2. Click `New Host` or edit an existing one
3. In the `Host Details` screen, scroll down, and click `Show more` if you don't see the extra options

   <figure><img src="/files/9MuQqeDdLm1DhvodMGKw" alt=""><figcaption></figcaption></figure>
4. Enable `Mosh`

   <figure><img src="/files/icVCyhXGAthZEBf7fJhL" alt=""><figcaption></figcaption></figure>
5. If your Mosh server is running on non-default ports, specify it accordingly:
   1. Default command for starting the mosh session: `mosh-server new -s -l LANG=en_US.UTF-8`
   2. In case you need to specify the custom port range: `mosh-server new -s -l LANG=en_US.UTF-8 -p [port from]:[port to]`
6. Termius auto-saves your host
7. Click `Connect`
   {% endtab %}

{% tab title="Mobile" %}
To connect via Mosh on mobile:

1. Create a host or edit an existing one

   <div align="left"><figure><img src="/files/EEN54VA1KTPl0cGpLiTo" alt="" width="375"><figcaption></figcaption></figure></div>
2. Enable the `Use Mosh` setting

   <div align="left"><figure><img src="/files/mero1VThg6Ie5F05aQ56" alt="" width="375"><figcaption></figcaption></figure></div>
3. If your Mosh server is running on non-default ports, specify it accordingly:
   1. Default command for starting the mosh session: `mosh-server new -s -l LANG=en_US.UTF-8`
   2. In case you need to specify the custom port range: `mosh-server new -s -l LANG=en_US.UTF-8 -p [port from]:[port to]`
4. Tap `Save`
5. Tap your host to `Connect`
   {% endtab %}
   {% endtabs %}

## Telnet

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

1. Open the `Vault` tab, then the `Hosts` screen
2. Click `New Host` or edit an existing one
3. In the Host details screen, scroll down and click `+ Add Telnet`

   <figure><img src="/files/gEcJYs3Cd40UgVjONn1h" alt=""><figcaption></figcaption></figure>
4. Enter the port, username, and password. Termius auto-saves your host

   <figure><img src="/files/GMYYJRx8JxHj5sWbFqqr" alt=""><figcaption></figcaption></figure>
5. Click `Connect`
   {% endtab %}

{% tab title="Mobile" %}

1. Create a host or edit an existing one

   <div align="left"><figure><img src="/files/EEN54VA1KTPl0cGpLiTo" alt="" width="375"><figcaption></figcaption></figure></div>
2. In the `Edit Host` screen, scroll down, and toggle `Telnet`

   <div align="left"><figure><img src="/files/E34rdk45fV7Ew4nWJc6X" alt="" width="375"><figcaption></figcaption></figure></div>
3. Enter the port, username, and password

   <div align="left"><figure><img src="/files/hEJBh6FOGcwbieWTWRJM" alt="" width="375"><figcaption></figcaption></figure></div>
4. Tap `Save`
5. Tap your host to `Connect`
   {% endtab %}
   {% endtabs %}

{% hint style="warning" %}
Telnet transmits data in plaintext, so avoid using it for sensitive information.
{% endhint %}

## Serial

Termius lets you connect to switches and routers over a serial port using a single cable: [Redpark's USB-C Serial Cable (C4-RJ45V)](https://redpark.com/usb-c-console-cable/) or [Redpark's Lightning Console Cable (L2RJ45V3)](https://redpark.com/lightning-console-cable-l2-rj45v/).

{% hint style="info" %}
Please note that serial connections may not work over USB hubs. Ensure to connect directly.&#x20;
{% endhint %}

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

1. Open the `Vault` tab, then the `Hosts` screen
2. Click the `Serial` button, or use the hotkey `Cmd+Option+S/CTRL+Alt+S`

   <figure><img src="/files/7CXp4Ruz2JYIGkFvd8N3" alt=""><figcaption></figcaption></figure>
3. Choose the serial port you want to connect to

   <figure><img src="/files/piLqgf48XY5GDMRah5Y6" alt=""><figcaption></figcaption></figure>
4. In the Advanced section set the required configuration: baud rate, data bits, stop bits, flow control, and parity

   <figure><img src="/files/B6Uaw7ma31iyjiKXSgjf" alt=""><figcaption></figcaption></figure>
5. Click `Connect`

{% hint style="warning" %}
If you experience issues with serial connections in Termius downloaded from the Microsoft Windows Store, install Termius from our website instead - [Download Windows](https://termius.com/download/windows)
{% endhint %}
{% endtab %}

{% tab title="Mobile" %}

1. Open the `Connections` tab

   <div align="left"><figure><img src="/files/tE81DzPJD2O8s86Nn8YK" alt="" width="375"><figcaption></figcaption></figure></div>
2. Search in the `Search` field or just scroll down to the bottom, and select `Start a serial connection`&#x20;

   <div align="left"><figure><img src="/files/cn8NMM7jCWvsRo1wBuwv" alt="" width="375"><figcaption></figcaption></figure></div>
3. Enter the required configuration: baud rate, flow control, data bits, stop bits, and parity

   <div align="left"><figure><img src="/files/KiyUSw80uKXUJnqEdmau" alt="" width="375"><figcaption></figcaption></figure></div>
4. Tap `Connect`
   {% endtab %}
   {% endtabs %}

## Local Terminal

To open a local terminal:

1. Open the `Vault` tab, then the `Hosts` screen
2. Click the `Terminal` button or use the hotkey `CTRL/Cmd+L`

   <figure><img src="/files/NDip64r40vopdvPd0wo5" alt=""><figcaption></figcaption></figure>

By default, the local terminal uses a shell specified in the system's settings. You can choose a different shell in settings:

1. Open `Termius > Settings > Terminal`
2. Scroll down to the `Local Terminal Path` section. Choose the preferred shell:

   <figure><img src="/files/WHvDHUvbxzBN00xCEaLa" alt=""><figcaption></figcaption></figure>

{% hint style="warning" %}
Termius from the Mac App Store and Snap Store do not include the Local Terminal feature due to sandbox limitations. Download Termius from the website for [macOS](https://termius.com/download/macos), [Windows](https://termius.com/download/windows), or [Linux](https://termius.com/download/linux) to use Local Terminal.
{% endhint %}


# Managing files with SFTP

This page explains how to use SFTP in Termius to browse, transfer, and manage files across local and remote systems, with guidance for both desktop and mobile workflows.

> **Secure File Transfer Protocol** (**SFTP**) is a secure, encrypted method for transferring files between computers over a network, acting as an extension of the Secure Shell (SSH) protocol. It replaces older FTP by encrypting commands and data to prevent password sniffing and man-in-the-middle attacks.

## Overview

<figure><img src="/files/1QDDB2kBBUmfoA6KVy8e" alt=""><figcaption></figcaption></figure>

Termius supports SFTP across all its major platforms, including Windows, macOS, Linux, iOS, and Android. It includes:

* **Dual-pane interface on the desktop:** manage local or remote files side-by-side
* **Transfer files**: transfer files between the selected hosts, including drag-and-drop support
* **Mobile support:** open multiple SFTP tabs on iOS and Android, which allows you to have multiple file transfer sessions open simultaneously
* **Integrated workflow:** switch between a terminal session and an SFTP session for the same host with a single click
* **File editing:** download files for editing with further changes tracking and file upload

{% hint style="info" %}
Termius from the Mac App Store and Snap Store is sandboxed and has limited access to the file system. If you need to manage local files, download Termius from the website for [macOS](https://termius.com/download/macos), [Windows](https://termius.com/download/windows), or [Linux](https://termius.com/download/linux).
{% endhint %}

***

## Connect to a host via SFTP

{% tabs %}
{% tab title="Desktop" %}
Opening SFTP sessions works differently on the desktop and mobile. On the desktop, a **local file system** opens by default.

To connect to a host via SFTP on the desktop:

1. Open the `SFTP` tab
2. In one of the SFTP panes, select a host

   <figure><img src="/files/PqXI6xySOZnMRpGYCf4L" alt=""><figcaption></figcaption></figure>
3. Choose a host from the list

   <figure><img src="/files/ACbgygE3n5UwEKv29NNv" alt=""><figcaption></figcaption></figure>
4. Complete authentication if prompted

   <figure><img src="/files/BpCep3C9mmYxNG08cZhT" alt=""><figcaption></figcaption></figure>

{% endtab %}

{% tab title="Mobile" %}
Opening SFTP sessions works differently on the desktop and mobile.

To connect to a host via SFTP on mobile from the `Host screen`:

1. Select the host you want to connect to
2. Open the `Context menu`:
   * **iOS:** press and hold the host

     <div align="left"><figure><img src="/files/9AvROP4ByNNBonIqF4Zq" alt="" width="375"><figcaption></figcaption></figure></div>
   * **Android:** tap the host icon, then tap the `three-dot menu`

     <div align="left"><figure><img src="/files/r2HVzY4QJ1lUbBa75h5A" alt="" width="375"><figcaption></figcaption></figure></div>
3. Tap `Connect via SFTP`
4. Complete authentication if prompted

{% hint style="success" %}
The SFTP session opens in a new tab. Desktop supports two active SFTP panes at a time. Mobile lets you open multiple SFTP tabs.
{% endhint %}
{% endtab %}
{% endtabs %}

***

## Browse the file system

<figure><img src="/files/vFvl9KtgVllYJsAcYldq" alt=""><figcaption></figcaption></figure>

### Refresh the contents of the folder

<figure><img src="/files/hnYJwM1duK1hUOtmpfQY" alt=""><figcaption></figcaption></figure>

To refresh the folder contents, click the current folder in the path bar. This works on both the desktop and mobile.

### Show hidden files

Termius doesn't show hidden files and folders by default.

**To view hidden files:**

1. Click the `Actions` menu
2. Select `Show Hidden Files`

### Manually enter a full path

<figure><img src="/files/Pc1xqNOWb9VkF1Lp3HhW" alt=""><figcaption></figcaption></figure>

On the desktop, click the area next to the current path to edit it. This is useful when you already know the full path and don’t want to navigate through each folder step by step.

After entering the path, press `Enter`. If the folder exists, Termius will navigate directly to that location.

## Transfer files

{% tabs %}
{% tab title="Desktop" %}
On the desktop, you can transfer files in several ways.

#### Via drag and drop between panes

<figure><img src="/files/9LeYt5yJXDTs04NeImkv" alt=""><figcaption></figcaption></figure>

#### Via drag and drop from your local file system to the target pane

<figure><img src="/files/LQaAN3S5mzKAUnrTwiyR" alt=""><figcaption></figcaption></figure>

#### Via the context menu

<figure><img src="/files/wbTRoWZSTIGl50cSFjf2" alt=""><figcaption></figcaption></figure>

1. Open the **target folder** in one of the panes
2. `Right-click` the file or folder you want to transfer
3. Select `Copy to target directory` from the context menu
   {% endtab %}

{% tab title="iOS/iPadOS" %}
On iOS and iPadOS, you can transfer files in several ways.

#### Via drag and drop between Termius windows

1. Open **SFTP** sessions to your servers in separate Termius windows

   <figure><img src="/files/Qn5KzFvUT9kQDcNNIgk1" alt=""><figcaption></figcaption></figure>
2. Drag a file from one Termius window and drop it onto another Termius window with an active SFTP session

   <figure><img src="/files/Vxytv58hgIew1m1GRsLQ" alt=""><figcaption></figcaption></figure>

#### Via drag and drop from the Files app

1. Open an SFTP session in Termius, and open the Files app next to it

   <figure><img src="/files/8HRZaVDdrtGfEP3sHjhF" alt=""><figcaption></figcaption></figure>
2. Drag a file from the Files app and drop it onto the Termius window with the active SFTP session

#### Via copy and paste to the target host

1. Connect to your server via SFTP
2. Select a file and tap `Copy`. This prepares the file for transfer to a destination that you can choose later

   <figure><img src="/files/hEiZvkWofDWhV9Hixixy" alt=""><figcaption></figcaption></figure>
3. Connect via SFTP to a host where you want to transfer the file

   <figure><img src="/files/mTP8nuLMHrkB6ETrPB83" alt=""><figcaption></figcaption></figure>
4. Tap on the three-dot menu and select `Paste` to start the transfer to the current folder

   <figure><img src="/files/OkmgiucqH8Cxb3eVdf1V" alt=""><figcaption></figcaption></figure>

#### Via the Upload button

1. Connect to your server via **SFTP**
2. Tap the `Upload` button

   <figure><img src="/files/F0WvmHzO1Xc88lgZxwJL" alt=""><figcaption></figcaption></figure>
3. Select a file or folder to upload to the selected host

   <figure><img src="/files/yYfgX2Kelgqam5lto9Nc" alt=""><figcaption></figcaption></figure>

***

#### Transfers progress sheet

<figure><img src="/files/qTWuFeXAH8H33zHErZ7q" alt=""><figcaption></figcaption></figure>

The `Transfers` section tracks file transfer status and works differently on iOS and Android.

On iOS/iPadOS, the `Transfers` section shows:

* The files stored in the `Termius > Downloads` folder on the device
* Progress of active file transfers
* Notifications of file conflict resolution (for example, replace or keep both)
* File transfer errors

{% hint style="info" %}
When a file transfer between two remote hosts is completed, the `Transfers` section won't show the corresponding file in the list anymore.
{% endhint %}

{% hint style="danger" %}
On iOS or iPad, deleting a file from the Transfers view also removes it from device storag&#x65;**,** as the Transfers section is synced with the `Termius > Downloads` folder on the device.
{% endhint %}
{% endtab %}

{% tab title="Android" %}
On Android, you can transfer or upload files in two ways.

#### Via copy and paste to the target host

1. Connect to your server via SFTP&#x20;

   <div align="left"><figure><img src="/files/r2HVzY4QJ1lUbBa75h5A" alt="" width="375"><figcaption></figcaption></figure></div>
2. Select a file and tap `Copy`**.** This prepares the file for transfer to a destination that you can choose later

   <div align="left"><figure><img src="/files/Aqgrv7ikKklyOsjeavXB" alt="" width="375"><figcaption></figcaption></figure></div>
3. Connect via SFTP to a host where you want to transfer the file

   <div align="left"><figure><img src="/files/l40ekgfctnEitMPPkFiX" alt="" width="375"><figcaption></figcaption></figure></div>
4. Tap the `three-dot` button and select `Paste` to start the transfer to the current folder

   <div align="left"><figure><img src="/files/4xqlhOhrwuLlStBHRWoV" alt="" width="375"><figcaption></figcaption></figure></div>

#### Via the Upload button

1. Connect to your server via SFTP&#x20;

   <div align="left"><figure><img src="/files/r2HVzY4QJ1lUbBa75h5A" alt="" width="375"><figcaption></figcaption></figure></div>
2. Tap the `Upload` button. Select whether you want to upload a file or a folder

   <div align="left"><figure><img src="/files/m6EV46rvKVlLrXJHsx4H" alt="" width="375"><figcaption></figcaption></figure></div>
3. Choose a file or folder to start the upload to the selected host

***

#### Transfers view

<figure><img src="/files/FCgS8LJLuIUKLEKFBHTF" alt=""><figcaption></figcaption></figure>

The `Transfers` section tracks file transfer status and works differently on iOS and Android.

On Android, the `Transfers` section shows:

* Status of completed uploads, downloads, and transfers
* Progress of active file transfers
* Notifications of file conflict resolution (for example, replace or keep both)
* File transfer errors

{% hint style="info" %}
Removing an item from the `Transfers` section only removes it from the UI.
{% endhint %}
{% endtab %}
{% endtabs %}

## Edit files

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

<figure><img src="/files/o3pEZJaqLI12uUPdJm6p" alt=""><figcaption></figcaption></figure>

To open a file for viewing or editing, you can:

* `Double-click` the file, or
* `Right-click` the file and select `Open` or `Open with`

When you open a file from a remote host, Termius downloads the file to a temporary local folder for editing. After you finish editing, the app detects the changes and prompts you to upload the updated file back to the host.

<figure><img src="/files/Dl4K8j9hsR1NgQzx1Ff6" alt=""><figcaption></figcaption></figure>

#### Default apps for different file types

When you use the `Open with` option, Termius remembers the application you selected for that file type.

You can review the apps associated with different file types in `Termius > Settings > SFTP`.

<figure><img src="/files/TRsqzQNAdO7CsdTb5x55" alt=""><figcaption></figcaption></figure>
{% endtab %}

{% tab title="iOS/iPadOS" %}
To **open** and **edit** a file on iOS or iPadOS:

1. **Download** the file. **Press** and **hold** the file, then select `Download` . Termius downloads it to the `Termius > Download` folder on the device

   <figure><img src="/files/MSKbSRvvShSiVvBQFHhe" alt=""><figcaption></figcaption></figure>
2. In the **Transfers** list, tap the file to open it in one of the apps available on your device

   <figure><img src="/files/uIrH1SaywthlLFLDTcdX" alt=""><figcaption></figcaption></figure>
3. **Press** and **hold** the file, then choose an app to edit it

   <figure><img src="/files/GCIMPeUWflgwTejdQgTj" alt=""><figcaption></figcaption></figure>
4. Edit the file and **save your changes locally**
5. Return to `Termius > SFTP session` and tap `Upload`, then select the edited file to upload it back to the host

   <figure><img src="/files/S06m8JgKdYYsdWDimpEM" alt=""><figcaption></figcaption></figure>

{% hint style="danger" %}
**The Transfers section on iOS works differently from Android**

On iOS and iPadOS, deleting a file from the Transfers view also removes it from device storage, because the Transfers section is synced with the `Termius > Downloads` folder on the device.
{% endhint %}
{% endtab %}

{% tab title="Android" %}
On Android, you can either download a file and edit it locally or edit it directly on the remote host with a terminal editor such as vi, vim, emacs, or nano, or via a custom command.

To **edit** a file via a **terminal editor**:

1. Press and hold the file you want to edit. Open the three-dot menu and select `Edit`

   <div align="left"><figure><img src="/files/mRt10uEAFTSEpJX3qBAK" alt="" width="375"><figcaption></figcaption></figure></div>
2. Choose the editor you want to use

   <div align="left"><figure><img src="/files/RHMt57nHIDm2znfQ449p" alt="" width="375"><figcaption></figcaption></figure></div>
3. If the selected editor is installed on the host, it opens in the terminal

   <div align="left"><figure><img src="/files/xZhJbDqMBTnNFRMU3FCM" alt="" width="375"><figcaption></figcaption></figure></div>
4. Make your changes and save the file

***

To **edit** a file **locally**:

1. **Download** the file:
   1. Press and hold the file you want to edit. Open the **three-dot menu** and select `Download`

      <div align="left"><figure><img src="/files/wyMIfzKxyQETBbYTZZSd" alt="" width="375"><figcaption></figcaption></figure></div>
   2. **Choose** the folder where the file **will be saved**. Future downloads will be saved there automatically
2. In the Transfers list, tap the file to open it in one of the apps available on your device

   <div align="left"><figure><img src="/files/YubU7fb8LE9dw3EJJwsm" alt="" width="375"><figcaption></figcaption></figure></div>
3. Edit the file and save your changes locally

   <div align="left"><figure><img src="/files/Xwpdo5o66TwgcGp2UVuz" alt="" width="375"><figcaption></figcaption></figure></div>
4. Return to `Termius > SFTP session` and tap `Upload`, then select the edited file to upload it back to the selected host

   <div align="left"><figure><img src="/files/m6EV46rvKVlLrXJHsx4H" alt="" width="375"><figcaption></figcaption></figure></div>

{% endtab %}
{% endtabs %}


# Port forwarding and tunneling

This page explains how to set up and manage SSH port forwarding in Termius, including local, remote, and dynamic tunneling.

SSH port forwarding, also called SSH tunneling, can be used to **get** or **provide** access to services that are not directly reachable, encrypt connections between different applications, and more. See also: [Port Forwarding](https://help.ubuntu.com/community/SSH/OpenSSH/PortForwarding) (Ubuntu Community Help Wiki).&#x20;

Termius supports all three main types of port forwarding (local, remote, and dynamic) and lets users manage their port-forwarding rules through a convenient interface. You can view all active port forwarding rules on a single page, and start or stop a specific rule with a double-click.&#x20;

## Local port forwarding

**Concept:** "I want to **get access** to a specific service that is unreachable from my current perspective."&#x20;

For example, Daniel has a MySQL database server that is not reachable from his device with Termius, but is reachable from the `daniel.local` device, which is his office laptop. The laptop runs an SSH server and is reachable from Daniel's device with Termius. If Daniel sets up local port forwarding through an SSH connection to his office laptop, he will be able to **get access** the MySQL database server locally.

Here is how to set it up via Termius:

{% stepper %}
{% step %}

#### Create a local port forwarding rule

<figure><img src="/files/6wP6cQQkB35Y0aQuEAYL" alt=""><figcaption></figcaption></figure>

Open the Port Forwarding screen in Termius, and create a `New Port Forwarding`. When prompted to choose a type, choose `Local`.&#x20;

{% hint style="info" %}
Termius has a built-in Port Forwarding Setup Wizard that can lead you through the steps explaining what every parameter of the setup is required for. You can choose to skip it and see all the required fields to be set up on a single form.
{% endhint %}
{% endstep %}

{% step %}

#### Choose a local port

<figure><img src="/files/H7zr4SiWyFoAH24rX4NK" alt=""><figcaption></figcaption></figure>

This is the port that will be opened on a `local` machine. Traffic from this port will be forwarded to the specified destination via the SSH connection we will specify next.

{% hint style="warning" %}
Make sure the port is not already in used.&#x20;

For example, if you are setting up a local port forwarding on iOS, make sure not to choose one of the ports listed [here](https://support.apple.com/en-us/103229). Otherwise, the port forwarding rule won't be activated.&#x20;

You can check if another process is already using the selected port by running the `netstat` command in the terminal:

* On Windows, run `netstat -ant`
* On macOS and Linux, run `netstat -tolpn`
  {% endhint %}
  {% endstep %}

{% step %}

#### Choose a host

<figure><img src="/files/ONyLFHv1pgsIXzN7yPBs" alt=""><figcaption></figcaption></figure>

This is the intermediate host to tunnel the traffic through. The resource/service you are trying to access locally should be accessible from this host.&#x20;
{% endstep %}

{% step %}

#### Choose the destination address and port

<figure><img src="/files/AbvFGvBngN8PUyCjDIHX" alt=""><figcaption></figcaption></figure>

Now specify the address and port you want to **get access to**, as if you were reaching them from the chosen host's perspective. If the service is running locally on the selected host, then put 127.0.0.1 in the destination address field.&#x20;
{% endstep %}

{% step %}

#### Start the rule

<figure><img src="/files/MhXj4dPBVtgk8fyx2CRU" alt=""><figcaption></figcaption></figure>

After you create the Port Forwarding Rule, **double-click** it to start it. **Double-click** it again to stop it.
{% endstep %}
{% endstepper %}

The resulting rule is equivalent to the following command:

```
ssh -L 127.0.0.1:3336:10.1.30.42:3306 daniel@daniel.local
```

## Remote port forwarding

**Concept:** "I want to ***provide*** someone with ***access*** to a service running on my machine or my private network."&#x20;

For example, Bethany is developing a personal website on her laptop and wants Daniel to review it. Unfortunately, it is not accessible to Daniel, and she cannot change the router settings to make it accessible. Daniel has an SSH server running on his machine and suggests that Bethany set up remote port forwarding over the SSH connection to his server so he can access Bethany's website locally.

Here is how to set it up via Termius:

{% stepper %}
{% step %}

#### Create a remote port forwarding rule

<div align="left"><figure><img src="/files/x7wuxQ7D0Xv3urJugUqW" alt=""><figcaption></figcaption></figure></div>

Open the Port Forwarding screen in Termius, and create a `New Port Forwarding`. When prompted to choose a type, choose `Remote`.&#x20;

{% hint style="info" %}
Termius has a built-in Port Forwarding Setup Wizard that can lead you through the steps explaining what every parameter of the setup is required for. You can choose to skip it and see all the required fields to be set up on a single form.
{% endhint %}
{% endstep %}

{% step %}

#### Choose a host

<div align="left"><figure><img src="/files/hVz0813qggjVweOgK94x" alt=""><figcaption></figcaption></figure></div>

This is the host you can reach via SSH, and where you want to open a port. Anyone connecting to that port on the server will have their traffic tunneled back through your SSH connection to your local machine.
{% endstep %}

{% step %}

#### Choose a remote port

<figure><img src="/files/LpqfGmpNHbO4dGLyVEAG" alt=""><figcaption></figcaption></figure>

This is the port that will be opened on the selected remote server. Anyone connecting to that port on the server will have their traffic tunneled back through your SSH connection to your local machine.

{% hint style="warning" %}
Make sure the port is not already in used.

You can check if another process is already using the selected port by running the `netstat` command  in the terminal on the remote host:

* On Windows, run `netstat -ant`
* On macOS and Linux, run `netstat -tolpn`
  {% endhint %}
  {% endstep %}

{% step %}

#### Choose the destination address and port

<figure><img src="/files/FvtplrA5cjYkA6lvMTyz" alt=""><figcaption></figcaption></figure>

Now specify the address and port that you want **to provide access to**. If the service you want to share is running locally on your machine, then put 127.0.0.1 in the destination address field and specify the corresponding port.
{% endstep %}

{% step %}

#### Start the rule

<figure><img src="/files/F5zrdextj9IUEuOjgLu2" alt=""><figcaption></figcaption></figure>

After you create the Port Forwarding Rule, **double-click** it to start it. **Double-click** it again to stop it.
{% endstep %}
{% endstepper %}

The resulting rule is equivalent to the following command:

```
ssh -R 127.0.0.1:8080:127.0.0.1:80 daniel@daniel.local
```

## Dynamic port forwarding

**Concept:** "I want my machine to act as a secure proxy for **any** destination."

* This can be used to **get access** to a service that is unreachable locally, similar to the case with Local port forwarding
* Or a SOCKS proxy can be used that will tunnel the traffic through the specified SSH connection, allowing secure access in untrusted networks

For example, using this technique, you can have a web browser use your SSH connection as a proxy, making your web connection requests appear to come from the remote server instead of your local device.&#x20;

* For that, you will need to specify `127.0.0.1:[selected local port]` as the browser SOCKS proxy.

Here is how to set it up via Termius:

{% stepper %}
{% step %}

#### Create a dynamic port forwarding rule

<figure><img src="/files/fUoruSYnSSyKZdkXIanz" alt=""><figcaption></figcaption></figure>

Open the Port Forwarding screen in Termius, and choose to create a `New Port Forwarding`. When prompted to choose a type, choose `Dynamic`.&#x20;

{% hint style="info" %}
Termius has a built-in Port Forwarding Setup Wizard that can lead you through the steps, explaining what every parameter of the setup is required for. You can choose to skip it and see all the required fields to be set up on a single form.
{% endhint %}
{% endstep %}

{% step %}

#### Choose a local port

<figure><img src="/files/P21Ropd6SUz2kt5JQ7DF" alt=""><figcaption></figcaption></figure>

This is the port to be opened on a `local` machine. Traffic from this port will be forwarded to the specified destination via the SSH connection we will specify next.

{% hint style="warning" %}
Make sure the port is not reserved by the system.&#x20;

For example, if you are setting up a local port forwarding on iOS, make sure not to choose one of the ports mentioned [here](https://support.apple.com/en-us/103229). Otherwise, the port forwarding won't be activated.&#x20;

You can check if another process is already using the selected port by running the `netstat` command in the terminal:

* On Windows, run `netstat -ant`
* On macOS and Linux, run `netstat -tolpn`
  {% endhint %}
  {% endstep %}

{% step %}

#### Choose a host

<figure><img src="/files/DK7ul0uAOrgnYdvbQxHB" alt=""><figcaption></figcaption></figure>

This is the intermediate host to tunnel the traffic through. The resource/service you are trying to access locally should be accessible from this host.&#x20;
{% endstep %}

{% step %}

#### Start the rule

<figure><img src="/files/zAtfMfFa7A9vQuX3muwR" alt=""><figcaption></figcaption></figure>

After you create the Port Forwarding Rule, **double-click** it to start it. **Double-click** it again to stop it.
{% endstep %}
{% endstepper %}

The resulting rule is equivalent to the following command:

```
ssh -D 2080 daniel@acme-web-dev-us-south:16734
```

## Troubleshooting

If you followed the steps above but your port forwarding rule doesn't start, there are a couple of things you can check:

* Make sure no other process is already using the forwarded port. On Windows, run `netstat -ant`. On macOS and Linux, run `netstat -tolpn`.
* If remote port forwarding does not work, make sure `GatewayPorts` is set to `yes` in the remote SSH server configuration.


# Groups and tags

This page explains the concept of groups in Termius and how groups and tags can help you organize your hosts.

## Groups

A group is a labeled collection of Hosts that share a common characteristic, such as a customer, location, or environment. A nested structure helps organize Hosts and simplify navigation. Groups can also define protocol settings inherited by all Hosts in the Group.

{% hint style="info" %}
Groups **are not** folders. On the Hosts screen, you see all hosts in the current groups and their subgroups.
{% endhint %}

### Create a group

1. On the `Hosts` screen, click the chevron next to the `New Host` button and choose `New Group`&#x20;

   <figure><img src="/files/yDSOJL6SKDegN9wtS5E5" alt=""><figcaption></figcaption></figure>
2. In the `Label` field, enter the group name

   <figure><img src="/files/fGgapCCwelnCjuYZxFqf" alt=""><figcaption></figcaption></figure>
3. To place this group inside another group, fill in the `Parent Group` field

   <figure><img src="/files/XZ93I8umPC5G4IGczq07" alt=""><figcaption></figcaption></figure>
4. Termius auto-saves the group

#### Customize groups

Termius lets you set default parameters for hosts and subgroups within a given group. You can configure default parameters for:&#x20;

* Protocols
* Credentials
* Startup snippets
* Host chaining
* Proxy
* Environment variables
* Terminal themes
* And more

See [How hosts inherit group properties](#how-hosts-inherit-group-properties) for more details.

#### Advanced

You can enable Cloud Sync for a specific group and integrate it with AWS, DigitalOcean, or Azure. Once the setup is completed, Termius syncs the matching instances from that provider. You can create multiple groups for different providers and configurations.

### Move hosts to a group

There are several ways to add or move a host to a group.&#x20;

{% hint style="info" %}
**Important**\
Groups are not folders. Termius shows all hosts within the current group and its subgroups. So, when you move a host to a different group, it may still stay visible on the Hosts screen.
{% endhint %}

{% tabs %}
{% tab title="Edit Host" %}

#### Via edit host

To move hosts to a group via edit host:

1. `Right-click` the host and select `Edit`&#x20;

   <figure><img src="/files/llXmxvKlXULOSK7Rnc9x" alt=""><figcaption></figcaption></figure>
2. In the `Parent Group` field, select the group

   <figure><img src="/files/sS2tPE4SIjwdxZXxIAx5" alt=""><figcaption></figcaption></figure>
3. Termius auto-saves the changes

#### Via drag'n'drop

To move hosts to a group via drag'n'drop:

1. Select several hosts
2. Drag and drop them onto the group

   <figure><img src="/files/TZ3spREGF8mq1Bx3gUSE" alt=""><figcaption></figcaption></figure>

{% endtab %}

{% tab title="Mobile" %}
To move several hosts to a group via the context menu:

1. Select several hosts and tap the `three dots` button

   <div align="left"><figure><img src="/files/wYruDtYwiqt8BCNsp6jP" alt="" width="375"><figcaption></figcaption></figure></div>
2. Select `Move to group`&#x20;

   <div align="left"><figure><img src="/files/92cpui43tIzhLysbl2LH" alt="" width="375"><figcaption></figcaption></figure></div>
3. Select the target group

   <div align="left"><figure><img src="/files/bXb7i2PCdpY9lqsBNXJc" alt="" width="375"><figcaption></figcaption></figure></div>
4. `Save` the changes
   {% endtab %}
   {% endtabs %}

### How hosts inherit group properties

Inheritance in groups is a powerful feature that can significantly simplify host management in Termius.

Every host or subgroup inside a group inherits the properties of that group, unless you override them explicitly.

For example, if you manage a number of production servers and want all of them to have a red terminal theme to stay alert when you interact with them. You can create a group and set the terminal theme accordingly, so every host in the group will have the same theme. When you change the terminal theme in the group, all hosts in it are updated as well.

Another common use case is setting up Host Chaining for a group. When you have several hosts behind the same bastion (or a number of jump hosts), instead of replicating the same configuration on every host, you set this up once in a group. Then every host in that group goes through the specified chain of hosts when you connect to it.

The parameter inheritance works through configuration merging. If the property is not explicitly overridden, Termius checks all parent groups for a default value. This lets you build nested groups with nested inheritance settings on a per-parameter basis to satisfy a wide variety of use cases.&#x20;

### Connect to all hosts inside a group

Another benefit of organizing hosts into groups is the ability to connect to all hosts in a group at once:

1. `Right-click` the group
2. Choose `Quick Connect` from the context menu

   <figure><img src="/files/gNlhNapa0ijW8bFwzEGa" alt=""><figcaption></figcaption></figure>
3. Termius opens a new tab for every host in the group and initiates the connections

{% hint style="info" %}
To connect to multiple hosts at once, you can also use [Workspaces](https://app.gitbook.com/o/VK0PKfeZDvhqkCsvSiAD/s/5PCLq8V6ZExygzYl6XVJ/~/diff/~/changes/159/terminal/workspaces).
{% endhint %}

***

## Tags

Tags give you another way to organize Hosts.

For example, you can tag all Ubuntu servers, servers for a specific client if you are a freelancer, virtual servers, dedicated servers, or hosts with a specific tool installed. Clear tags make large host lists easier to search.

Tags appear on hosts, under host names.

### Create tags

1. `Right-click` the host and choose `Edit`&#x20;

   <figure><img src="/files/llXmxvKlXULOSK7Rnc9x" alt=""><figcaption></figcaption></figure>
2. In the `Tags` field, type a tag or choose one from the suggestions

   <figure><img src="/files/JGP2pnsgrzwGdngKO1jS" alt=""><figcaption></figcaption></figure>

{% hint style="info" %}
Removing a tag from a host doesn't delete the tag.
{% endhint %}

### Filter by tags

<figure><img src="/files/3l6TqogDBk8ALCyiRLR1" alt=""><figcaption></figcaption></figure>

When you search for a host on the Hosts screen, the app checks the tags and filters the results accordingly. You can also open the Tags menu and select specific tags to show only hosts that have all selected tags.&#x20;

### Delete tags

1. Open the `Tags` menu
2. Hover over the tag you no longer need and click the `Delete` button

   <figure><img src="/files/89grAzllf4tzheIbcPXi" alt=""><figcaption></figcaption></figure>


# Session logs

This page explains how Termius records terminal sessions, where they're stored, and how Bookmarks let you keep important sessions long-term.

## Overview

<figure><img src="/files/LIg2VQP21Gja4RroFE9u" alt=""><figcaption></figcaption></figure>

Session logs are a record of your terminal activity. They help you review past work, troubleshoot issues, and collaborate with teammates.

A session log lives in the vault where it was recorded. Local terminal session logs are always stored in your Personal vault and are not synced with your team, so only you can see them.

By default, Termius keeps one **recent session log** per host. Every time you connect, a new log starts recording automatically and is saved when the session ends, replacing the previous one for that host. To keep a session for future reference, you can [bookmark](#save-session-logs) it.

In a Multiplayer session, the log is recorded only for the **session** **owner**. The log captures everything as if the session owner were working alone, regardless of who else joins or who is typing at any given moment. **Guests** who join a Multiplayer session do not have a log recorded on their own account.

Depending on your plan, logs can be synced across devices, shared with teammates, bookmarked for future reference, and kept under different retention policies.

{% hint style="warning" %}
Session logging is supported for **local terminal**, **serial**, **Telnet**, and **SSH** connections. **Mosh** sessions are not recorded.
{% endhint %}

## View session logs

The Logs screen lists every log you have access to. You can sort the list by date or by bookmarked logs first, and filter by vault.

<figure><img src="/files/9bagResr6mGlRvp9cfe2" alt=""><figcaption></figcaption></figure>

Clicking a log opens it as a tab. You can add the log to a [Workspace](/terminal/workspaces) to reference it while you work with other hosts.

<figure><img src="/files/gSdhobNRT1DYFnAfKstx" alt=""><figcaption></figcaption></figure>

{% hint style="info" %}
**Logs can't be viewed on mobile**, though iOS and Android still record and sync sessions in the background. To view them, open Termius on macOS, Windows, or Linux.
{% endhint %}

## Save session logs

<figure><img src="/files/LIg2VQP21Gja4RroFE9u" alt=""><figcaption></figcaption></figure>

Bookmarks let you save important session logs in your vault for future reference, for example, troubleshooting steps, incident investigations, configuration changes, or solutions to recurring issues. While recent logs are rotated automatically, bookmarked logs are preserved until you remove the bookmark.

You can also add comments to a bookmarked log to provide some context, such as what you were investigating, why a change was made, or what conclusions were reached during the session.

#### To bookmark a session log:

1. Open `Vault` tab→ `Logs`&#x20;

   <figure><img src="/files/mKjkoZItB7akvenGLXfu" alt=""><figcaption></figcaption></figure>
2. Click `Bookmark` icon for the required log

   <figure><img src="/files/YjTWTK9WeFChu4oTJlQk" alt=""><figcaption></figcaption></figure>
3. (Optional) Add a comment. Click outside the field or press `Enter` to save

   <figure><img src="/files/grJ0mo4CWxsydylX6b6k" alt=""><figcaption></figcaption></figure>

## Disable and enable logging

Session logging is enabled by default for all vaults. If you don't want sessions recorded for a particular vault, you can disable logging for that vault. New sessions are not recorded until you turn logging back on.

{% hint style="danger" %}
Disabling logging deletes all logs in the vault, including bookmarked ones.
{% endhint %}

#### To disable or enable logging for a vault:

1. Open `Settings` → `Logs`

   <figure><img src="/files/zXc2aH7cz8H98nEIRlvl" alt=""><figcaption></figcaption></figure>
2. Select `Enable` or `Disable` for the required vault

   <figure><img src="/files/qyGiBQdJBhq1yNie2Nx8" alt=""><figcaption></figcaption></figure>

## FAQ

<details>

<summary>Can I delete a specific session log?</summary>

No, single session logs can't be deleted manually. You can, however, replace the recent log for a host by starting and closing a new session on it. The new session becomes the recent log, and the previous one is no longer kept.

This only works while the host is still available, once a host is removed, its remaining logs can only be cleared by disabling logging for the vault.

To clear all logs in a vault at once, see [Disable and enable logging](#disable-and-enable-logging).

</details>

<details>

<summary>Can I move a session log to another vault?</summary>

No, session logs stay in the vault where they were recorded. To start recording into a different vault, move the host there. Its existing logs stay behind, and new sessions in the new vault start a new recording.

</details>

<details>

<summary>Can I export a session log?</summary>

There is no export button for a log, but you can copy the log output and paste it into a file manually.

</details>

<details>

<summary>Are passwords and other sensitive data captured in session logs?</summary>

Anything that appears in your terminal as plain text is captured. Passwords typed into interactive prompts (where the terminal hides what you type) are not captured.

</details>

<details>

<summary>Are the logs encrypted?</summary>

Session logs are protected by the same end-to-end encryption as the rest of your data. For more information, see [Encryption overview.](/security/encryption-overview)

</details>

<details>

<summary>What happens to my logs if I cancel my subscription or downgrade my plan?</summary>

* **Pro → Starter (or cancel Pro).** Your existing logs remain available to read. New sessions are not recorded on Starter. You can clear the old ones by disabling session logging. See [Disable and enable logging](#disable-and-enable-logging).
* **Team or Business → Pro.** Team and Custom vaults are removed, and their logs are deleted along with them. Your logs in the Personal vault remain available to read, and new sessions continue to be recorded to the Personal vault.
* **Team or Business → Starter (or cancel Team or Business).** Team and Custom vaults are removed, and their logs are deleted along with them. Your existing logs in Personal vault stay and remain available to read. New sessions are not recorded on Starter. You can clear the old ones by disabling session logging. See [Disable and enable logging](#disable-and-enable-logging).

</details>

<details>

<summary>Can I set a custom retention policy for a vault?</summary>

It depends on your requirements. By default, Termius keeps one **recent session log** per host. To preserve a specific log you can bookmark it.

* **Recent session log** is the last session you closed on a host. Each new session you close replaces the previous one.
* **Bookmarked session logs** are sessions you have saved. They stay in your vault until you remove the bookmark. See [Bookmarks](#bookmarks-for-session-logs).

&#x20;[Сontact us](https://support.termius.com/hc/en-us/requests/new) to discuss options.

</details>


# Workspaces

This page covers core Workspace actions: creating, switching views, command broadcasting, saving templates, and monitoring sessions.

## Overview

<figure><img src="/files/9ObQRSwBYlKGpGYELKr2" alt=""><figcaption></figcaption></figure>

Workspaces group multiple terminal sessions into one focused environment. They help you work across multiple servers to deploy, validate changes across environments, or compare logs without rebuilding the same setup each time.

Inside a workspace, you can:

* **Organize work** by intent: deploy, incident, investigation
* Switch between [Focus mode](#focus-mode) and [Split view](#split-view)
* [Broadcast](#command-broadcast-mode) the same input to multiple sessions

You can save a workspace as a reusable **workspace template**. When you reopen it, Termius restores it to the saved state.

**Workspace templates capture:**

* Included connections
* Tab names
* Layout configuration
* Working directories
* Running commands at the time of saving

{% hint style="info" %}
Workspaces are currently available on **macOS**, **Windows**, and **Linux**.
{% endhint %}

***

## Create a workspace template

You need at least **two sessions** to create a workspace. You can use remote hosts or local terminals.

{% tabs %}
{% tab title="In New Tab" %}
To create a **workspace template** from **New Tab**:

1. Open **New Tab** with `Ctrl/Cmd + T`, or click **`+`** in the tab bar

   <figure><img src="/files/FJUNB8D4n43nQoGtXZxY" alt=""><figcaption></figcaption></figure>
2. Select two or more connections from the **Recent connections** list

   <figure><img src="/files/0IEtyQMyyKC3R77OOpLi" alt=""><figcaption></figcaption></figure>
3. Click `Create a workspace`
4. Enter a name and press `Enter`

   <figure><img src="/files/0ImMVkEwOYd2qgZ2314D" alt=""><figcaption></figcaption></figure>
5. Double-click the saved workspace template to open it in [Focus mode](#focus-mode)

   <figure><img src="/files/B3jca24IAjrJ7LZIDCqo" alt=""><figcaption></figcaption></figure>

{% endtab %}

{% tab title="In Terminal" %}
To create a **workspace template** from **Terminal**:

1. Open one connection. Then drag another connection onto its tab. Termius creates a new workspace in [Split view](#split-view)

   <figure><img src="/files/hkmlToWM7I9VXzUaDsT5" alt=""><figcaption></figcaption></figure>
2. Save the workspace as a template:

   <figure><img src="/files/OCLoLZP8szC3qivFh6YR" alt=""><figcaption></figcaption></figure>

   1. Click the **gray dot** on the workspace tab, or
   2. Press `Ctrl/Cmd + S`
      {% endtab %}
      {% endtabs %}

***

## Focus mode and Split view

A workspace has two view modes: [Focus mode](#focus-mode) and [Split view](#split-view). You can switch between them at any time without interrupting the sessions inside.

{% tabs %}
{% tab title="Focus mode" %}

<figure><img src="/files/B3jca24IAjrJ7LZIDCqo" alt=""><figcaption></figcaption></figure>

**Focus mode** shows one terminal in the main view. The other terminals stay visible in the side panel.

#### Switch to Focus mode

<figure><img src="/files/ZsSX4L7lKD6GwI1bfwx8" alt=""><figcaption></figcaption></figure>

In **Split view**, click the `view mode` icon in the terminal pane. Or press `Ctrl/Cmd + Shift + M`.

[Save](#keyboard-shortcuts) the workspace template.
{% endtab %}

{% tab title="Split view" %}

<figure><img src="/files/zCqgV25OMJLdgk0fdEko" alt=""><figcaption></figcaption></figure>

**Split view** shows all terminals in the workspace at once.

Use it to watch logs across hosts, compare outputs, or coordinate changes when you need the full picture.

{% hint style="info" %}
You can add up to **16 terminals** in Split view.
{% endhint %}

#### Adjust the layout

<figure><img src="/files/FCwP5kssmDjPo1yPINpp" alt=""><figcaption></figcaption></figure>

1. Drag the dividers between terminal panes to resize them
2. Drag a terminal pane to change its position
3. [Save](#keyboard-shortcuts) the workspace template

#### Switch to Split view

<figure><img src="/files/rOgVUkaWNGNxTQdCyiyf" alt=""><figcaption></figcaption></figure>

In **Focus mode**, click the `view mode` icon in the side panel. Or press `Ctrl/Cmd + Shift + M`.

[Save](#keyboard-shortcuts) the workspace template.
{% endtab %}
{% endtabs %}

## Save and update workspace templates

When you open a workspace from a workspace template, Termius tracks any changes you make to it.

The **gray dot** on the tab shows unsaved changes. If you close the workspace without saving, the workspace template stays unchanged.

### Save a workspace template

<figure><img src="/files/OCLoLZP8szC3qivFh6YR" alt=""><figcaption></figcaption></figure>

To save or update a **workspace template**:

* Click the **gray dot** on the workspace tab, or
* Press `Ctrl/Cmd + S`

#### What counts as a change

* **View mode:** Switching between [Focus mode](#focus-mode) and [Split view](#split-view)
* **Renaming:** Changing the name of a workspace template or a terminal tab
* **Terminal pane layout:** Adjusting terminal pane sizes or positions in Split view
* **Tab order:** Reordering tabs in the side panel in Focus mode
* **Working directory:** Changing the active directory in one or more sessions
* **Running commands:** The active commands differ from the last saved state

### Rename a workspace template

{% tabs %}
{% tab title="In New Tab" %}

<figure><img src="/files/3lyrFVQw0ZiG5ltDoK4A" alt=""><figcaption></figcaption></figure>

To rename a **workspace template** in **New Tab**:

1. Open **New Tab** with `Ctrl/Cmd + T`, or click **`+`** in the tab bar
2. Hover over the workspace template and click the `pen` icon
3. Enter a new name and press `Enter`
   {% endtab %}

{% tab title="In Terminal" %}

<figure><img src="/files/vYzrwJw6mmkYdz1097kH" alt=""><figcaption></figcaption></figure>

To rename a **workspace template** in **Terminal**:

1. Right-click a workspace tab
2. Click `Rename`
3. Enter a new name and press `Enter`
4. [Save](#keyboard-shortcuts) the workspace template
   {% endtab %}
   {% endtabs %}

### Rename a terminal tab in a workspace template

<figure><img src="/files/2cyCmIQiW39nCOt8IpE3" alt=""><figcaption></figcaption></figure>

You can give a terminal tab a custom name in a workspace. This changes only the tab name in the workspace. It does not change the original hostname.

1. Right-click a terminal tab
2. Click `Rename`
3. Enter a new name and press `Enter`
4. [Save](#keyboard-shortcuts) the workspace template

### Working directories and running commands

<figure><img src="/files/DNczYJAioJja9rcFSYYl" alt=""><figcaption></figcaption></figure>

When [Autocomplete](/terminal/autocomplete-and-shell-integration) is enabled, Termius tracks the **working directory** and **active command** for each session in a workspace.

This state appears on the terminal tab. You can save it in the workspace template. When you reopen the template, each session returns to the same directory and command state.

If Autocomplete is disabled, the working directory and running command are not displayed or restored.

***

## Command broadcast mode

In a workspace, you can enable **Command broadcast mode** to send the same input to every active terminal. Use it for checks, config changes, and state validation across hosts.

### Enable broadcast mode

{% tabs %}
{% tab title="In Focus mode" %}

<figure><img src="/files/eUnrqvVj3JCz9ateRXHi" alt=""><figcaption></figcaption></figure>

To enable **Command broadcast mode** in **Focus mode**, click the `Broadcast icon` in the side panel.

The selected terminal stays active for input. Termius sends your input to all active terminals in the workspace.
{% endtab %}

{% tab title="In Split view" %}

<figure><img src="/files/ABJR0BW4ByQBvCbYwZVG" alt=""><figcaption></figcaption></figure>

To enable **Command broadcast mode** in **Split view**, click the `Broadcast icon` in the terminal pane.

A solid frame highlights the **main input terminal**. Termius sends your input to all active terminals in the workspace.
{% endtab %}
{% endtabs %}

***

## Session status indicators

<figure><img src="/files/GEsuPs7lEyBiIm5NRnws" alt=""><figcaption></figcaption></figure>

Each tab shows a dot that reflects the session state. In **Focus mode**, it appears in the side panel. In **Split view**, it appears on the terminal pane header.

🟢 **Green:** Shows unread output in the terminal

🟡 **Yellow:** Requires your input, such as a password, confirmation, or prompt

🔴 **Red:** Indicates an error in the terminal or a failed connection

***

## Keyboard shortcuts

|                                |                        |
| ------------------------------ | ---------------------- |
| Switch Focus mode / Split view | `Ctrl/Cmd + Shift + M` |
| Toggle Broadcast mode          | `Ctrl/Cmd + B`         |
| Save workspace template        | `Ctrl/Cmd + S`         |

{% hint style="info" %}
If you need to customize keyboard shortcuts, you can do so in `Termius > Settings > Shortcuts`.
{% endhint %}


# Snippets

This page explains how to create, organize, and run snippets in Termius, including executing them on multiple hosts, setting startup snippets, and more.

## Overview

In Termius, a **snippet** is a labeled shell script that you can save and run on different hosts without retyping it. Think of them as a cloud-synced library of your most-used or proven scripts/commands.

Snippets are stored in [Vaults](/getting-started/learn-about-vaults), synced across devices, and available to your team when you share the vault with a paid subscription. If you have a team, every member can contribute to the snippets library, making teamwork easier.

With snippets, you can:

* Run the same command on multiple hosts
* Run a startup snippet each time you connect to a host
* Paste or run commands from the terminal side panel
* Run saved commands from [Autocomplete](/terminal/autocomplete-and-shell-integration)
* Organize snippets with snippet packages
* Share approved commands with your team

## Create a snippet

{% tabs %}
{% tab title="Desktop" %}
On the Desktop, you can create a snippet either from the dedicated Snippets screen or from the side panel in the terminal. You can also use the AI to generate a snippet from your description.

#### From the Snippets screen

1. Open the `Vault` tab, then open the `Snippets` screen

   <figure><img src="/files/IOh4sobrBjI7czv1RlFj" alt=""><figcaption></figcaption></figure>
2. Click `New Snippet`

   <figure><img src="/files/eIhiHXRyvZvCPRwKvE7e" alt=""><figcaption></figcaption></figure>
3. In the `Action description` field, describe what the snippet does. Enter the command in the `Script` field. Termius saves the snippet automatically

   <figure><img src="/files/rTiDCdFi7raKaKMBiU1j" alt=""><figcaption></figcaption></figure>

***

#### From the terminal side panel

1. Open the side panel with `Ctrl/Cmd + .`

   <figure><img src="/files/BD0ydGkJNMIJ9wChJnGn" alt=""><figcaption></figcaption></figure>
2. Open the `Snippets` tab <i class="fa-brackets-curly">:brackets-curly:</i>

   <figure><img src="/files/WC9EXAmdQNAxS2VcnISl" alt=""><figcaption></figcaption></figure>
3. Click `New Snippet`

   <figure><img src="/files/Had9CXm9rR9zPHMDQhqv" alt=""><figcaption></figcaption></figure>
4. In the `Action description` field, describe what the snippet does. Enter the command in the `Script` field

   <figure><img src="/files/mu0Wk2UIKHhGInCDfRCx" alt=""><figcaption></figcaption></figure>
5. Click `Save`

***

#### Generate with AI

1. Open the `New Snippet` editor from the Snippets screen or the terminal

   <figure><img src="/files/IOh4sobrBjI7czv1RlFj" alt=""><figcaption></figcaption></figure>
2. In the `Action description` field, describe what the command should do in plain language

   <figure><img src="/files/hx50dXak7RkN1RwnRr7Y" alt=""><figcaption></figcaption></figure>
3. Click the `magic wand` button
4. Termius generates the snippet and inserts it into the `Script` field
   {% endtab %}

{% tab title="Mobile" %}

#### From the Snippets screen

1. Tap the back arrow button `<` to open the **Vaults** screen, then open the `Snippets` screen

   <div align="left"><figure><img src="/files/TZ1pRGG18ka51wufGMeA" alt="" width="375"><figcaption></figcaption></figure></div>
2. Tap the plus button and choose `New Snippet`

   <div align="left"><figure><img src="/files/SNSztv4PXbOUXRVNI93a" alt="" width="375"><figcaption></figcaption></figure></div>
3. In the `Name` field, describe what the snippet does
4. Enter a command or a script in the `Script` field
5. `Save` the snippet

   <div align="left"><figure><img src="/files/Y91hJPI2e5HQqg7UqCcW" alt="" width="375"><figcaption></figcaption></figure></div>

***

#### From the terminal

1. Open the additional keyboard by tapping the `4 squares` button. On iPad, open the right-side panel instead

   <div align="left"><figure><img src="/files/8p1Ew0bvcPE2RMsNieqM" alt="" width="375"><figcaption></figcaption></figure></div>
2. Open the `Snippets` tab <i class="fa-brackets-curly">:brackets-curly:</i>

   <div align="left"><figure><img src="/files/FPYzoWkeDA45q258gb6R" alt="" width="375"><figcaption></figcaption></figure></div>
3. Tap `Add new snippet` at the bottom of the list

   <div align="left"><figure><img src="/files/sAZgd7rXnOVAvm92qKRy" alt="" width="375"><figcaption></figcaption></figure></div>
4. In the `Name` field, describe what the snippet does
5. Enter a command or a script in the `Script` field
6. `Save` the snippet

   <div align="left"><figure><img src="/files/49RHp4F80kVdf3YsuJE8" alt="" width="375"><figcaption></figcaption></figure></div>

{% endtab %}
{% endtabs %}

## Run snippets

{% tabs %}
{% tab title="From the terminal side panel" %}
To run a snippet from the terminal side panel:

1. Open the side panel with `Ctrl/Cmd + .`

   <figure><img src="/files/BD0ydGkJNMIJ9wChJnGn" alt=""><figcaption></figcaption></figure>
2. Open the `Snippets` tab <i class="fa-brackets-curly">:brackets-curly:</i>

   <figure><img src="/files/WC9EXAmdQNAxS2VcnISl" alt=""><figcaption></figcaption></figure>
3. Hover over the snippet, then click `PASTE` or `RUN`:

   1. **Paste** inserts the snippet into the terminal without running it
   2. **Run** executes the snippet in the active terminal. You can also double-click the snippet

   <div align="left"><figure><img src="/files/crEaXrnBGlv2YpyPJPUp" alt=""><figcaption></figcaption></figure></div>

{% endtab %}

{% tab title="From Autocomplete" %}
When [Autocomplete](/terminal/autocomplete-and-shell-integration#enable-autocomplete) is enabled, Termius suggests snippets as you type. It checks both the snippet name and the snippet content.

1. Enable `Autocomplete` in Termius Settings or from the terminal side panel

   <figure><img src="/files/Js3n0vBYGopyGYwlG2ht" alt=""><figcaption></figcaption></figure>
2. Start typing the snippet name in the terminal
3. Select the snippet from the Autocomplete suggestions

   <figure><img src="/files/P9ZZDdT9jYA1EAvMaVO5" alt=""><figcaption></figcaption></figure>
4. Termius inserts the snippet body into the terminal and executes it
   {% endtab %}
   {% endtabs %}

### Execute a snippet on multiple hosts

Snippets can be executed on multiple hosts at the same time. Use this for updates, health checks, and config changes.

You can save a default set of target hosts for a snippet. The next time you run it from the `Snippets` screen, Termius preselects those hosts.

{% tabs %}
{% tab title="Multi-execution from the Snippets screen" %}
Running a snippet from the **Snippets** screen creates new connections to the selected hosts.

To run a snippet in existing sessions instead, use the terminal side panel.

To execute a snippet on multiple hosts from the **Snippets** screen:

1. Open the `Vault` tab, then open the `Snippets` screen

   <figure><img src="/files/IOh4sobrBjI7czv1RlFj" alt=""><figcaption></figcaption></figure>
2. Double-click the snippet, or click the `pen` icon to edit it
3. Select the target hosts

   <figure><img src="/files/hRVEcfrfigxAaGKoDbOm" alt=""><figcaption></figcaption></figure>
4. Click `Run`
5. Termius creates a workspace with the selected hosts
   1. The connection flow may ask for input if some host credentials are not saved
   2. After the hosts connect, Termius runs the snippet
   3. To stop execution, close a host tab or close the workspace tab

Click `Save targets` to store the selected hosts in the snippet. The next time you run it from the `Snippets` screen, those hosts are preselected.
{% endtab %}

{% tab title="Multi-execution from the Terminal side panel" %}
This feature allows you to run a snippet in all currently active terminals.

To execute a snippet on multiple hosts from the **terminal** **side panel**:

1. Open the side panel with `Ctrl/Cmd + .`

   <figure><img src="/files/BD0ydGkJNMIJ9wChJnGn" alt=""><figcaption></figcaption></figure>
2. Open the `Snippets` tab <i class="fa-brackets-curly">:brackets-curly:</i>

   <figure><img src="/files/WC9EXAmdQNAxS2VcnISl" alt=""><figcaption></figcaption></figure>
3. Right-click the snippet you want to run on multiple hosts
4. Click `Run in all tabs` in the context menu

   <figure><img src="/files/UuU7jqRL68GD9VUs6oVt" alt=""><figcaption></figcaption></figure>

{% endtab %}
{% endtabs %}

## Set up startup snippets

A startup snippet is a command that runs automatically every time you connect to a host.

Use it to open a directory, activate a virtual environment, run checks, or attach to an existing tmux session.

**To enable a startup snippet for a host:**

1. Open the `Host Details` screen
2. Scroll down to the `Startup Command` field and choose the snippet

   <figure><img src="/files/Gtkmz1hoEaIIf6JBMlVb" alt=""><figcaption></figcaption></figure>
3. Save the host on mobile. On desktop, Termius saves it automatically

## Organize snippets with packages

Snippets can be organized into **packages**. They work like folders. Create a package for a project, host category, or task type, then move related snippets into it.

### Create a snippet package

{% tabs %}
{% tab title="Desktop" %}
To create a snippet package on the **desktop**:

1. Open the `Vault` tab, then open the `Snippets` screen

   <figure><img src="/files/IOh4sobrBjI7czv1RlFj" alt=""><figcaption></figcaption></figure>
2. Click the chevron next to `New Snippet`, then click `New snippet package`

   <figure><img src="/files/aCWZsW74Gk0ARjhl7ywm" alt=""><figcaption></figcaption></figure>
3. Enter the package name in the `Label` field. Termius saves the package automatically

   <figure><img src="/files/JPkocOl2GfuK5TwRaPTF" alt=""><figcaption></figcaption></figure>

{% endtab %}

{% tab title="Mobile" %}
To create a snippet package on mobile:

1. Tap the back arrow button `<` to open the **Vaults** screen, then open the `Snippets` screen

   <div align="left"><figure><img src="/files/TZ1pRGG18ka51wufGMeA" alt="" width="375"><figcaption></figcaption></figure></div>
2. Tap the plus button and choose `New snippet package`

   <div align="left"><figure><img src="/files/SNSztv4PXbOUXRVNI93a" alt="" width="375"><figcaption></figcaption></figure></div>
3. Enter the package `Name`

   <div align="left"><figure><img src="/files/7h6al46xy7eiVqJ4YV90" alt="" width="375"><figcaption></figcaption></figure></div>
4. `Save` the snippet package
   {% endtab %}
   {% endtabs %}

### Move snippets into packages

To add a snippet to a package:

* Open the `Edit Snippet` screen and select the package

  <figure><img src="/files/Z2BhhIeUsouq6vbhMC6l" alt=""><figcaption></figcaption></figure>
* Or, on the `Snippets` screen, select several snippets and drag them into a package

  <figure><img src="/files/iz8wsrPe9aLG9eg6EXHt" alt=""><figcaption></figcaption></figure>

## Share snippets within your team

Snippets are stored in vaults and follow the same access model as other vault content. Shared snippets sync automatically and are available to every team member with access to that vault.

**To move snippets between vaults:**

{% stepper %}
{% step %}
Open the `Vault` tab, then open the `Snippets` screen

<figure><img src="/files/IOh4sobrBjI7czv1RlFj" alt=""><figcaption></figcaption></figure>
{% endstep %}

{% step %}
Right-click the snippet, then choose an action:

* **Copy to:** will create a copy of the selected snippet in the target vault
* **Move to:** will transfer the snippet to the target vault

<figure><img src="/files/rOSodmQMgixGrv6nXCDa" alt=""><figcaption></figcaption></figure>
{% endstep %}

{% step %}
Select the target vault, then choose where to store credentials

<figure><img src="/files/Jqm0Y5o46QPXDEkCNTYs" alt=""><figcaption></figcaption></figure>
{% endstep %}
{% endstepper %}

You can also open the `Edit Snippet` screen and choose the vault there.

<figure><img src="/files/XvxSrb49inX8K1bYOJED" alt=""><figcaption></figcaption></figure>

## Delete snippets

If you no longer need a snippet, you can delete it from the `Snippets` screen or from the side panel in the terminal.

{% hint style="warning" %}
If the snippet is stored in a shared vault, removing it deletes it for everyone with access to that vault.
{% endhint %}

{% tabs %}
{% tab title="From the Snippets screen" %}
To delete a snippet from the Snippets screen:

1. Open the `Vault` tab, then open the `Snippets` screen

   <figure><img src="/files/IOh4sobrBjI7czv1RlFj" alt=""><figcaption></figcaption></figure>
2. Delete the snippet in one of these ways:
   * Right-click the snippet, then click `Remove`, or

     <figure><img src="/files/PE9CN0jpaD2PZTFByjOR" alt=""><figcaption></figcaption></figure>
   * Open the `Edit Snippet` screen, click the three-dots menu, then click `Remove`

     <figure><img src="/files/U1CUxCBLoczlrcQ3XhfH" alt=""><figcaption></figcaption></figure>

{% endtab %}

{% tab title="From the terminal side panel" %}
To delete a snippet from the terminal side panel:

1. Open the side panel with `Ctrl/Cmd + .`

   <figure><img src="/files/BD0ydGkJNMIJ9wChJnGn" alt=""><figcaption></figcaption></figure>
2. Open the `Snippets` tab <i class="fa-brackets-curly">:brackets-curly:</i>

   <figure><img src="/files/WC9EXAmdQNAxS2VcnISl" alt=""><figcaption></figcaption></figure>
3. Right-click the snippet, then click `Remove`&#x20;

   <div align="left"><figure><img src="/files/99r5a7VnFmVZWGpkABr8" alt=""><figcaption></figcaption></figure></div>

{% endtab %}
{% endtabs %}

## Pro tips

**Meaningful names**

Use clear snippet names to make them easier to find with [Autocomplete](/terminal/autocomplete-and-shell-integration). Start typing and select the right suggestion.

**Snippet variables**

Termius does not support variables in the snippet editor yet. You can use the `export` command in a startup snippet to define environment variables for other snippets. You can also set environment variables in the `Host Edit` screen.


# Autocomplete & Shell integration

This page explains how Autocomplete and Shell integration work in Termius, how to enable Autocomplete, and what limitations apply.

## Autocomplete

Autocomplete in Termius uses data from many sources to suggest snippets, shell history commands, paths, and built-in commands with arguments. It can also detect password prompts and suggest matching Identities. You do not need to install third-party packages or dependencies to use autocomplete.

### Enable autocomplete

Enable `Autocomplete` in one of these ways:

1. Open `Settings → Terminal`, then turn on `Autocomplete`

   <figure><img src="/files/QRgDVAMwuWzu4fXnDStN" alt=""><figcaption></figcaption></figure>
2. Open the terminal side panel, click the `rocket` icon, then turn on `Autocomplete`

   <figure><img src="/files/Js3n0vBYGopyGYwlG2ht" alt=""><figcaption></figcaption></figure>

{% hint style="info" %}
Autocomplete is not available in **PowerShell** or **CMD**.
{% endhint %}

## Shell integration

Shell integration works in the local terminal and in supported SSH sessions. It helps Termius detect the current directory, command history, prompts, and active command state.

Termius uses that data for Autocomplete and other terminal features. In remote sessions, Termius opens additional `exec` channels next to the main `shell` channel. It uses those channels to fetch data such as paths and command history.

## Command suggestions

<figure><img src="/files/ZBVsu7hPwC7NZO7TwmV6" alt=""><figcaption></figcaption></figure>

Termius Autocomplete provides suggestions from multiple sources, including command history, file and directory paths, built-in commands and arguments, and argument descriptions when available.

## Snippet suggestions

<figure><img src="/files/P9ZZDdT9jYA1EAvMaVO5" alt=""><figcaption></figcaption></figure>

Autocomplete in Termius makes snippets more accessible. They are integrated into autocomplete suggestions, and you can quickly find and execute one without searching for it in the side terminal panel. Start typing the Snippet name or any text from its script, and Termius shows matching Snippets in the suggestion list.

## Password suggestions

<figure><img src="/files/GQ2kp5FOotDeB0lDimto" alt=""><figcaption></figcaption></figure>

When Termius detects a password prompt, it suggests [identities](/keychain/identities) (saved combinations of username/password/key) to choose from. Learn more about Identities in Termius -> [Identities](/keychain/identities).

## Known limitations & system requirements

#### Local terminal

Shell integration for the local terminal works only with `bash` and `zsh`.

#### Remote connections

* SSH server: OpenSSH 7.2+
* Shell: `bash`

In supported SSH sessions, Termius opens additional `exec` channels to fetch paths and command history.

{% hint style="warning" %}
Some servers reject `exec` channels and may drop the connection.

This often happens on network equipment or locked-down systems.
{% endhint %}

If the connection drops, turn off `Autocomplete`.

If you manage the server, allow at least two sessions per connection:

1. Open the `sshd_config` file on your server
2. Find `MaxSessions`, then set it to `2` or higher
3. Save the file
4. Restart the SSH server. Use `sudo systemctl restart ssh` or `sudo service ssh restart`


# Mobile terminal

This page explains how to use the mobile terminal on iOS and iPadOS, customize its behavior, and work efficiently on a smaller screen.

## Overview

Termius on mobile brings a touch-optimized experience for mobile workflows. It includes features such as gestures, customizable keyboard controls, AI widget, voice typing, snippets, etc.

## Interact with the terminal

### Gesture actions

The terminal supports a set of touch gestures for moving the cursor, interacting with the output, and sending common keys without a physical keyboard.

#### Arrows keys

{% columns %}
{% column %}
Arrow keys are used to navigate command history (arrow up/down) and move cursor.

To emulate arrows keys:

* **Long-press the terminal screen** and drag in any direction to move the cursor up, down, left, or right. Holding longer produces a continuous series of keystrokes in the same direction
* **Hold the Space key** and slide your finger in any direction to send the same arrow key input

The system includes three speeds gears. If you need to move the cursor faster, move your finger in the same direction to increase the speed.
{% endcolumn %}

{% column %}
{% embed url="<https://files.gitbook.com/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F5PCLq8V6ZExygzYl6XVJ%2Fuploads%2FznSc8VPtPG6etX8bRLrl%2Fgesture-guide-animation-arrows-terminal%20screen.mp4?alt=media&token=c5380a07-f93c-48e9-a4a7-2c1330b9d581>" %}
{% endcolumn %}
{% endcolumns %}

#### Tab key

{% columns %}
{% column %}
The Tab key is used to autocomplete commands, file names, and paths in the terminal, or to indent text in editors.

* **Double-tap the terminal screen** to send a Tab keystroke
  {% endcolumn %}

{% column %}
{% embed url="<https://files.gitbook.com/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F5PCLq8V6ZExygzYl6XVJ%2Fuploads%2FI23waJ49NW4oub0quhs9%2Fgesture-guide-animation-Tab.mp4?alt=media&token=be4d6a0b-0e95-4f95-b624-aba30a81bc86>" %}
{% endcolumn %}
{% endcolumns %}

#### Change the text size

{% columns %}
{% column %}
**Pinch with two fingers** to zoom in or out on the terminal screen to adjust the text size.
{% endcolumn %}

{% column %}
{% embed url="<https://files.gitbook.com/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F5PCLq8V6ZExygzYl6XVJ%2Fuploads%2F1Adf60qVqnAbKx287Hju%2FZoom%20it%20and%20out.mp4?alt=media&token=f08e86ef-2ef0-4668-a597-1205ffaf0f66>" %}
{% endcolumn %}
{% endcolumns %}

### Select, copy and paste

#### Select and Copy

{% columns %}
{% column %}
Use the standard iOS touch gestures:

* **Select text:** Press and hold the word, then release. Selection handles appear at the start and end of the highlighted word. Drag them to extend the selection
* **Copy:** Once the text is highlighted, tap `Copy` in the context menu to save it to the iOS clipboard
  {% endcolumn %}

{% column %}
{% embed url="<https://files.gitbook.com/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F5PCLq8V6ZExygzYl6XVJ%2Fuploads%2FO5hSYVl0HD8l1F3Pcxru%2FCopy%20and%20Select.mp4?alt=media&token=14188ab0-8ad9-4345-a904-bc6929f0c889>" %}
{% endcolumn %}
{% endcolumns %}

{% hint style="info" %}
Selected text can also be used as additional context for the [AI widget](#ai-widget).
{% endhint %}

#### Paste text

{% columns %}
{% column %}

* **Press and hold**, then release. Tap `Paste` in the context menu
  {% endcolumn %}

{% column %}

<div align="left"><figure><img src="/files/7TdyQASG778RdCfro6RU" alt="" width="563"><figcaption></figcaption></figure></div>
{% endcolumn %}
{% endcolumns %}

{% columns %}
{% column %}

* **Tap with three fingers** directly on the screen and tap the `paste` icon
  {% endcolumn %}

{% column %}

<div align="left"><figure><img src="/files/i5b4gs7Zj1U40uAboh4A" alt="" width="563"><figcaption></figcaption></figure></div>
{% endcolumn %}
{% endcolumns %}

#### Paste images & files

{% columns %}
{% column %}
At the moment, images and files can't be pasted directly into the terminal. Upload it through SFTP first and reference it by path:

1. Open an `SFTP` tab from the active terminal
2. Upload the image/file, or drag and drop it from your device
3. Copy the image/file path from SFTP
4. Paste the path into the terminal
   {% endcolumn %}

{% column %}
{% embed url="<https://files.gitbook.com/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F5PCLq8V6ZExygzYl6XVJ%2Fuploads%2FxDNB3tEA59ftbojpWemT%2FVoice%20typing.mp4?alt=media&token=6d299c87-6a04-4b6b-af08-9c83149be61c>" %}
{% endcolumn %}
{% endcolumns %}

### Volume buttons

The device volume buttons can be assigned to a specific action, providing quick access to frequently used keys, shortcuts, or commands.

{% columns %}
{% column %}
**To assign an action to a volume button:**

1. Open `Profile` → `Settings`&#x20;
   {% endcolumn %}

{% column %}

<div align="left"><figure><img src="/files/ee8hLwrweIWpPby5GxiC" alt="" width="563"><figcaption></figcaption></figure></div>
{% endcolumn %}
{% endcolumns %}

{% columns %}
{% column %}
2\. Scroll to the Volume buttons section and select  `Volume Up` or `Volume Down`&#x20;
{% endcolumn %}

{% column %}

<div align="left"><figure><img src="/files/aRt9uxHLKO2p7dgezfsC" alt="" width="563"><figcaption></figcaption></figure></div>
{% endcolumn %}
{% endcolumns %}

{% columns %}
{% column %}
3\. Assign an action or select `None` to disable
{% endcolumn %}

{% column %}

<div align="left"><figure><img src="/files/jUrm12HQ85iVMH1DQUSz" alt="" width="563"><figcaption></figcaption></figure></div>
{% endcolumn %}
{% endcolumns %}

### Keyboard add-on

{% columns %}
{% column %}
The keyboard add-on displays the three first groups of hotkeys from the [extended keyboard](#extended-keyboard). It sits directly above the system keyboard and is always visible while typing.

Keys are organized into groups of four which can be [reordered](#customize-keyboard) or [customized](#customize-keyboard) to match individual workflows.
{% endcolumn %}

{% column %}

<figure><img src="/files/pPLKhwSuwYknk0hbwFfj" alt=""><figcaption></figcaption></figure>
{% endcolumn %}
{% endcolumns %}

### AI widget and Voice typing

{% columns %}
{% column %}
The AI widget is a panel above the keyboard. It provides two input modes for the terminal:

* [**AI mode**](#ai-mode) for generating commands from natural-language prompts
* [**Paste mode**](#paste-mode-and-voice-typing) for dictating input using voice typing
  {% endcolumn %}

{% column %}

<figure><img src="/files/Gff6ap4nolsIhu9k6IIS" alt=""><figcaption></figcaption></figure>
{% endcolumn %}
{% endcolumns %}

The AI widget maintains a history of prompts and generated commands during the session, so earlier results can be revisited and reused.

The AI widget can be hidden when not needed using the `Hide the AI widget` toggle in `Profile` → `Settings`.

#### AI mode

{% columns %}
{% column %}
**To generate a command, use AI mode:**

1. Switch input to `AI` mode
   {% endcolumn %}

{% column %}

<div align="left"><figure><img src="/files/5EW0SFY1l88Qtt4vy5JE" alt="" width="563"><figcaption></figcaption></figure></div>
{% endcolumn %}
{% endcolumns %}

{% columns %}
{% column %}
2\. Type the task in plain text. \
To `add context`, [select](#select-and-copy) text in the terminal and choose `AI` in the context menu. It will be passed to the AI widget along with the prompt
{% endcolumn %}

{% column %}

<div align="left"><figure><img src="/files/VRQr0beSbLGGauLoP7lS" alt="" width="563"><figcaption></figcaption></figure></div>
{% endcolumn %}
{% endcolumns %}

{% columns %}
{% column %}
3\. Tap `Enter` to generate a command.\
Then run the generated command, or edit it before execution
{% endcolumn %}

{% column %}

<div align="left"><figure><img src="/files/0a2qTxJhCrIXqlQ7doVO" alt="" width="563"><figcaption></figcaption></figure></div>
{% endcolumn %}
{% endcolumns %}

#### Paste mode and voice typing

In Paste mode, prompts are dictated to the AI widget. Spoken text can be run as-is or edited before execution.

{% columns %}
{% column %}
**To dictate a prompt, use Paste mode:**

1. Tap the input field in the AI widget to focus on it
2. Switch the input to `Paste` mode
3. Tap the microphone icon on the keyboard and start speaking
4. Run the prompt, or edit it before execution
   {% endcolumn %}

{% column %}
{% embed url="<https://files.gitbook.com/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F5PCLq8V6ZExygzYl6XVJ%2Fuploads%2FgEb64TPjMSASPO5dQoDi%2FVoice%20typing.mp4?alt=media&token=bd53741c-01ac-4f09-b252-bea0c02f739b>" %}
{% endcolumn %}
{% endcolumns %}

### Hide or show the keyboard

The on-screen keyboard appears when the terminal input is focused. If a hardware keyboard is connected, the on-screen keyboard hides.

{% columns %}
{% column %}
**To hide the keyboard:**

1. Open the side panel
   {% endcolumn %}

{% column %}

<div align="left"><figure><img src="/files/UqD7Rqk9hfeNxTouL7p4" alt=""><figcaption></figcaption></figure></div>
{% endcolumn %}
{% endcolumns %}

{% columns %}
{% column %}
2\. Tap the `keyboard` icon
{% endcolumn %}

{% column %}

<div align="left"><figure><img src="/files/NYS2sQuaYWL0YlPTeDkz" alt="" width="563"><figcaption></figcaption></figure></div>
{% endcolumn %}
{% endcolumns %}

{% columns %}
{% column %}
**To show keyboard:**

* Tap the `keyboard` icon
  {% endcolumn %}

{% column %}

<div align="left"><figure><img src="/files/rONGSD2FhxCASxbvy0mX" alt="" width="563"><figcaption></figcaption></figure></div>
{% endcolumn %}
{% endcolumns %}

## Side panel

<figure><img src="/files/6LKVFlGk5gjHOrMD0ngT" alt=""><figcaption></figcaption></figure>

The side panel provides a set of tabs for quick access to:

* [**Extended keyboard**](#extended-keyboard)**.** Terminal-specific keys and shortcuts
* [**Snippets**](#snippets-tab)**.** Saved commands and scripts
* [**Command history**](#command-history-tab)**.** Previously entered commands
* [**Themes**](#themes-tab)**.** Terminal appearance options

While on iPhone the side panel sits on top of the system keyboard, on iPad it appears on the right side of the screen.

### Extended keyboard

The extended keyboard provides quick access to keys commonly used in terminal workflows but not available on the standard mobile keyboard, including:

* Ctrl, Esc, Tab, and other modifier keys
* Arrow keys
* Function keys
* Common symbols and navigation keys

Keys are organized into groups of four which can be [reordered](#customize-keyboard) or [customized](#customize-keyboard) to match individual workflows, and are accessible in two places:&#x20;

* the [**keyboard add-on**](#keyboard-add-on-bar) above the system keyboard for quick access
* the [**extended keyboard**](#extended-keyboard) for the full list and customization options

#### Reorder key groups

The order of the groups matters as the first three groups appear in the [keyboard add-on](#keyboard-add-on-bar).&#x20;

{% columns %}
{% column %}
**To reorder key groups:**

1. Open the side panel
   {% endcolumn %}

{% column valign="bottom" %}

<div align="left"><figure><img src="/files/UqD7Rqk9hfeNxTouL7p4" alt=""><figcaption></figcaption></figure></div>
{% endcolumn %}
{% endcolumns %}

{% columns %}
{% column %}
2\. Tap `Customize`
{% endcolumn %}

{% column valign="bottom" %}

<div align="left"><figure><img src="/files/GFcMuU45iu1wp2Y7gJAE" alt="" width="563"><figcaption></figcaption></figure></div>
{% endcolumn %}
{% endcolumns %}

{% columns %}
{% column %}
3\. Drag and drop groups to change their order
{% endcolumn %}

{% column valign="bottom" %}

<div align="left"><figure><img src="/files/VuEsc7F0YH9CEvEqCrpr" alt="" width="563"><figcaption></figcaption></figure></div>
{% endcolumn %}
{% endcolumns %}

#### Customize key groups

Custom groups can be created to organize a personal set of keys for specific workflows.&#x20;

{% columns %}
{% column %}
**To add a custom key group:**

1. Open the side panel
   {% endcolumn %}

{% column %}

<div align="left"><figure><img src="/files/UqD7Rqk9hfeNxTouL7p4" alt=""><figcaption></figcaption></figure></div>
{% endcolumn %}
{% endcolumns %}

{% columns %}
{% column %}
2\. Tap `Customize`&#x20;
{% endcolumn %}

{% column %}

<div align="left"><figure><img src="/files/GFcMuU45iu1wp2Y7gJAE" alt="" width="563"><figcaption></figcaption></figure></div>
{% endcolumn %}
{% endcolumns %}

{% columns %}
{% column %}
3\. Tap `+` at the top of the screen
{% endcolumn %}

{% column %}

<div align="left"><figure><img src="/files/BrlaaEpieaQgjvpbpbWW" alt="" width="563"><figcaption></figcaption></figure></div>
{% endcolumn %}
{% endcolumns %}

{% columns %}
{% column %}
4\. Tap the keys to add them to the group
{% endcolumn %}

{% column %}

<div align="left"><figure><img src="/files/8tLIrEcA83HsiYj4AHNb" alt="" width="563"><figcaption></figcaption></figure></div>
{% endcolumn %}
{% endcolumns %}

#### Insert password

A password saved on the current host can be inserted directly from the extended keyboard to avoid manual copy and paste.

{% columns %}
{% column %}
**To insert a password:**

1. Open the side panel
   {% endcolumn %}

{% column %}

<figure><img src="/files/UqD7Rqk9hfeNxTouL7p4" alt=""><figcaption></figcaption></figure>
{% endcolumn %}
{% endcolumns %}

{% columns %}
{% column %}
2\. Tap `Password`. The password appears in the terminal input
{% endcolumn %}

{% column %}

<div align="left"><figure><img src="/files/juGtrIzyK4e5WXJwECVM" alt="" width="563"><figcaption></figcaption></figure></div>
{% endcolumn %}
{% endcolumns %}

{% columns %}
{% column %}
3\. Tap `Enter` to send it
{% endcolumn %}

{% column %}

<div align="left"><figure><img src="/files/svRh3HkwRMk5UQZMmQww" alt="" width="563"><figcaption></figcaption></figure></div>
{% endcolumn %}
{% endcolumns %}

{% columns %}
{% column %}
You can insert password via [Autocomplete](/terminal/autocomplete-and-shell-integration) whenever a password is prompted. To get password suggestions enable autocomplete in `Settings` → `Enable Autocomplete`
{% endcolumn %}

{% column %}

<figure><img src="/files/avFZ1h56lvXADRX9Dtjw" alt=""><figcaption></figcaption></figure>
{% endcolumn %}
{% endcolumns %}

### Snippets

Snippets are saved commands and scripts that can be inserted into the terminal. They're useful for frequently used commands, long or error-prone strings, and reusable templates. Learn more in [Snippets](/terminal/snippets).

Snippets can be [run](#run-or-paste-a-snippet) immediately, [pasted](#run-or-paste-a-snippet) into the terminal without running, or [edited](#edit-a-snippet) directly from the panel.

#### Run, paste, or edit a snippet

{% columns %}
{% column %}

1. Open the side panel
   {% endcolumn %}

{% column %}

<figure><img src="/files/UqD7Rqk9hfeNxTouL7p4" alt=""><figcaption></figcaption></figure>
{% endcolumn %}
{% endcolumns %}

{% columns %}
{% column %}
2\. Switch to the `Snippets` tab
{% endcolumn %}

{% column %}

<div align="left"><figure><img src="/files/FPYzoWkeDA45q258gb6R" alt="" width="563"><figcaption></figcaption></figure></div>
{% endcolumn %}
{% endcolumns %}

{% columns %}
{% column %}
**To run a snippet:**

* Tap a snippet and it will be run immediately in the terminal
  {% endcolumn %}

{% column %}

<div align="left"><figure><img src="/files/knRagFVxk1gXzLIzv8yH" alt="" width="563"><figcaption></figcaption></figure></div>
{% endcolumn %}
{% endcolumns %}

{% columns %}
{% column %}
**To paste a snippet:**

1. Long-press a snippet to open the preview and action menu
2. Tap `Paste` to insert the snippet into the terminal without running it
   {% endcolumn %}

{% column %}

<div align="left"><figure><img src="/files/KXC9sNHt2bjF2khK4kwE" alt="" width="563"><figcaption></figcaption></figure></div>
{% endcolumn %}
{% endcolumns %}

{% columns %}
{% column %}
**To edit a snippet:**

1. Long-press a snippet to open the preview and action menu
2. Tap `Edit`. The Edit Snippets screen opens, where you can change the name, script, and other settings
   {% endcolumn %}

{% column %}

<div align="left"><figure><img src="/files/mgnG21OS4vw6kaMqklMt" alt="" width="563"><figcaption></figcaption></figure></div>
{% endcolumn %}
{% endcolumns %}

#### Create a new snippet

A new snippet can be created directly from the Snippets tab:

{% columns %}
{% column %}

1. Open the side panel
   {% endcolumn %}

{% column %}

<div align="left"><figure><img src="/files/UqD7Rqk9hfeNxTouL7p4" alt=""><figcaption></figcaption></figure></div>
{% endcolumn %}
{% endcolumns %}

{% columns %}
{% column %}
2\. Switch to the `Snippets` tab
{% endcolumn %}

{% column %}

<div align="left"><figure><img src="/files/FPYzoWkeDA45q258gb6R" alt="" width="563"><figcaption></figcaption></figure></div>
{% endcolumn %}
{% endcolumns %}

{% columns %}
{% column %}
3\. Tap `Add new snippet` at the bottom of the list
{% endcolumn %}

{% column %}

<div align="left"><figure><img src="/files/sAZgd7rXnOVAvm92qKRy" alt="" width="375"><figcaption></figcaption></figure></div>
{% endcolumn %}
{% endcolumns %}

{% columns %}
{% column %}
4\. In the `Name` field, describe what the snippet does
5\. Enter a command or a script in the `Script` field
6\. `Save` the snippet
{% endcolumn %}

{% column %}

<div align="left"><figure><img src="/files/49RHp4F80kVdf3YsuJE8" alt=""><figcaption></figcaption></figure></div>

{% endcolumn %}
{% endcolumns %}

### Command history

The command history keeps a record of previously used commands. A command can be [run](#run-paste-or-edit-a-snippet) immediately, [pasted](#run-paste-or-edit-a-snippet) into the terminal without running, or [saved](#run-paste-or-save-as-a-snippet) as a snippet.

#### Run, paste, or save as a snippet

{% columns %}
{% column %}

1. Open the side panel
   {% endcolumn %}

{% column %}

<figure><img src="/files/UqD7Rqk9hfeNxTouL7p4" alt=""><figcaption></figcaption></figure>
{% endcolumn %}
{% endcolumns %}

{% columns %}
{% column %}
2\. Switch to the `Command history` tab
{% endcolumn %}

{% column %}

<div align="left"><figure><img src="/files/8t80YPujel8jWw6MSB7Y" alt=""><figcaption></figcaption></figure></div>
{% endcolumn %}
{% endcolumns %}

{% columns %}
{% column %}
**To run a command:**

* Tap a command to run it immediately in the terminal
  {% endcolumn %}

{% column %}

<div align="left"><figure><img src="/files/KOMfhDaj2YXOKf1lTSPi" alt=""><figcaption></figcaption></figure></div>
{% endcolumn %}
{% endcolumns %}

{% columns %}
{% column %}
**To paste a command:**

1. Long-press a command to open the preview and action menu
2. Tap `Paste` to insert the command into the terminal without running it
   {% endcolumn %}

{% column %}

<div align="left"><figure><img src="/files/37dLJwHdfXa8EKhNiWSW" alt=""><figcaption></figcaption></figure></div>
{% endcolumn %}
{% endcolumns %}

{% columns %}
{% column %}
**To save a command as a snippet:**

1. Long-press a command to open the preview and action menu
2. Tap `Save as a snippet`. The `New Snippets` screen opens, where you can change the name, script, and other settings
   {% endcolumn %}

{% column %}

<figure><img src="/files/y4g9KwRzLlbENn2kzcsl" alt=""><figcaption></figcaption></figure>
{% endcolumn %}
{% endcolumns %}

### Themes

You can change the terminal appearance — theme, font, and font size — for the current host in the Themes tab. The changes will be saved for that host and will be applied to future sessions.

{% columns %}
{% column %}
**To change the terminal appearance:**

1. Open the side panel
   {% endcolumn %}

{% column %}

<figure><img src="/files/UqD7Rqk9hfeNxTouL7p4" alt=""><figcaption></figcaption></figure>
{% endcolumn %}
{% endcolumns %}

{% columns %}
{% column %}
2\. Switch to the `Themes` tab. \
Change a theme, font, or font size
{% endcolumn %}

{% column %}

<div align="left"><figure><img src="/files/XBNw2ACzWwAoBvUCKbrR" alt="" width="563"><figcaption></figcaption></figure></div>
{% endcolumn %}
{% endcolumns %}

## Input settings

Termius provides a number of input options that go beyond the default keyboard behavior, helping make terminal work on mobile feel closer to desktop.

### Hardware keyboard

Termius supports external hardware keyboards on iPad, iPhone, and Android, including Bluetooth keyboards, USB-C keyboards, and Apple's Magic Keyboard and Smart Keyboard for iPad. When a hardware keyboard is connected, the on-screen keyboard and hotkeys bar hides automatically.

Most terminal-specific keys available on a hardware keyboard, such as **Ctrl**, **Alt**, **Esc**, **Tab**, arrow keys, and function keys (F1–F10) behave as expected.

### Keyboard behavior

{% columns %}
{% column %}
Some keyboard behaviors can be adjusted in `Profile` → `Settings`:

* **CJK input in terminal** — enables Chinese, Japanese, and Korean input when using a hardware keyboard. Turn this on to enter non-Latin characters in the terminal
  {% endcolumn %}

{% column %}

<div align="left"><figure><img src="/files/0MxmnmxcKbvRmmytclGC" alt="" width="563"><figcaption></figcaption></figure></div>
{% endcolumn %}
{% endcolumns %}

{% columns %}
{% column %}

* **Use Option as meta key** — sends Meta-based key combinations when **Option** is pressed. Use this in environments that rely on Meta-based shortcuts
  {% endcolumn %}

{% column %}

<div align="left"><figure><img src="/files/RyfH6i6xEJKO5Iar2HCI" alt="" width="563"><figcaption></figcaption></figure></div>
{% endcolumn %}
{% endcolumns %}

{% columns %}
{% column %}

* **Remap Caps Lock** — reassigns the **Caps Lock** key to a different action, such as **Esc**, **Ctrl**, or a common shortcut
  {% endcolumn %}

{% column %}

<figure><img src="/files/zxucG2IBdSb6AFfDTMyU" alt=""><figcaption></figcaption></figure>
{% endcolumn %}
{% endcolumns %}

### Cursor speed

Cursor speed controls how quickly the cursor moves during gestures and navigation, such as the Space key cursor gesture or arrow key emulation.

{% columns %}
{% column %}
**To adjust the cursor speed:**

1. Open `Profile`→`Settings`&#x20;
   {% endcolumn %}

{% column %}

<div align="left"><figure><img src="/files/ee8hLwrweIWpPby5GxiC" alt="" width="563"><figcaption></figcaption></figure></div>
{% endcolumn %}
{% endcolumns %}

{% columns %}
{% column %}
2\. Scroll to `Cursor speed` in the keyboard section
{% endcolumn %}

{% column %}

<div align="left"><figure><img src="/files/pcNI498IPagnyxXwbiBP" alt="" width="563"><figcaption></figcaption></figure></div>
{% endcolumn %}
{% endcolumns %}

{% columns %}
{% column %}
3\. Choose the cursor speed
{% endcolumn %}

{% column %}

<div align="left"><figure><img src="/files/m5o7YpMdP7iHnJNifYfy" alt="" width="563"><figcaption></figcaption></figure></div>
{% endcolumn %}
{% endcolumns %}


# SSH keys and certificates

This page describes how to manage SSH keys and certificates in Termius, including FIDO2 hardware keys and biometric keys.

## Overview

Termius Keychain lets you generate, store, and organize credentials such as usernames, passwords, SSH keys, and certificates. It helps you avoid duplication and manage credentials across multiple servers.

For SSH keys in particular, Termius can:

* Import SSH keys and certificates
* Generate SSH keys, FIDO2 keys, and Biometric keys
* Provide a convenient way to export the public keys to the `authorized_keys` file on your servers

## SSH keys

Termius allows you to import your existing SSH keys and generate a new one using a built-in SSH key generator.

### Generate SSH keys

Termius can generate Ed25519, ECDSA, RSA, and ML-DSA keys.

{% tabs %}
{% tab title="Desktop" %}
To generate SSH keys on the desktop:

1. Navigate to the `Keychain` screen and select `Generate key` at the key drop-down

   <figure><img src="/files/rBA2feoFH8eY2O5bWkiz" alt=""><figcaption></figcaption></figure>
2. Specify a name for the key in the `Label` field and choose the `Key type`

   <figure><img src="/files/pgtlER6bfC4h4tR5jDN1" alt=""><figcaption></figcaption></figure>
3. For extra security, set a passphrase. Turn on `Save passphrase` to avoid passphrase prompts when you connect

   <figure><img src="/files/22FmJWgF4E8M4r2bggXm" alt=""><figcaption></figcaption></figure>
4. Click `Generate & save`
   {% endtab %}

{% tab title="iOS" %}
To generate SSH keys on iOS:

1. Tap the back arrow button `<` to open the **Vaults** screen, then open the `Keychain` screen

   <div align="left"><figure><img src="/files/TZ1pRGG18ka51wufGMeA" alt="" width="375"><figcaption></figcaption></figure></div>
2. Tap the `+` button and select `Generate Key` in the context menu

   <div align="left"><figure><img src="/files/9M7sW1GCOuZDadtGUIAf" alt="" width="375"><figcaption></figcaption></figure></div>
3. Specify the key `Label` and choose the `Key type`

   <div align="left"><figure><img src="/files/eMuwe0oyzcCc15Dqhale" alt="" width="375"><figcaption></figcaption></figure></div>
4. For extra security, set a passphrase. Turn on `Save passphrase` to avoid passphrase prompts when you connect

   <div align="left"><figure><img src="/files/vcX8HM2RUi4ghGGg5z5g" alt="" width="375"><figcaption></figcaption></figure></div>
5. Tap the `Save` button
   {% endtab %}

{% tab title="Android" %}
To generate SSH keys on Android:

1. Tap `< All vaults` to open the **Vaults** screen, then open the `Keychain` screen

   <div align="left"><figure><img src="/files/QtqCO3uroxSZ0Gjb6UB8" alt="" width="375"><figcaption></figcaption></figure></div>
2. Tap the `+` button and select `New SSH Key` in the context menu

   <div align="left"><figure><img src="/files/Dv7gNBkmMAqghM7DdYWC" alt="" width="375"><figcaption></figcaption></figure></div>
3. Select `Generate new SSH Key`

   <div align="left"><figure><img src="/files/ruafg8BT126u5j0IU8Eh" alt="" width="375"><figcaption></figcaption></figure></div>
4. Specify the key `Name` and choose the `Key type`

   <div align="left"><figure><img src="/files/TR1fIyxEzFXPkmfBXAbe" alt="" width="375"><figcaption></figcaption></figure></div>
5. For extra security, set a passphrase. Turn on `Save passphrase` to avoid passphrase prompts when you connect

   <div align="left"><figure><img src="/files/Xa6mxSiEMNlmbKhwINO1" alt="" width="375"><figcaption></figcaption></figure></div>
6. Tap the `Generate` button
   {% endtab %}
   {% endtabs %}

### Import SSH keys

Termius can import SSH keys from a file or by pasting a private key from the clipboard.

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

#### Paste a key on the desktop

1. Navigate to the `Keychain` and click `New key`

   <figure><img src="/files/OTS1CrEtwnPmaUUvL449" alt=""><figcaption></figcaption></figure>
2. Paste your private key from the clipboard

   <figure><img src="/files/wgJZ0SO7OwQsdPK0SO9Y" alt=""><figcaption></figcaption></figure>
3. Specify a name for the key in the `Label` field. The key will be auto-saved

#### Import from a file on the desktop

1. Navigate to the `Keychain` and click `New key`

   <figure><img src="/files/OTS1CrEtwnPmaUUvL449" alt=""><figcaption></figcaption></figure>
2. `Drag and drop` your key file or click `Import from key file`

   <figure><img src="/files/sGgewnC8QNJ8OgyzDuDd" alt=""><figcaption></figcaption></figure>
3. Specify a name for the key in the `Label` field. Termius auto-saves the key

{% hint style="info" %}
If your key is protected with a `Passphrase` you can specify it in a corresponding field. Otherwise, you will be prompted for a passphrase on every connection.
{% endhint %}
{% endtab %}

{% tab title="iOS" %}

#### Paste a key on iOS

1. Tap the back arrow button `<` to open the **Vaults** screen, then open the `Keychain` screen

   <div align="left"><figure><img src="/files/TZ1pRGG18ka51wufGMeA" alt="" width="375"><figcaption></figcaption></figure></div>
2. Tap the `+` button and select `Paste Key` in the context menu

   <div align="left"><figure><img src="/files/Z4gYdgx82Wf9AHj3Qg3A" alt="" width="375"><figcaption></figcaption></figure></div>
3. Paste your private key from the clipboard and specify a name for the key in the `Label` field

   <div align="left"><figure><img src="/files/qkpTT7L0LQfVHMr8S5tK" alt="" width="375"><figcaption></figcaption></figure></div>
4. `Save` the key

#### Import from a file

1. Tap the back arrow button `<` to open the **Vaults** screen, then open the `Keychain` screen

   <div align="left"><figure><img src="/files/TZ1pRGG18ka51wufGMeA" alt="" width="375"><figcaption></figcaption></figure></div>
2. Tap the `+` button and select `Import Key` in the context menu

   <div align="left"><figure><img src="/files/GyKCT7NY20x6h4Qts9uT" alt="" width="375"><figcaption></figcaption></figure></div>
3. Select your key file

   <div align="left"><figure><img src="/files/rxn6A4gb5e08UlyvTYcf" alt="" width="375"><figcaption></figcaption></figure></div>
4. `Save` the key

{% hint style="info" %}
If your key is protected with a `Passphrase` you can specify it in a corresponding field. Otherwise, you will be prompted for a passphrase on every connection.
{% endhint %}
{% endtab %}

{% tab title="Android" %}

#### Paste a key on Android

1. Tap `< All vaults` to open the **Vaults** screen, then open the `Keychain` screen

   <div align="left"><figure><img src="/files/QtqCO3uroxSZ0Gjb6UB8" alt="" width="375"><figcaption></figcaption></figure></div>
2. Tap the `+` button and select `New SSH key` in the context menu

   <div align="left"><figure><img src="/files/CoDtSErufUITLvhzb79L" alt="" width="375"><figcaption></figcaption></figure></div>
3. Select `Paste SSH key` . Termius tries to paste a key automatically. If you have no private key in your clipboard, copy and paste it into the corresponding field

   <div align="left"><figure><img src="/files/9QZpoyX3wRuKJUmhfmnT" alt="" width="375"><figcaption></figcaption></figure></div>
4. Tap `Validate` the private key

   <div align="left"><figure><img src="/files/rRfc2TRvm5x4FwMUYU7V" alt="" width="375"><figcaption></figcaption></figure></div>
5. Specify the `Name` of the key

   <div align="left"><figure><img src="/files/WzzNJvJVV9Rjjc1Uigg7" alt="" width="375"><figcaption></figcaption></figure></div>
6. `Save` the key

#### Import from a file on Android

1. Tap `< All vaults` to open the **Vaults** screen, then open the `Keychain` screen

   <div align="left"><figure><img src="/files/QtqCO3uroxSZ0Gjb6UB8" alt="" width="375"><figcaption></figcaption></figure></div>
2. Tap the `+` button and select `New SSH key` in the context menu

   <div align="left"><figure><img src="/files/CoDtSErufUITLvhzb79L" alt="" width="375"><figcaption></figcaption></figure></div>
3. Select `Import SSH key from file`

   <div align="left"><figure><img src="/files/swa7KuFeD4g9nzzVTPyk" alt="" width="375"><figcaption></figcaption></figure></div>
4. Select a key from the filesystem

   <div align="left"><figure><img src="/files/nuVI8kA2yo5a4AY0bMd4" alt="" width="375"><figcaption></figcaption></figure></div>
5. Tap `Validate` the private key

   <div align="left"><figure><img src="/files/rRfc2TRvm5x4FwMUYU7V" alt="" width="375"><figcaption></figcaption></figure></div>
6. Specify the `Name` of the key

   <div align="left"><figure><img src="/files/WzzNJvJVV9Rjjc1Uigg7" alt="" width="375"><figcaption></figcaption></figure></div>
7. `Save` the key

{% hint style="info" %}
If your key is protected with a `Passphrase` you can specify it in a corresponding field. Otherwise, you will be prompted for a passphrase on every connection.
{% endhint %}
{% endtab %}
{% endtabs %}

### Export an SSH key to a server

Termius provides a convenient way to export SSH keys to your servers. When you export a key, its public portion is added to the `authorized_keys` file on your server.

{% hint style="success" %}
Upon successful export, the key is linked to the corresponding host in Termius, allowing you to connect with one click.

If you want to link keys to your hosts manually, see [SSH with an SSH key](/organize-and-connect-to-hosts/connecting-to-a-server#ssh-with-an-ssh-key).
{% endhint %}

{% tabs %}
{% tab title="Desktop" %}
To export SSH keys to a server on the desktop:

1. Navigate to the `Keychain` and `Right-click` a key you'd like to export, then click `Export to host` in the context menu

   <figure><img src="/files/Yig76JJuXhJCASWDKP8y" alt=""><figcaption></figcaption></figure>
2. Click `Select Host` and select the host you want the public key to be exported to

   <figure><img src="/files/Po0XpP6f7kLKsG4lh17J" alt=""><figcaption></figcaption></figure>
3. If your authorized keys are stored in a custom directory, update the folder path in the `SSH keys location` field and specify the authorized keys file using the `Filename` field
4. Click `Export and Attach`

   <figure><img src="/files/OOtLGsVHRuKQM3RDv2Am" alt=""><figcaption></figcaption></figure>

{% endtab %}

{% tab title="iOS" %}
To export SSH keys to a server on iOS:

1. Tap the back arrow button `<` to open the **Vaults** screen, then open the `Keychain` screen

   <div align="left"><figure><img src="/files/TZ1pRGG18ka51wufGMeA" alt="" width="375"><figcaption></figcaption></figure></div>
2. Tap the key you want to export, then select the host you want the public key to be exported to

   <div><figure><img src="/files/CeaL7503Hj2tz86mr8Tu" alt=""><figcaption></figcaption></figure> <figure><img src="/files/VwwLCTGi5K0CBZGaj0ji" alt=""><figcaption></figcaption></figure></div>
3. If your authorized keys are stored in a custom directory, update the folder path in the `SSH keys location` field and specify the file containing the authorized keys
4. Tap `Export`

   <div align="left"><figure><img src="/files/XQGZf4a1rqaFl4FdLarE" alt="" width="375"><figcaption></figcaption></figure></div>

{% endtab %}

{% tab title="Android" %}
To export SSH keys to a server on Android:

1. Tap `< All vaults` to open the **Vaults** screen, then open the `Keychain` screen

   <div align="left"><figure><img src="/files/QtqCO3uroxSZ0Gjb6UB8" alt="" width="375"><figcaption></figcaption></figure></div>
2. Tap the key you want to export and select `Export to…` in the context menu

   <div align="left"><figure><img src="/files/N1ORlzDoaQgL3YWwYd5L" alt=""><figcaption></figcaption></figure> <figure><img src="/files/4JnHaUPmjDwhmXppnya7" alt=""><figcaption></figcaption></figure></div>
3. Select a host from the list

   <div align="left"><figure><img src="/files/lS8jCunOE3hilZAlJjsz" alt="" width="375"><figcaption></figcaption></figure></div>
4. If your authorized keys are stored in a custom directory, update the folder path in the `SSH keys location` field and specify the `File containing public keys`
5. Tap `Export`

   <div align="left"><figure><img src="/files/PZpHo4TS68I0qtCkFr2S" alt="" width="375"><figcaption></figcaption></figure></div>

{% endtab %}
{% endtabs %}

## SSH certificates

To authenticate with an SSH certificate, you need both a private key and a corresponding certificate. Typically, these are stored as two separate files on your file system. Termius stores certificates as part of the SSH key since they won't work without each other.

### Import SSH Certificate

{% tabs %}
{% tab title="Desktop" %}
To import an SSH certificate on the desktop:

1. Navigate to the `Keychain` and click `Certificate`

   <figure><img src="/files/NXay5pExyNDDBmbiZTZI" alt=""><figcaption></figcaption></figure>
2. Paste your private key and certificate into the corresponding fields

   <figure><img src="/files/FfxD1HwOXmRNlEaAvEDa" alt=""><figcaption></figcaption></figure>
3. Termius auto-saves them
   {% endtab %}

{% tab title="iOS" %}
To import an SSH certificate on iOS:

1. Tap the back arrow button `<` to open the **Vaults** screen, then open the `Keychain` screen

   <div align="left"><figure><img src="/files/TZ1pRGG18ka51wufGMeA" alt="" width="375"><figcaption></figcaption></figure></div>
2. Tap the `+` button and select `Paste Key` in the context menu

   <div align="left"><figure><img src="/files/Z4gYdgx82Wf9AHj3Qg3A" alt="" width="375"><figcaption></figcaption></figure></div>
3. Paste your private key and certificate into the corresponding fields

   <div align="left"><figure><img src="/files/09HLkObUGKBpggxjUvXH" alt="" width="375"><figcaption></figcaption></figure></div>
4. `Save` the key with the certificate
   {% endtab %}

{% tab title="Android" %}

#### Paste a certificate

1. Tap `< All vaults` to open the Vaults screen, then open the `Keychain` screen

   <div align="left"><figure><img src="/files/QtqCO3uroxSZ0Gjb6UB8" alt="" width="375"><figcaption></figcaption></figure></div>
2. Tap the `+` button and select `New certificate` in the context menu

   <div align="left"><figure><img src="/files/aBBUQ4KynppMcmJ5MZFP" alt="" width="375"><figcaption></figcaption></figure></div>
3. Select `Paste certificate`. Termius tries to paste a certificate automatically. If you have no certificate in your clipboard, copy and paste it into the corresponding field

   <div align="left"><figure><img src="/files/OX3TvEf9dfyd3X9SxwOA" alt="" width="375"><figcaption></figcaption></figure></div>
4. Once a certificate is added, tap `Add private key` , then select `Paste` . Termius tries to paste a private key automatically. If you have no private key in your clipboard, copy and paste it into the corresponding field

   <div align="left"><figure><img src="/files/eMavCZ9zz4jJoBCyfnCM" alt="" width="375"><figcaption></figcaption></figure></div>
5. `Save` the key with the certificate

   <div align="left"><figure><img src="/files/uFaV1vhW1Kw35J2Yw5YV" alt="" width="375"><figcaption></figcaption></figure></div>

#### Import from a file

1. Tap `< All vaults` to open the **Vaults** screen, then open the `Keychain` screen

   <div align="left"><figure><img src="/files/QtqCO3uroxSZ0Gjb6UB8" alt="" width="375"><figcaption></figcaption></figure></div>
2. Tap the `+` button and select `New certificate` in the context menu

   <div align="left"><figure><img src="/files/aBBUQ4KynppMcmJ5MZFP" alt="" width="375"><figcaption></figcaption></figure></div>
3. Select `Import certificate from file`

   <div align="left"><figure><img src="/files/M4K73jJdeWtyngYyPYuZ" alt="" width="375"><figcaption></figcaption></figure></div>
4. Select a certificate from the filesystem

   <div align="left"><figure><img src="/files/stclkjflKSs97wNcYIpb" alt="" width="375"><figcaption></figcaption></figure></div>
5. Once a certificate is added, tap `Add private key` , then select `Import from file`

   <div align="left"><figure><img src="/files/eMavCZ9zz4jJoBCyfnCM" alt="" width="375"><figcaption></figcaption></figure></div>
6. Select a key from the filesystem

   <div align="left"><figure><img src="/files/nuVI8kA2yo5a4AY0bMd4" alt="" width="375"><figcaption></figcaption></figure></div>
7. `Save` the key with the certificate

   <div align="left"><figure><img src="/files/uFaV1vhW1Kw35J2Yw5YV" alt="" width="375"><figcaption></figcaption></figure></div>

{% endtab %}
{% endtabs %}

### Assign an SSH certificate to a host

{% tabs %}
{% tab title="Desktop" %}
To assign an SSH certificate to a host on the desktop:

1. Navigate to the `Hosts` screen and open the `Host Details` for a selected host

   <figure><img src="/files/PbUmaypk9CHsInvReWTg" alt=""><figcaption></figcaption></figure>
2. In the Credentials section, click `+ SSH ID, Key, Certificate, FIDO2` and select `Certificate` as the authentication method

   <figure><img src="/files/Ck2XQ8CS5ldq6ZFwrapX" alt=""><figcaption></figcaption></figure>
3. Select one of the certificates that you previously saved

   <figure><img src="/files/Ujm2PVLbmC4wGY0lQOZA" alt=""><figcaption></figcaption></figure>
4. Termius auto-saves the changes
   {% endtab %}

{% tab title="iOS" %}
To assign SSH certificate to a host on iOS:

1. Navigate to the `Hosts` screen and open the `Host Details` screen for a selected host

   <div align="left"><figure><img src="/files/vSLQbpwlPb3fqkniBJKE" alt="" width="375"><figcaption></figcaption></figure></div>
2. In the Credentials section, tap `SSH ID, Key, Certificate, FIDO2`

   <div align="left"><figure><img src="/files/sOKTv8vO1DwtIL224ZaI" alt="" width="375"><figcaption></figcaption></figure></div>
3. Select one of the certificates that you previously saved

   <div align="left"><figure><img src="/files/pITHNT875Ue9V6jzuCSy" alt="" width="375"><figcaption></figcaption></figure></div>
4. `Save` the host changes
   {% endtab %}

{% tab title="Android" %}
To assign SSH certificate to a host on Android:

1. Navigate to the `Hosts` screen and open the `Host Details` screen for a selected host

   <div align="left"><figure><img src="/files/GkTIJ8bMqgMLcEDy6Nbz" alt="" width="375"><figcaption></figcaption></figure></div>
2. In the Credentials section, tap `SSH.id, Key, Certificate, FIDO2`

   <div align="left"><figure><img src="/files/reiHHLVyZDkPUeUZytnF" alt="" width="375"><figcaption></figcaption></figure></div>
3. Select one of the certificates that you previously saved<br>

   <div align="left"><figure><img src="/files/zadHcBVbQt0AvdXSbWmT" alt="" width="375"><figcaption></figcaption></figure></div>
4. `Save` the host changes
   {% endtab %}
   {% endtabs %}

## FIDO2 keys

Hardware keys provide one of the industry's most secure methods for SSH authentication. They're designed to make it impossible to extract private keys and protect them against compromise. Hardware keys can also offer additional security features, such as user-presence confirmation, providing an extra factor during authentication.

Termius simplifies the use of hardware keys for SSH connections, allowing you to generate non-resident FIDO2 keys within the app and syncing it across your devices.

#### **Prerequisites**

* You'll need a hardware security key that supports the FIDO2 protocol, such as [YubiKey](https://www.yubico.com/), [Solo](https://solokeys.com/), [OnlyKey](https://onlykey.io/), or [Google Titan](https://store.google.com/product/titan_security_key). Most other FIDO2-compatible security keys should also work with Termius
* FIDO2 requires OpenSSH 8.4 or higher to be installed on your server
* Hardware keys usually need to be set up before their first use. Some require a PIN code, while others use a biometric scanner and require you to enroll your fingerprint. Make sure you finish setting up your hardware key before following the steps below

### Generate a FIDO2 SSH key

{% tabs %}
{% tab title="Desktop" %}
To generate a FIDO2 key in Termius on the Desktop:

1. Navigate to the `Keychain` screen and click `FIDO2`

   <figure><img src="/files/dyNBafNfx94tBnISAPP6" alt=""><figcaption></figcaption></figure>
2. Plug in your hardware key and select it from the device list. Enter a PIN if required

   <figure><img src="/files/mokGG4CBP1b9KFJzgb2h" alt=""><figcaption></figcaption></figure>
3. Adjust optional configuration settings such as `Require User Presence` or `Require PIN code` and `Passphrase` for better security

   <figure><img src="/files/4n9ZjqQkYo12LecMbCzv" alt=""><figcaption></figcaption></figure>
4. Click `Generate`

#### Configuration Settings

`Require User Presence` - when enabled, Termius prompts you to touch the hardware key when logging in to a server. This option is used for 2FA to ensure authentication doesn't occur without your intent.

`Require PIN code` - when enabled, Termius prompts you to enter the hardware key's PIN code. This option is available only when your hardware key has a PIN code set.

`Passphrase` provides an additional layer of security. Termius will prompt you for the passphrase on every connection; toggle **Save passphrase** to avoid passphrase prompts.
{% endtab %}

{% tab title="iOS" %}
To generate a FIDO2 key on iOS:

1. Tap the back arrow button `<` to open the **Vaults** screen, then open the `Keychain` screen

   <div align="left"><figure><img src="/files/TZ1pRGG18ka51wufGMeA" alt="" width="375"><figcaption></figcaption></figure></div>
2. Tap the `+` button and select `New FIDO2 Key` in the context menu

   <div align="left"><figure><img src="/files/MjKwTBeNogUDBvkhv57H" alt="" width="375"><figcaption></figcaption></figure></div>
3. Specify a name for the key
4. For extra security, set a passphrase. Turn on `Save passphrase` to avoid passphrase prompts when you connect.
5. Tap `Generate`, then plug in the hardware key or hold it close to the top of your device if it supports NFC

   <div align="left"><figure><img src="/files/Qi2swmAwuyK6Rxx0bafe" alt="" width="375"><figcaption></figcaption></figure></div>
6. `Save` the FIDO2 key

   <div align="left"><figure><img src="/files/8Tz3Fou9tj0pNbpRoe4i" alt="" width="375"><figcaption></figcaption></figure></div>

{% endtab %}

{% tab title="Android" %}
To generate a FIDO2 key in Termius on Android:

1. Tap `< All vaults` to open the Vaults screen, then open the `Keychain` screen

   <div align="left"><figure><img src="/files/QtqCO3uroxSZ0Gjb6UB8" alt="" width="375"><figcaption></figcaption></figure></div>
2. Tap the `+` button and select `New FIDO2 key` in the context menu

   <div align="left"><figure><img src="/files/v1JjvGq7ffZQN59YnXhW" alt="" width="375"><figcaption></figcaption></figure></div>
3. Specify a name for the key
4. For extra security, set a passphrase. Turn on `Save passphrase` to avoid passphrase prompts when you connect.

   <div align="left"><figure><img src="/files/Hp50ZLbBkpYgAAmqDEhU" alt="" width="375"><figcaption></figcaption></figure></div>
5. Tap `Generate`, then plug in the hardware key or hold it close to the top of your device if it supports NFC

   <div align="left"><figure><img src="/files/SzsJPbdA3XuEm5Nv1S7c" alt="" width="375"><figcaption></figcaption></figure></div>
6. Set a PIN for your security key, if required
7. `Save` the FIDO2 key
   {% endtab %}
   {% endtabs %}

### Connect using FIDO2 keys

{% tabs %}
{% tab title="Desktop" %}
Once the FIDO2 key is generated, make sure to export its public part to the hosts that you want to access with this FIDO2 key, see [Export an SSH key to a server](#export-an-ssh-key-to-a-server).

To connect using a FIDO2 key:

1. Make sure the FIDO2 key is exported to the host
2. Plug in your hardware key
3. Double-click the host to connect
4. During the connection, Termius may prompt you to confirm your presence. Touch your hardware key to confirm

   <figure><img src="/files/y4oD5xW2UpixR8KOkB9C" alt=""><figcaption></figcaption></figure>

{% endtab %}

{% tab title="iOS" %}
Once the FIDO2 key is generated, make sure to export its public part to the hosts that you want to access with this FIDO2 key, see [Export an SSH key to a server](#export-an-ssh-key-to-a-server).

To connect using a FIDO2 key:

1. Make sure the FIDO2 key is exported to the host
2. Tap on the host to connect
3. Enter a PIN, then use NFC for authentication

<div><figure><img src="/files/BarsIfBJNnoEgUOv5vME" alt=""><figcaption></figcaption></figure> <figure><img src="/files/crEANDoSHELtMOOIbdtD" alt=""><figcaption></figcaption></figure></div>

4. During the connection, Termius may prompt you to confirm your presence. If you’re using a USB key, insert then touch it. If you have an NFC key, bring it near the top of your device
   {% endtab %}

{% tab title="Android" %}
Once the FIDO2 key is generated, make sure to export its public part to the hosts that you want to access with this FIDO2 key, see [Export an SSH key to a server](#export-an-ssh-key-to-a-server).

To connect using a FIDO2 key:

1. Make sure the FIDO2 key is exported to the host
2. Tap on the host to connect&#x20;
3. Enter a password or use USB/NFC for authentication

   <div align="left"><figure><img src="/files/dKnoPk5aLW98VpXAxxK2" alt="" width="375"><figcaption></figcaption></figure></div>
4. During the connection, Termius will prompt for your hardware key. If you’re using a USB key, insert then touch it. If you have an NFC key, bring it near the top of your device
   {% endtab %}
   {% endtabs %}

## Biometric keys

Biometric SSH Keys are securely stored on your device in a trusted execution environment and protected by biometric authentication. They never leave your device and remain inaccessible to others, even if someone gains unauthorized access to it.

{% hint style="info" %}
Since the biometric keys are stored in an isolated hardware subsystem, they are not synchronized, as it's impossible to get the contents of the private key parts.
{% endhint %}

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

#### Windows Hello <a href="#windows-hello" id="windows-hello"></a>

Termius for Windows lets you generate Biometric SSH keys within the Trusted Platform Module (TPM). TPM is an isolated hardware subsystem that generates and stores private keys. No one, including Termius or Windows, can export, copy, or access these keys directly.

For SSH connections using such a key, Termius requests TPM to sign the data using the private key. Whenever this happens, Windows prompts you to authorize access to a key stored in TPM with fingerprint authentication.

#### **Generate a biometric Key** <a href="#generate-biometric-key-1" id="generate-biometric-key-1"></a>

1. Navigate to the `Keychain` screen and click `Windows Hello`

   <figure><img src="/files/Xvu5vaSef5HUsYQ85RCM" alt=""><figcaption></figcaption></figure>
2. Specify the name of the key in the `Label` field

   <figure><img src="/files/bR9Qg56upZV2gJ49JXTD" alt=""><figcaption></figcaption></figure>
3. Click `Generate`

#### Export the biometric key to a host <a href="#export-biometric-key-to-host-1" id="export-biometric-key-to-host-1"></a>

1. Navigate to the `Keychain` screen and open the `Key Details` for a selected key

   <figure><img src="/files/rAIRbHyCK0BmeBkVsR7t" alt=""><figcaption></figcaption></figure>
2. Click `Export to host` , then click `Select Host` to choose the host you want the public key to be exported to

   <figure><img src="/files/wbjICTGEDEg56Av82XQx" alt=""><figcaption></figcaption></figure>
3. If your authorized keys are stored in a custom directory, update the folder path in the `SSH keys location` field and specify the authorized keys file using the `Filename` field
4. Click `Export and Attach`

   <figure><img src="/files/oNCkN5gzKco12HOxNvSM" alt=""><figcaption></figcaption></figure>

Once the key is exported to the host and is attached to the host in Termius, you will be able to use it for connections.

#### Connect using biometric keys

1. Navigate to the `Hosts` screen
2. Click the host where you set up biometric keys for authentication
3. Complete the biometric authentication
   {% endtab %}

{% tab title="macOS" %}

#### Apple Secure Enclave (Face ID/ Touch ID) <a href="#apple-secure-enclave-face-id-touch-id" id="apple-secure-enclave-face-id-touch-id"></a>

Termius on macOS, iOS, and iPadOS lets you generate Biometric SSH keys in the [Secure Enclave (SE)](https://support.apple.com/en-nz/guide/security/sec59b0b31ff/web). Secure Enclave is an isolated hardware subsystem that generates and stores private keys. No one, including Termius or OS, can directly export, copy, or access these keys.

For SSH connections using such a key, Termius requests SE to sign the data with the private key. Whenever this happens, the OS prompts you to authorize access to a key stored in SEP using Touch ID/Face ID.

#### **Generate a biometric key** <a href="#generate-biometric-key-2" id="generate-biometric-key-2"></a>

1. Navigate to the `Keychain` screen and click `Touch ID`

   <figure><img src="/files/7pkSfKbZN8PXF43AkNAt" alt=""><figcaption></figcaption></figure>
2. Specify the name of the key in the `Label` field

   <figure><img src="/files/zY7v1qhbbLPl5oxo5t8z" alt=""><figcaption></figcaption></figure>
3. Click `Generate`

#### Export biometric key to a host <a href="#export-biometric-key-to-host-2" id="export-biometric-key-to-host-2"></a>

1. Navigate to the `Keychain` screen and open the `Key Details` for a selected key

   <figure><img src="/files/3rkprDNSQ3UbGYJ4Cn9t" alt=""><figcaption></figcaption></figure>
2. Click `Export to host` , then click `Select Host` to choose the host you want the public key to be exported to

   <figure><img src="/files/0f5C7XlHz8fuD7yF6IYP" alt=""><figcaption></figcaption></figure>
3. If your authorized keys are stored in a custom directory, update the folder path in the `SSH keys location` field and specify the authorized keys file using the `Filename` field
4. Click `Export and Attach`

   <figure><img src="/files/mYFqPYrfUFyzO3ou2ftG" alt=""><figcaption></figcaption></figure>

Once the key is exported to the host and is linked with the host in Termius, you will be able to use it for connections.

#### Connect using biometric keys

1. Navigate to the `Hosts` screen
2. Click on the host where you set up biometric keys for authentication
3. Complete the biometric authentication

   <figure><img src="/files/ADmOpTY4POgkUHN0kUxH" alt=""><figcaption></figcaption></figure>

{% endtab %}

{% tab title="iOS/iPadOS" %}

#### Apple Secure Enclave (Face ID/ Touch ID) <a href="#apple-secure-enclave-face-id-touch-id" id="apple-secure-enclave-face-id-touch-id"></a>

Termius on macOS, iOS, and iPadOS lets you generate Biometric SSH keys in the [Secure Enclave (SE)](https://support.apple.com/en-nz/guide/security/sec59b0b31ff/web). Secure Enclave is an isolated hardware subsystem that generates and stores private keys. No one, including Termius or OS, can directly export, copy, or access these keys.

For SSH connections using such a key, Termius requests SE to sign the data with the private key. Whenever this happens, the OS prompts you to authorize access to a key stored in SEP using Touch ID/Face ID.

#### **Generate a biometric key** <a href="#generate-biometric-key-2" id="generate-biometric-key-2"></a>

1. Tap the back arrow button `<` to open the **Vaults** screen, then open the `Keychain` screen

   <div align="left"><figure><img src="/files/TZ1pRGG18ka51wufGMeA" alt="" width="375"><figcaption></figcaption></figure></div>
2. KeyTap the `+` button and select `New Face ID Key/New Touch ID Key` in the context menu

   <div align="left"><figure><img src="/files/SqwDEQkSrx3liO4ICPJg" alt="" width="375"><figcaption></figcaption></figure></div>
3. Specify the name of the key in the `Label` field

   <div align="left"><figure><img src="/files/HnYS8u5GeUWNsKDtppiv" alt="" width="375"><figcaption></figcaption></figure></div>
4. Save a biometric key

#### Export the biometric key to a host <a href="#export-biometric-key-to-host-2" id="export-biometric-key-to-host-2"></a>

1. When the biometric key is generated, tap the biometric key on the Keychain screen, then select the host you want the public key to be exported to

   <div><figure><img src="/files/JW06ay4zAnDxui5Oaf9V" alt=""><figcaption></figcaption></figure> <figure><img src="/files/t1ObVaCp8UtDfkcmsCuU" alt=""><figcaption></figcaption></figure></div>
2. If your authorized keys are stored in a custom directory, update the folder path in the `SSH keys location` field and specify the file containing the authorized keys
3. Tap `Export`

   <div align="left"><figure><img src="/files/PYhA5spwziuBF5WeydnJ" alt="" width="375"><figcaption></figcaption></figure></div>

Once the key is exported to the host and is linked with the host in Termius, you will be able to use it for connections.

#### Connect using biometric keys

1. Navigate to the `Hosts` screen
2. Tap on the host where you set up biometric keys for authentication
3. Complete the biometric authentication
   {% endtab %}

{% tab title="Android" %}

#### Android Keystore <a href="#android-keystore" id="android-keystore"></a>

Termius for Android lets you generate Biometric SSH keys in the Keystore. It's an isolated hardware subsystem that generates and stores private keys. No one, including Termius or Android, can export, copy, or access these private keys directly.

For SSH connections using such a key, Termius requests that Keystore sign the data with the private key. Whenever this happens, Android prompts you to authorize access to the key stored in the Keystore using biometric authentication.

#### Generate a biometric key <a href="#generate-biometric-key" id="generate-biometric-key"></a>

1. Tap `< All vaults` to open the Vaults screen, then open the `Keychain` screen

   <div align="left"><figure><img src="/files/QtqCO3uroxSZ0Gjb6UB8" alt="" width="375"><figcaption></figcaption></figure></div>
2. Tap the `+` button and select `New biometric key` in the context menu

   <div align="left"><figure><img src="/files/Kd26XEv8AW0kXDLeW6Qm" alt="" width="375"><figcaption></figcaption></figure></div>
3. Specify the `Name` of the key and tap `Generate`

   <div align="left"><figure><img src="/files/b2ndb21RZyY1nidU4eii" alt="" width="375"><figcaption></figcaption></figure></div>
4. Save a biometric key

   <div align="left"><figure><img src="/files/U6lpVLuDh7DvMQV1Fcjw" alt="" width="375"><figcaption></figcaption></figure></div>

#### Export the biometric key to a host <a href="#export-biometric-key-to-host" id="export-biometric-key-to-host"></a>

1. When the biometric key is generated, tap the biometric key on the Keychain screen

   <div align="left"><figure><img src="/files/jhdYo1vVPuW4XLl3qjDH" alt="" width="375"><figcaption></figcaption></figure></div>
2. Select `Export to…` , then select a host from the list

   <div><figure><img src="/files/kf4cdWduBdZ1WdeqLt1b" alt=""><figcaption></figcaption></figure> <figure><img src="/files/skvxeA6A5UIBam21KBdL" alt=""><figcaption></figcaption></figure></div>
3. If your authorized keys are stored in a custom directory, update the folder path in the `SSH keys location` field and specify the `File containing public keys`
4. Tap `Export`

   <div align="left"><figure><img src="/files/CumbWNaUgUxBPzOOevDo" alt="" width="375"><figcaption></figcaption></figure></div>

Once the key is exported to the host and is attached to the host in Termius, you will be able to use it for connections.

#### Connect using biometric keys

1. Navigate to the `Hosts` screen
2. Tap on the host where you set up biometric keys for authentication
3. Complete the biometric authentication
   {% endtab %}
   {% endtabs %}


# Identities

This page explains what identities are in Termius and how to use them to reuse credentials across Hosts and Groups.

## Overview

An **identity** in Termius stores a username, password, and key together. Link an identity to multiple Hosts or Groups to reuse the same credentials without duplication.

Identities are stored in vaults. Vaults protect your data with end-to-end encryption. For details, see [Encryption overview](/security/encryption-overview).

{% hint style="info" %}
Autocomplete can paste passwords from identities. When a password prompt appears in the terminal, Termius suggests the stored password.
{% endhint %}

## Create an identity

{% tabs %}
{% tab title="Desktop" %}
To create an identity on the desktop:

1. Navigate to the `Keychain` and select `New Identity` from the key drop-down

   <figure><img src="/files/jAQzowVrzSu9MtyGicCn" alt=""><figcaption></figcaption></figure>
2. Enter a name in the `Label` field
3. Enter the username in the `Username` field
4. Enter a password or select a `Key, Certificate, FIDO2 key`. Termius auto-saves the identity

   <figure><img src="/files/WMgSK5Nd0Dp9YOxwPvBE" alt=""><figcaption></figcaption></figure>

{% endtab %}

{% tab title="iOS" %}
To create an identity on iOS/Android:

1. Tap the back arrow button `<` to open the **Vaults** screen, then open the `Keychain` screen

   <div align="left"><figure><img src="/files/TZ1pRGG18ka51wufGMeA" alt="" width="375"><figcaption></figcaption></figure></div>
2. Tap the `+` button and select `New Identity` in the context menu

   <div align="left"><figure><img src="/files/r3BZHry1vS7mnAp72sIg" alt="" width="375"><figcaption></figcaption></figure></div>
3. Enter a name in the `Label` field
4. Enter the username in the `Username` field
5. Enter a password or select a `Key`

   <div align="left"><figure><img src="/files/AWTiFFuzHNR9KUBpsxTf" alt="" width="375"><figcaption></figcaption></figure></div>
6. `Save` the identity
   {% endtab %}

{% tab title="Android" %}
To create an identity on Android:

1. Tap `< All vaults` to open the **Vaults** screen, then open the `Keychain` screen

   <div align="left"><figure><img src="/files/QtqCO3uroxSZ0Gjb6UB8" alt="" width="375"><figcaption></figcaption></figure></div>
2. Tap the `+` button and select `New identity` in the context menu

   <div align="left"><figure><img src="/files/hmO6GU0uLOMz91YyNzfl" alt="" width="375"><figcaption></figcaption></figure></div>
3. Enter a name in the `Label` field
4. Enter the username in the `Username` field
5. Enter a password or select a `Key`

   <div align="left"><figure><img src="/files/jOitpjVH2i9TxVnEA1Ci" alt="" width="375"><figcaption></figcaption></figure></div>
6. `Save` the identity
   {% endtab %}
   {% endtabs %}

## Link an identity to a host

{% tabs %}
{% tab title="Desktop" %}
To link an identity to a host on the desktop:

1. Open the `Hosts` screen, right-click the host, and select `Edit Host Details`

   <figure><img src="/files/llXmxvKlXULOSK7Rnc9x" alt=""><figcaption></figcaption></figure>
2. In the Credentials section, click the `Username` field and select an identity

   <figure><img src="/files/JNb93ODDANcJmBoL9pt9" alt=""><figcaption></figcaption></figure>

{% endtab %}

{% tab title="iOS" %}
To link an identity to a host or group on iOS/Android:

1. Open the `Hosts` screen. Tap the host icon, then tap the edit icon

   <div align="left"><figure><img src="/files/ZuFexkFsovOx504vPg7F" alt="" width="375"><figcaption></figcaption></figure></div>
2. Tap the user icon on the right side of the `Username` field, then select an identity

   <div align="left"><figure><img src="/files/9DPaPilWZo5WNa2oajDN" alt="" width="375"><figcaption></figcaption></figure></div>

{% endtab %}

{% tab title="Android" %}
To link an identity to a host or group on Android:

1. Open the `Hosts` screen. Tap the host icon, then tap the edit icon

   <div align="left"><figure><img src="/files/Yv0xp2ou1ztQJts8dnkM" alt="" width="375"><figcaption></figcaption></figure></div>
2. Tap the user icon on the right side of the `Username` field, then select an identity

   <div align="left"><figure><img src="/files/toipMoXkBE09phYuSXln" alt="" width="375"><figcaption></figcaption></figure></div>

{% endtab %}
{% endtabs %}

{% hint style="info" %}
When working with multiple vaults, if you don't see your identity in the list, make sure the identity and the host are in the same vault.\
\
To choose the vault where your identities are stored, click `Credentials from` in the Credentials section, and select the vault.
{% endhint %}

## Use identities in Autocomplete

When Termius detects a password prompt in the terminal, it can suggest identities with stored passwords. This is useful for `sudo` prompts.

<figure><img src="/files/GQ2kp5FOotDeB0lDimto" alt=""><figcaption></figcaption></figure>


# Sync of keys and passwords

This page explains how keychain synchronization differs from other data sync and how to keep your credentials stored locally while syncing the rest of your Vault data.

By default, Termius encrypts your data and syncs it across your vaults. Termius provides password-manager-grade security standards, ensuring your data is encrypted before it leaves your device.

{% hint style="info" %}
Learn more about the Encryption in Termius, see the [Encryption overview](/security/encryption-overview).
{% endhint %}

At some companies, however, there are strict requirements for credentials to be kept locally and never synced, even in an encrypted format. Termius allows disabling the credentials synchronization to help with such cases.

<details>

<summary>What counts as credentials?</summary>

Usernames, passwords, SSH keys, and identities.

</details>

<details>

<summary>How to disable the credentials synchronization?</summary>

You can disable the synchronization of your credentials stored in the Personal vault in Termius. To do so, you need to:&#x20;

1. Open `Termius > Settings > Account`
2. Disable the `Sync keys and identities` toggle under the Synchronization section

</details>

<details>

<summary>Can I stop all the data from synchronizing?</summary>

If you have an account, then no, you can't.&#x20;

The `Sync keys and identities` toggle only controls the credentials part.&#x20;

The rest of the data (hosts, groups, snippets, etc.) stays encrypted and synced across your vaults.

{% hint style="info" %}
While the synchronization is not working in the free Starter plan, you might activate a Pro or Team trial at some point and the data will be synced then.
{% endhint %}

</details>

<details>

<summary>What will happen with my credentials if I log out?</summary>

If you log out, all the local data will be cleared.&#x20;

{% hint style="danger" %}
If synchronization of your credentials is disabled, they will also be cleared.&#x20;
{% endhint %}

</details>

<details>

<summary>What changes on my other devices when I disable the credentials sync?</summary>

Your other devices will still receive all other data, but not credentials.

This also means you will need to manually replicate the same set of credentials on all your devices.

</details>

<details>

<summary>When it makes sense to disable the credentials synchronization?</summary>

There are a number of reasons for that. It all depends on the environment you operate in. To name a few:

* Your security policy restricts credential sync
* You want each device to hold its own set of credentials. However, in that case, you can also utilize the biometric SSH keys that never leave your device anyway
* You don't need to sync credentials at all

</details>

<details>

<summary>I see it can be disabled for the Personal vault. What about the Team vault?</summary>

The `Sync keys and identities` toggle only controls the credentials in the Personal vault.&#x20;

When you specify the credentials for your hosts in the Team vault, you can choose whether to share them with the team or require team members to use credentials from their Personal vault.&#x20;

If you choose to store your credentials in Personal vault to keep usernames/passwords/keys only locally, each team member will need to disable credentials sync accordingly.&#x20;

</details>

{% hint style="danger" %}
**IMPORTANT**

When the `Sync keys and identities` toggle is disabled, the credentials data is not synced, and is only kept locally.&#x20;

If you log out and the data gets cleared, Termius won't be able to help with the data recovery.&#x20;
{% endhint %}

### Related concepts

To understand how synced data is organized, see [Learn about vaults](/getting-started/learn-about-vaults).

For encryption details, see [Encryption overview](/security/encryption-overview).


# Team vaults

This page explains how Termius organizes shared access to infrastructure using vaults. It covers vault structure design, managing members and permissions, and moving data between vaults.

## Overview

Team vaults are the top-level organizational unit in Termius. A vault stores data and controls which team members can access it.

Each vault is encrypted with a unique key. Members can access a vault only after the owner grants them permissions.

Termius includes one non-shared **Personal vault** per user, and one default **Team vault** shared with all team members. Additional **custom team vaults** can be created and shared with specific team members.

Members can have different permissions in different vaults:

* **Can edit:** Allows creating, updating, and deleting data within the vault; adding or removing members.
* **Can view:** Allows viewing data, initiating connections to hosts, and running snippets. Data cannot be modified.

## Set up your team

Invite your team members to start collaborating in Termius. After that Team vault is created automatically. Use it to share and manage data with your team.

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

1. Invite your team members. You have several options to do it. The team will be created automatically after that
   1. Click the chevron on the `Vault` tab and click `Team`

      <figure><img src="/files/9eVL2eCviFHLsQQO0WBL" alt=""><figcaption></figcaption></figure>
   2. Click the `vault selector` on the entity edit form and click `Team`

      <figure><img src="/files/aGb9lnbCHNV0pM2Jj3hV" alt=""><figcaption></figcaption></figure>
   3. Click `Plus button` on `Hosts screen` near your avatar and click `Invite team members`

      <figure><img src="/files/6m0Jh3SJzEN1QCwgEyQg" alt=""><figcaption></figcaption></figure>
2. Enter your team members' emails and click `Continue`

   <figure><img src="/files/GppqfIHeLOKqqn5O1wRy" alt=""><figcaption></figcaption></figure>
3. Wait for your members to accept their invitations and join the team
4. Grant them access to Team vault

   <figure><img src="/files/bkilYtGnOIC74QqyUwnz" alt=""><figcaption></figcaption></figure>
5. Your Team vault is ready. Follow the next steps to define the vault structure and add more vaults

If you already have data in your Personal vault, you can move it to your Team vault during Team vault setup or at any time afterward. See [Add data to vaults](#add-data-to-a-vault).

<figure><img src="/files/hORHXdZakKuafe2tS6fV" alt=""><figcaption></figcaption></figure>
{% endtab %}
{% endtabs %}

## Create vaults

### Define the vault structure

Whether you separate access by projects, clients, environments, departments, or other criteria, vaults can be configured for that use case.

A few examples of how different teams organize their data using vaults:

{% tabs %}
{% tab title="Small startup" %}

<figure><img src="/files/IzIpODmocHdAGJ0dMlzh" alt=""><figcaption></figcaption></figure>

The team structure is flat, with a small number of members and a high level of trust.

* **Vaults:** A single Team vault shared with all members
* **Groups:** Prod, Staging, and Development
  {% endtab %}

{% tab title="Consulting company" %}

<figure><img src="/files/rE9EEYMArMMq4m2eNiyV" alt=""><figcaption></figcaption></figure>

The team structure is client-based, where small teams or individuals work with several clients.

* **Vaults:** Each client has a separate vault. Team members are added and removed from vaults depending on the projects and clients they work with
* **Groups** are used to separate environments within the client's vault
  {% endtab %}

{% tab title="Mid-size Business" %}

<figure><img src="/files/XtuvBMkqPHCIClYbU2bE" alt=""><figcaption></figcaption></figure>

The team structure is functional-based, with dedicated DevOps, Developers, and QA teams.

* **Vaults**: Vaults separate **Production**, **Development**, and **Staging** environments. DevOps has access to all three. Developers can access Staging and Dev, while QA can only access Staging
* **Groups**: Within each vault, there are groups for different resource types, such as **Database Servers (DB)**, **Web Servers**, and **Cache**
  {% endtab %}

{% tab title="Enterprise" %}

<figure><img src="/files/I2H1E8RbXLMGyR4ucOfh" alt=""><figcaption></figcaption></figure>

The team structure is functional and location-based, with infrastructure distributed across multiple regions. Access is organized by region or data center.

* **Vaults**: Organized by region and team. For example, **US-East-DevOps**, **US-East-Support**, **US-West-DevOps**, **EU-Central-DevOps**
* Each team structures groups to match their operational context. A data center team, for example, might organize by physical location: building, floor, room, and rack
  {% endtab %}
  {% endtabs %}

### Add vault

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

1. To create a new vault, you have several options:
   1. Open `Settings` > `Vaults` > `Add vault`

      <figure><img src="/files/548A7yjGjKJE7unEP7bz" alt=""><figcaption></figcaption></figure>
   2. Click the chevron on the `Vault` tab and click `Add vault`

      <figure><img src="/files/mOPMW2uKFh9byLIujUbi" alt=""><figcaption></figcaption></figure>
   3. Click the `Vault selector` on the entity edit form and click `Add vault`

      <figure><img src="/files/PcCSu7QodMV2DyZZ8m11" alt=""><figcaption></figcaption></figure>
2. Name it according to your vault structure

   <figure><img src="/files/3AwSU06fpTGOMsnkkAEJ" alt=""><figcaption></figcaption></figure>
3. Add members to this vault and set their roles

   <figure><img src="/files/MDuUmqSG41aIfX11cv75" alt=""><figcaption></figcaption></figure>
4. Click `Save changes`
   {% endtab %}
   {% endtabs %}

### Add data to vaults

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

1. To add data to a vault, you have several options:
   1. Open entity details and click the `vault selector` to choose the vault to move it to

      <figure><img src="/files/e12avvjRAn3jnCczlE4C" alt=""><figcaption></figcaption></figure>
   2. Right-click on an entity you want to move or copy, then select `Move to` or `Copy to` and select the destination vault

      <figure><img src="/files/Vkc6kunXQO3LdBdW1KwP" alt=""><figcaption></figcaption></figure>
2. Choose where you want to store credentials for hosts and groups

   <figure><img src="/files/1we6UIB9DSAVkxjZaWJ4" alt=""><figcaption></figcaption></figure>

* **Personal vault** — the host or group will be added to a vault **without credentials**. Each member will need to use their own set of credentials saved in their Personal vault
* **Selected vault —** the host will be added to a vault **with credentials**. Each member will connect using the same **shared credentials**. Once the entity is saved to this vault, it is instantly accessible by all team members with access

3. Once an entity is moved or copied, it is immediately available to all members of the selected vault

If the selected entities have linked entities, choose how to handle them:

* **Copy** — all linked entities are copied to the selected vault and also remain in the original vault
* **Move** — all linked entities are moved to the selected vault, removed from the original vault, and unlinked from all other entities in the original vault

<figure><img src="/files/N8205IDjOwFdE58eANMw" alt=""><figcaption></figcaption></figure>
{% endtab %}
{% endtabs %}

## Edit vaults

### Change vault name

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

1. Open `Settings` > `Vaults` , or click the chevron on the `Vault` tab and click `Manage vaults`

   <figure><img src="/files/6MCCYEE4TnsA1MXmcJey" alt=""><figcaption></figcaption></figure>
2. Select a `vault` you want to edit. Personal and Team vaults have default names that can't be changed

   <figure><img src="/files/3EH96TwG4fGUsULihbxf" alt=""><figcaption></figcaption></figure>
3. Click on the vault name and change it
4. Click `Save changes`
   {% endtab %}
   {% endtabs %}

### Add members

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

1. Open `Settings` > `Vaults` , or click the chevron on the `Vault` tab and click `Manage vaults`

   <figure><img src="/files/6MCCYEE4TnsA1MXmcJey" alt=""><figcaption></figcaption></figure>
2. Select a `vault` you want to edit

   <figure><img src="/files/3EH96TwG4fGUsULihbxf" alt=""><figcaption></figcaption></figure>
3. Add team members to this vault from your team and set their roles

   <figure><img src="/files/YDHtLfvtyHCjJIH12Z1C" alt=""><figcaption></figcaption></figure>
4. Click `Save changes`
   {% endtab %}
   {% endtabs %}

### Change member permissions

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

1. Open `Settings` > `Vaults` , or click the chevron on the `Vault` tab and click `Manage vaults`

   <figure><img src="/files/6MCCYEE4TnsA1MXmcJey" alt=""><figcaption></figcaption></figure>
2. Select a `vault` you want to edit

   <figure><img src="/files/3EH96TwG4fGUsULihbxf" alt=""><figcaption></figcaption></figure>
3. Click the `permission picker` for the member you want to edit:

   1. **Can edit** allows the member to edit entities in the vault
   2. **Can view** allows the member to connect and run snippets, but not edit them
   3. **Remove access** allows removing a member from the vault

   <figure><img src="/files/0sUP8sYFkTXxzECcVDWW" alt=""><figcaption></figcaption></figure>
4. Click `Save changes`
   {% endtab %}
   {% endtabs %}

### Remove member from vault

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

1. Open `Settings` > `Vaults` , or click the chevron on the `Vault` tab and click `Manage vaults`

   <figure><img src="/files/6MCCYEE4TnsA1MXmcJey" alt=""><figcaption></figcaption></figure>
2. Select a `vault` you want to edit

   <figure><img src="/files/3EH96TwG4fGUsULihbxf" alt=""><figcaption></figcaption></figure>
3. Click the `permission picker` for the member you want to remove and select `remove access`

   <figure><img src="/files/tviDHFqUeKaib2T0wjMf" alt=""><figcaption></figcaption></figure>
4. Save changes
   {% endtab %}
   {% endtabs %}

## Security

Vaults are the most secure way to share sensitive information across the team. Each vault is encrypted with a unique key, so only you and your team members with access to that vault can see and use its data.

New members cannot access a vault until the owner grants access and sets their permissions.

For more information about encryption and security, see [Encryption overview](/security/encryption-overview).


# Team session logs

This page explains how session logs work for teams in Termius. It covers accessing and reviewing other team members' logs, configuring log settings, and using bookmarks and comments.

## Overview

<figure><img src="/files/LIg2VQP21Gja4RroFE9u" alt=""><figcaption></figcaption></figure>

Session logs record terminal activity for each connection to a host. Logs are stored and synced in vaults, making them accessible to vault members.

Termius stores the most recent session log for each host for each team member. This gives the team a view of who last connected to a host and what occurred during that session.

## Team access

Team members can see all logs for hosts in the vaults they have access to. By default, Termius stores the most recent session log for each host for each team member.

* **Editors** can view, add, and remove bookmarks and comments.
* **Viewers** can only view session logs, see bookmarks, and read comments.

Session logs are **read-only** and cannot be modified, moved between vaults, or deleted.

## Bookmarks

Bookmarks let you save selected session logs for as long as you need, protecting them from overwriting.

The comment section lets you describe what this session was about: *What were you trying to fix? Why did you roll back? What did you discover along the way? How to troubleshoot a particular issue?*

{% tabs %}
{% tab title="Desktop" %}
To bookmark the session log:

1. Open `Vault` tab > `Logs`&#x20;

   <figure><img src="/files/mKjkoZItB7akvenGLXfu" alt=""><figcaption></figcaption></figure>
2. Find the session log you want to bookmark and click `Bookmark` icon

   <figure><img src="/files/DbdCctBgLALcdS8Dc26m" alt=""><figcaption></figcaption></figure>
3. Write a comment about this session log (optional)<br>

   <figure><img src="/files/grJ0mo4CWxsydylX6b6k" alt=""><figcaption></figcaption></figure>
4. Click outside or `Enter` . The session log and the comment will be bookmarked and saved
   {% endtab %}
   {% endtabs %}

## Settings

Session logging can be enabled or disabled per vault.

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

1. Open `Settings` > `Logs`&#x20;
2. Click the `Enabled/Disabled` selector for the vault whose session logs you want to enable or disable

   <figure><img src="/files/zXc2aH7cz8H98nEIRlvl" alt=""><figcaption></figcaption></figure>
3. Confirm disabling logs

   <figure><img src="/files/qyGiBQdJBhq1yNie2Nx8" alt=""><figcaption></figcaption></figure>

{% hint style="danger" %}
Once you disable logging for a vault, existing logs will be permanently deleted from this vault.
{% endhint %}
{% endtab %}
{% endtabs %}


# What is SSH ID

This page explains how SSH ID works in Termius, how it manages device-bound SSH passkeys, and how to use it to securely connect to servers without sharing private keys.

<figure><img src="/files/ixLzdyayWl3lGrPEqGZP" alt=""><figcaption></figcaption></figure>

SSH ID is an easy-to-use system for managing SSH passkeys. It generates a device-bound key on each of your devices, including FIDO2 and biometric keys, and keeps all public keys synced and available at a single URL: `https://sshid.io/<your_handle>`. Anyone can use this URL to fetch your **public keys** and provision them on a host.

## How it works

When setting up an SSH ID, you create a unique public handle (@username) that lets anyone fetch all your public keys at once.

### **On your device**

* Termius generates a unique set of `device-bound` SSH keys (passkeys)
* The set includes ECDSA-SK (hardware key protected with biometrics), ECDSA, ED25519, and RSA (for legacy devices)
* Each key is signed by your unique certificate and can be verified

{% hint style="info" %}
The private parts of the keys generated with SSH ID never leave your device.
{% endhint %}

{% hint style="info" %}
Public parts are pushed to the server and are `publicly` available via your handle, along with certificates at [sshid.io/\<your\_handle>](https://sshid.io/%3Cyour_handle%3E).
{% endhint %}

### **On your servers**

Once the SSH ID is set up, you can add all your public keys from all devices using one single command.

`curl https://sshid.io/<your_handle> >> ~/.ssh/authorized_keys`

This allows you to connect from all your devices using device-bound keys.

***

Proceed to [Setup & usage](/ssh-id-passkeys-for-ssh/setup-and-usage) to enable SSH ID for your Termius account.

See [SSH ID Security](/ssh-id-passkeys-for-ssh/ssh-id-security) for the security model and verification details.

***

## FAQ

<details>

<summary>Why do I need a Termius account to use SSH ID?</summary>

An account is required because SSH ID relies on your Termius account to sync public keys securely across all your devices. Without it, SSH ID can't make your identity available from multiple devices.

Your private keys never leave your device, only the latest public keys are synchronized.

</details>

<details>

<summary>Why the public keys are accessible online publicly?</summary>

Only the `public keys` are accessible online via the handle that you specified during the SSH ID setup.

The corresponding private keys never leave devices where they were generated.

</details>

<details>

<summary>Can I remove a particular key from the SSH ID profile?</summary>

The keys in your profile are device-bound. New keys are generated every time you login with your Termius account on a new device.

To remove particular keys, you need to log out from your account on the corresponding devices.

</details>

<details>

<summary>How can I regenerate the keys generated for SSH ID?</summary>

To regenerate the keys, you need to log out and then log back in on your devices.

The new public keys should be then provisioned to the affected servers.

</details>


# Setup and usage

This page describes how to enable SSH ID for your Termius account and how to use it to connect to your hosts.

## Create SSH ID

{% tabs %}
{% tab title="Desktop" %}
To create SSH ID on desktop:

1. Navigate to `Termius > Settings > SSH ID`
2. Click `Set up SSH ID` to start

   <figure><img src="/files/pN4pH01u7R4dH2BpsN1H" alt=""><figcaption></figcaption></figure>
3. Choose your unique username, then wait for Termius to generate passkeys on this device

   <figure><img src="/files/MmHMafwkVZZseNBidQx1" alt=""><figcaption></figcaption></figure>
4. Open Termius on your other devices to generate passkeys there. We recommend using at least two devices

   <figure><img src="/files/pHjUAUewRgUKLdaRZjzc" alt=""><figcaption></figcaption></figure>
5. Your SSH ID is ready. Next, [connect using SSH ID](#connect-using-ssh-id)

   <figure><img src="/files/A1U67bXEBBRIewudpBTK" alt=""><figcaption></figcaption></figure>

{% endtab %}

{% tab title="iOS" %}
To create SSH ID on iOS:

1. Open `Profile`, then tap `SSH ID`

   <div align="left"><figure><img src="/files/OXekY5mDnB6P56WB6zuE" alt="" width="375"><figcaption></figcaption></figure></div>
2. Tap `Set up your SSH ID` to start

   <div align="left"><figure><img src="/files/GZml8mh9AMcIAUAvQ7VE" alt="" width="375"><figcaption></figcaption></figure></div>
3. Choose your unique username, then wait for Termius to generate passkeys on this device

   <div align="left"><figure><img src="/files/SJA0cj2nsCzqp9z7xAaA" alt="" width="375"><figcaption></figcaption></figure></div>
4. Open Termius on your other devices to generate passkeys there

   <div align="left"><figure><img src="/files/pHjUAUewRgUKLdaRZjzc" alt="" width="563"><figcaption></figcaption></figure></div>
5. Choose whether to use biometric passkeys by default

   <div align="left"><figure><img src="/files/K3JUedMpT6diKZJHm1Ro" alt="" width="375"><figcaption></figcaption></figure></div>
6. Your SSH ID is ready. Next, [connect using SSH ID](#connect-using-ssh-id)

   <div align="left"><figure><img src="/files/TpMW0kjd7lL4NGsBK4C3" alt="" width="375"><figcaption></figcaption></figure></div>

{% endtab %}

{% tab title="Android" %}
To create SSH ID on Android:

1. Open `Settings`, then tap `Account settings` > `SSH ID`

   <div align="left"><figure><img src="/files/o0oJhGkSjwoFCpQvBPK8" alt="" width="375"><figcaption></figcaption></figure></div>
2. Tap `Set up your SSH ID` to start

   <div align="left"><figure><img src="/files/BXZQcU91LCCrj30KDqkz" alt="" width="375"><figcaption></figcaption></figure></div>
3. Choose your unique username, then wait for Termius to generate passkeys on this device

   <div align="left"><figure><img src="/files/cxUNc3ZIhm2gUuHwW785" alt="" width="375"><figcaption></figcaption></figure></div>
4. Open Termius on your other devices to generate passkeys there

   <div align="left"><figure><img src="/files/DWkGkt63Fssf7vb4eVk4" alt="" width="375"><figcaption></figcaption></figure></div>
5. Choose whether to use biometric passkeys by default

   <div align="left"><figure><img src="/files/IE0VnSqxZMWCzSuUypw0" alt="" width="375"><figcaption></figcaption></figure></div>
6. Your SSH ID is ready. Next, [connect using SSH ID](#connect-using-ssh-id)

   <div align="left"><figure><img src="/files/b6Q1EPQLLHF8tyutsmJ5" alt="" width="375"><figcaption></figcaption></figure></div>

{% endtab %}
{% endtabs %}

### Add a FIDO2 key to SSH ID

On devices that support biometric authentication, such as Face ID, Touch ID, or Windows Hello, an ECDSA-SK passkey is generated and stored in the device’s secure enclave by default.

For devices that do not support built-in biometric authentication, you can add FIDO2 security keys, such as YubiKey or Google Titan, to enable presence-based authentication.

To add a FIDO2 key to SSH ID:

1. Navigate to `Termius > Settings > SSH ID`
2. Click `Add FIDO2 Key`

   <figure><img src="/files/r6fDSmfax19C3nOTHsVL" alt=""><figcaption></figcaption></figure>
3. Enter your encryption password

   <figure><img src="/files/gxY3L8hx6z8g85rl3CGf" alt=""><figcaption></figcaption></figure>
4. Plug in your hardware key and enter a PIN if required

   <figure><img src="/files/Kge9LWkmpaNJJFmGP19B" alt=""><figcaption></figcaption></figure>
5. Enter a label and confirm your presence by tapping the key

   <figure><img src="/files/P70OEfjsoLRX9Ffho9yq" alt=""><figcaption></figcaption></figure>
6. The FIDO2 key is added to your SSH ID

   <figure><img src="/files/2hssFhE2hGivtSX3Cg31" alt=""><figcaption></figcaption></figure>
7. Add the corresponding public key to `~/.ssh/authorized_keys` on your servers. Once added, you can use the FIDO2 key to connect from any logged-in device. Learn more in [connect using SSH ID](#connect-using-ssh-id)

### Add a new device to SSH ID

<figure><img src="/files/pHjUAUewRgUKLdaRZjzc" alt=""><figcaption></figcaption></figure>

Each device logged in to your Termius account is automatically added to your SSH ID with its own device-bound SSH keys. These keys are generated each time you log in.

To use that device for SSH connections, add the corresponding public key to `~/.ssh/authorized_keys` on your servers. Learn more in [connect using SSH ID](#connect-using-ssh-id).

## Connect using SSH ID

To connect using SSH ID, first provision your devices' public keys on your servers, then assign SSH ID to your hosts.

### Provision your devices' public keys on your servers

There are several ways to copy the public keys from your SSH ID to your servers.

{% tabs %}
{% tab title="Shell command" %}
To copy the public keys to a server with a shell command:

1. Connect to your server using the currently set up authentication method
2. Run the following command in the terminal:\
   `curl -fs https://sshid.io/<your handle> >> ~/.ssh/authorized_keys`

   <figure><img src="/files/wnXKhhcKjlG2EQdn4tsx" alt=""><figcaption></figcaption></figure>

{% hint style="info" %}
If you want to use a non-default passkey type, use `https://sshid.io/<your handle>/<key_type>`, for example `https://sshid.io/<your handle>/RSA`.
{% endhint %}
{% endtab %}

{% tab title="\~/.ssh/authorized\_keys" %}
To copy the public keys to a server manually:

1. Go to `https://sshid.io/<your_handle>`

   <figure><img src="/files/80DjCwKiwbSnRzNxNR7h" alt=""><figcaption></figcaption></figure>
2. Select `~/.ssh/authorized_keys`

   <figure><img src="/files/MMqfhhD2btN6U1Pap1RC" alt=""><figcaption></figcaption></figure>
3. Select a passkey type if you want to use a non-default one

   <figure><img src="/files/REQNZcnIqiwbFKXQH4fg" alt=""><figcaption></figcaption></figure>
4. Copy all your public keys

   <figure><img src="/files/TJONCLa420o0ndMnsZsF" alt=""><figcaption></figcaption></figure>
5. Connect to your server using the already set authentication method
6. Paste the copied public keys into `~/.ssh/authorized_keys`
   {% endtab %}
   {% endtabs %}

### Assign SSH ID to a host and connect

{% tabs %}
{% tab title="Desktop" %}
To assign SSH ID to your hosts on desktop:

1. Open the host details for the host you want to connect to with SSH ID

   <figure><img src="/files/wum1TbueCE6AdjgA8iFh" alt=""><figcaption></figcaption></figure>
2. In the `Credentials` section, enter the username first. If no username is set, your SSH ID handle is used as the default username

   <figure><img src="/files/qcs6sxf5iKktr0IgkDDt" alt=""><figcaption></figcaption></figure>
3. Click `+ SSH ID, Key, Certificate, FIDO2`. If the **SSH ID** option is not available, make sure your credentials are in the **Personal vault**

   <figure><img src="/files/PJLxwGPiCuuo8569ihZO" alt=""><figcaption></figcaption></figure>
4. Choose `SSH ID` as the authentication method

   <figure><img src="/files/uHtEavGUuDs5Rahzlmbq" alt=""><figcaption></figcaption></figure>
5. Connect to the host from any signed-in device. SSH ID automatically selects the right key available on that device

   <figure><img src="/files/H1sOGfiEeHLg5CmWJkKg" alt=""><figcaption></figcaption></figure>

{% endtab %}

{% tab title="iOS" %}
To assign SSH ID to your hosts on iOS:

1. Long press the host you want to connect to with SSH ID, then tap `Edit`

   <div align="left"><figure><img src="/files/qfWlCwBqf5X0v108w8Hl" alt="" width="375"><figcaption></figcaption></figure></div>
2. In the `Credentials` section, enter the username. If no username is set, your SSH ID handle is used as the default username

   <div align="left"><figure><img src="/files/NkgYDXDyjL23UEohz6h6" alt="" width="375"><figcaption></figcaption></figure></div>
3. Tap `SSH ID, Key, Certificate, FIDO2`, then choose `SSH ID` as the authentication method

   <div><figure><img src="/files/BQsl74cnkRIQQHCDgG47" alt=""><figcaption></figcaption></figure> <figure><img src="/files/xwnipTFjbCjplXpzl1nR" alt=""><figcaption></figcaption></figure></div>
4. Tap `Save`
5. Connect to the host. SSH ID automatically selects the right key available on your device

   <div align="left"><figure><img src="/files/GZPZmarmz8Oz65rbYyyI" alt="" width="375"><figcaption></figcaption></figure></div>

{% endtab %}

{% tab title="Android" %}
To assign SSH ID to your hosts on Android:

1. Tap the host icon you want to connect to with SSH ID, then tap `Edit`

   <div align="left"><figure><img src="/files/GkTIJ8bMqgMLcEDy6Nbz" alt="" width="375"><figcaption></figcaption></figure></div>
2. In the `Credentials` section, enter the username first. If no username is set, your SSH ID handle is used as the default username

   <div align="left"><figure><img src="/files/OT9xmKIs1o1dxbJJBdXQ" alt="" width="375"><figcaption></figcaption></figure></div>
3. Tap `SSH ID, Key, Certificate, FIDO2`, then choose `SSH ID` as the authentication method

   <div align="left"><figure><img src="/files/uFjROtplj9Rt0OnTkE1v" alt=""><figcaption></figcaption></figure> <figure><img src="/files/A5OeDSoYp5MCRRWeMStO" alt=""><figcaption></figcaption></figure></div>
4. Tap `Save`
5. Connect to the host. SSH ID automatically selects the right key available on your device

   <div align="left"><figure><img src="/files/Bhz5kSFOKfgIRIoxPz3x" alt="" width="375"><figcaption></figcaption></figure></div>

{% endtab %}
{% endtabs %}

## Remove SSH keys from SSH ID

Each device logged in to your Termius account is added to your SSH ID and has its own device-bound SSH keys. These keys remain valid while the device stays logged in. If you want to rotate a key, log out and then log back in on that device.

### To remove an SSH key from SSH ID

1. Log out of your Termius account on the relevant device
2. Update `~/.ssh/authorized_keys` on your servers

### To remove a FIDO2 key from SSH ID

<figure><img src="/files/xqOryZtQVQyQYi0VSbm6" alt=""><figcaption></figcaption></figure>

1. Navigate to `Termius > Settings > SSH ID`
2. Click the three-dot menu next to the FIDO2 key you want to remove, then select `Remove`
3. Update `~/.ssh/authorized_keys` on your servers

## Delete SSH ID

When you delete your SSH ID, all the device-bound SSH keys associated with this SSH ID handle will be removed, so you no longer will be able to use them to connect to the hosts.&#x20;

{% hint style="danger" %}
Before you delete the SSH ID, ensure you have an alternative authentication method set up for your hosts where the SSH ID was used.&#x20;
{% endhint %}

To delete your SSH ID:

1. Navigate to `Settings` → `SSH ID`
2. Click the `three-dots` menu next to your SSH ID handle, then click `Delete SSH ID`&#x20;

   <figure><img src="/files/MIj3nIxhusy6rrES1UsR" alt=""><figcaption></figcaption></figure>
3. Enter your encryption password to confirm the SSH ID deletion

   <figure><img src="/files/1cMxl6AdZiaD3AtDDgQf" alt=""><figcaption></figcaption></figure>

{% hint style="warning" %}
Don't forget to update the `~/.ssh/authorized_keys` files on your servers to clean it up from the no longer usable public keys associated with your previous SSH ID.&#x20;
{% endhint %}


# SSH ID Security

This page explains the security model of SSH ID, including how device-bound passkeys, biometric protection, and certificate verification ensure secure access to your servers.

<figure><img src="/files/VngV8D6T5R5lwiz2WM7z" alt=""><figcaption></figcaption></figure>

SSH ID is an easy-to-use system for managing SSH passkeys. It generates and aggregates `device-bound` passkeys, including FIDO2 and biometric keys, so you can connect to servers without copying or sharing private keys.

## Device-bound

SSH ID passkeys are private keys generated and stored on your computer or phone. They never leave your device and cannot be copied or exported.&#x20;

Only public keys are synced to your vault and published under your specified handle for you to easier update your `~/.ssh/authorized_keys` files.

## Biometric-protected

SSH ID works with Face ID, Touch ID, Windows Hello, and FIDO2. When using ECDSA-SK, every connection requires your biometric or presence confirmation.&#x20;

{% hint style="warning" %}

### Use a strong system password on your device

Across all major modern operating systems, biometrics are a convenience layer, not a replacement for the master cryptographic key. Because of how hardware-level encryption works, none of these platforms allow you to disable the PIN, password, or pattern fallback. If a biometric sensor fails, gets damaged, or the device reboots, you must have a fallback to decrypt the data.

* **On Desktop:** The default system login password is already alphanumeric, so your fallback is as secure as you choose to make it
* **On Mobile:** It is highly recommended to configure a custom alphanumeric password rather than a standard 4-digit or 6-digit PIN to maximize fallback security
  {% endhint %}

## Every passkey can be verified

Every SSH ID user has a unique CA key pair created by Termius on the device.

Every passkey generated for SSH ID is signed using your CA private key on the device.&#x20;

Your SSH ID public page contains the CA public key as well as certificates for each key.&#x20;

You can use this information to verify that each and every public key in the SSH ID was generated by Termius.

## Verification procedure

The verification process relies exclusively on the standard OpenSSH tooling (`ssh-keygen`).

### Prerequisites

* `user_cert.pub` - the user's public certificate
* `key.pub` - a device public key&#x20;
* `key_cert.pub` - the certificate for that key

In future Termius versions, the above info can be obtained from `https://sshid.io/<username>` or the SSH ID screen in the app.

### Verification

1. Verify user identity
   1. Run `ssh-keygen -lvf user_cert.pub`&#x20;
   2. Compare the resulting SHA256 fingerprint or the `Randomart` visualization against the values displayed on the SSH.id page or in the Termius app
2. Verify the key was signed by the user
   1. Run `ssh-keygen -L -f key_cert.pub` to extract the signer fingerprint from the key certificate
   2. Locate the line: `Signing CA: <algorithm> SHA256:<fingerprint>`
   3. Obtain the fingerprint of the user certificate `ssh-keygen -lf user_cert.pub`
   4. Compare SHA256 fingerprints. They should be identical
3. Verify that the Certificate belongs to the key
   1. Run `ssh-keygen -lf key.pub`&#x20;
   2. Run `ssh-keygen -lf key_cert.pub`
   3. Compare SHA256 fingerprints. They should be identical

These three steps confirm that the certificate was issued for that exact public key.


# Integration with AWS

This page explains how to automatically import your servers into Termius and keep them up to date as your infrastructure changes.

{% hint style="info" icon="sparkle" %}
**Who can use this feature:**

* **Subscriptions:** Pro, Team, Business, and Enterprise
* **Set up:** macOS, Windows and Linux.&#x20;
* **Imported hosts available:** macOS, Windows, Linux, iOS and Android
  {% endhint %}

## Overview

This integration securely imports EC2 and Lightsail servers into a group in Termius that automatically updates to reflect the changes in your AWS environment. When you add or remove a server in AWS, or change a server's details, the host entry in Termius will appear, disappear, or update accordingly.

## Configure AWS access

<figure><img src="/files/p6MRlvTsv1hPKl3Bzgc9" alt=""><figcaption></figcaption></figure>

To connect Termius to your AWS cloud, you need an **IAM** user with programmatic access and read-only permissions, the **access key ID** and **secret access key** generated for that user. Termius will use it to access information about your AWS environment.

The **access keys** you enter in Termius are stored locally and are not synced across devices.

{% hint style="success" icon="circle-info" %}
For each server, Termius imports the **DNS name** (as label), **private or public IP address** (as address), and **tags.**
{% endhint %}

### Add an IAM user in AWS

1. Sign in to the [AWS Management Console](https://console.aws.amazon.com/) and open the [IAM console](https://console.aws.amazon.com/iam/)
2. In the navigation pane, select `IAM users`&#x20;

   <figure><img src="/files/uzg21hbWTihbewQuEdQ3" alt=""><figcaption></figcaption></figure>
3. Click `Create user` in the top right corner

   <figure><img src="/files/7FDLBRK5S8mhgnH7gfVC" alt=""><figcaption></figcaption></figure>
4. Provide a user name and click `Next`&#x20;

   <figure><img src="/files/S5dqJZvOZzwdBF1n3oEr" alt=""><figcaption></figcaption></figure>
5. On the **Set permissions** page, select `Attach policies directly`&#x20;

   <figure><img src="/files/M69m9cVAV3oAFDq5ATRF" alt=""><figcaption></figcaption></figure>
6. In the search box, type `ReadOnlyAccess` and select the `ReadOnlyAccess` (AWS managed - job function) policy from the results. Click `Next`&#x20;

   <figure><img src="/files/0NBlFDAFgBhUTbCjYcSN" alt=""><figcaption></figcaption></figure>
7. Click `Create user`

   <figure><img src="/files/FfoaHrtqLeo9Xgy8WHLY" alt=""><figcaption></figcaption></figure>

### Generate an access key

1. In the `IAM Users` list, select the user you've just created

   <figure><img src="/files/wB1OhXmgtHIDz4ksaqAI" alt=""><figcaption></figcaption></figure>
2. Open the `Security credentials` tab

   <figure><img src="/files/LTe0WCXtuiTxTtvLhZFi" alt=""><figcaption></figcaption></figure>
3. Scroll to the **Access keys** section and click `Create access key`&#x20;

   <figure><img src="/files/ZUfXPF316FcmEfbqbXZx" alt=""><figcaption></figcaption></figure>
4. Choose `Other` and click `Next`&#x20;

   <figure><img src="/files/eELVUTC4ZAPxOpwwvHxU" alt=""><figcaption></figcaption></figure>
5. Optionally add a description tag, then click `Create access key`&#x20;
6. Copy or download the `Access key ID` and `Secret access key` immediately. AWS will not display it again for security purposes. You'll paste it into Termius

   <figure><img src="/files/5d9zGaEEVKvcgsvCDdfe" alt=""><figcaption></figcaption></figure>

Your IAM user is now set up and Termius can load information about your servers.

{% hint style="info" %}
For the up-to-date instructions, see the [AWS documentation](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_users_create.html).
{% endhint %}

## Enable AWS integration in Termius

1. On the `Hosts` screen, click the chevron next to the `New Host` button and select `AWS Integration`&#x20;

   <figure><img src="/files/u9m4slDyB9pYQbGpap3z" alt=""><figcaption></figcaption></figure>
2. In the `Label` field, enter a name for the group

   <figure><img src="/files/a6Cb6CpIQcorN7kj8fZ9" alt=""><figcaption></figcaption></figure>
3. In the `Region` field, specify your AWS region (e.g. us-east-2)

   <figure><img src="/files/gOp5xtZQSaqDHL2zYE82" alt=""><figcaption></figcaption></figure>
4. Paste the credentials from your AWS into the corresponding fields:

   * **Access key** → **Access Key ID**
   * **Secret access key** → **Secret access key**

   <figure><img src="/files/RfPetkAZxFoObLbaHKAz" alt=""><figcaption></figcaption></figure>
5. Select whether you want to import `EC2` or `Lightsail` servers
6. Select the `type of IP addresses` you want to be imported
7. (Optional) You can configure additional SSH settings for the group, such as port or credentials. Click `Add protocols` below the Cloud sync settings, and fill out the required fields. For more details, see [Groups and tags](/organize-and-connect-to-hosts/groups-and-tags)

   <figure><img src="/files/fbFg12IGepY9izdyu69z" alt=""><figcaption></figcaption></figure>
8. Termius automatically saves the group and begins importing your servers

{% hint style="info" %}
The **access keys** you enter in Termius are stored locally and are not synced across devices.
{% endhint %}


# Integration with DigitalOcean

This page explains how to automatically import your Droplets into Termius and keep them up to date as your infrastructure changes.

{% hint style="info" icon="sparkle" %}
**Who can use this feature:**

* **Subscriptions:** Pro, Team, Business, and Enterprise
* **Set up:** macOS, Windows and Linux.&#x20;
* **Imported hosts available:** macOS, Windows, Linux, iOS and Android
  {% endhint %}

## Overview

This integration securely imports DigitalOcean Droplets into a group in Termius that automatically updates to reflect the changes in your DigitalOcean environment. When you add or remove a Droplet, or change a Droplet's details, the host entry in Termius will appear, disappear, or update accordingly.

## Configure DigitalOcean access

<figure><img src="/files/YGCy8Kv1tZArK8CqQdLS" alt=""><figcaption></figcaption></figure>

To connect Termius to your DigitalOcean account, you need to create a **personal access token** with read-only scope. Termius will use it to access information about your DigitalOcean environment.

The **personal access token** you enter in Termius is stored locally and are not synced across devices.

{% hint style="success" icon="circle-info" %}
For each Droplet, Termius imports the **Name** and **public IP address** if it exists, or otherwise a private one.
{% endhint %}

### Create a personal access token

1. Log in to the [DigitalOcean Control Panel](https://cloud.digitalocean.com)
2. In the left menu, go to `Account` → `API` to open the **Applications & API** page on the **Tokens** tab

   <figure><img src="/files/6Psth3HEXvcQUVF5uKCA" alt=""><figcaption></figcaption></figure>
3. In the **Personal access tokens** section, click `Generate New Token`&#x20;

   <figure><img src="/files/RC0VRJz94kxkiqSUWJmz" alt=""><figcaption></figcaption></figure>
4. Fill out the form:

   1. Enter a **Token Name**
   2. Set the **Expiration**. The default is 90 days. If you don't want the token to be renewed periodically, select `No expiry`.
   3. Under **Scopes**, select `Read Only`&#x20;

   <figure><img src="/files/ZamMJshiJwWA5PBjOGQr" alt=""><figcaption></figcaption></figure>
5. Click `Generate Token`
6. Copy and save your `Personal token` immediately. You will need this token to set up the DigitalOcean integration in Termius. **DigitalOcean will not display it again for security purposes**

   <figure><img src="/files/mP69GAOuQE1zefCuRWLm" alt=""><figcaption></figcaption></figure>

Your personal access token is now set up and Termius can load information about your Droplets.

{% hint style="info" %}
For the up-to-date instructions, see the [DigitalOcean documentation](https://docs.digitalocean.com/reference/api/create-personal-access-token/).
{% endhint %}

## Enable DigitalOcean integration in Termius

1. On the `Hosts` screen, click the chevron next to the `New Host` button and choose `DigitalOcean Integration`&#x20;

   <figure><img src="/files/am0ufjqQHs7jcVPD1GOv" alt=""><figcaption></figcaption></figure>
2. In the `Label` field, enter a name for the group

   <figure><img src="/files/wK9KhATon9rDDoJbFV1Z" alt=""><figcaption></figcaption></figure>
3. Paste your personal access token into the `Token` field

   <figure><img src="/files/YGCy8Kv1tZArK8CqQdLS" alt=""><figcaption></figcaption></figure>
4. (Optional) You can configure additional SSH settings for the group, such as port or credentials. Click `Add protocols` below the Cloud sync settings, and fill out the required fields. For more details, see [Groups and tags](/organize-and-connect-to-hosts/groups-and-tags)

   <figure><img src="/files/AV1PnAwCCsXTg1lNhNaA" alt=""><figcaption></figcaption></figure>
5. Termius automatically saves the group and begins importing your DigitalOcean Droplets

{% hint style="info" %}
The **personal access token** you enter in Termius is stored locally and are not synced across devices.
{% endhint %}


# Integration with Microsoft Azure

This page explains how to automatically import your Virtual Machines into Termius and keep them up to date as your infrastructure changes.

{% hint style="info" icon="sparkle" %}
**Who can use this feature:**

* **Subscriptions:** Pro, Team, Business, and Enterprise
* **Set up:** macOS, Windows and Linux.&#x20;
* **Imported hosts available:** macOS, Windows, Linux, iOS and Android
  {% endhint %}

## Overview

This integration securely imports Virtual Machines into a group in Termius that automatically updates to reflect the changes in your Azure subscription. When you add or remove a server in Azure, or change a VM's details, a host entry in Termius will appear, disappear, or update accordingly.

## Configure Azure access

<figure><img src="/files/rWfWdjUL1kx0TV2jzh3S" alt=""><figcaption></figcaption></figure>

To connect Termius to your Azure cloud, you need a **Directory (tenant) ID**, **Application (client) ID**, and **Secret Value** with read-only permissions. You can get Azure credentials via the Azure portal, CLI, or PowerShell. Termius will use it to access information about your Azure subscription.

The Azure credentials you enter in Termius are stored locally and are not synced across devices.

{% hint style="success" icon="circle-info" %}
For each Virtual Machine, Termius imports the **Name** and **Public IP address**. If a VM has no public IP address, it will not be imported into Termius.
{% endhint %}

### Create an Azure application

1. Sign in to the [Azure portal](https://portal.azure.com) and select **Microsoft Entra ID** in the left navigation pane

   <figure><img src="/files/AJJ9JW5WBUBf2evGmYEa" alt=""><figcaption></figcaption></figure>
2. Go to `Manage` → `App registrations`, then click `+ New registration`

   <figure><img src="/files/WGJZc0EYUexkXiPtEoaB" alt=""><figcaption></figcaption></figure>
3. Enter a name for the application (this will be the service principal name). Then choose the account types that can use this application under **Supported account types**

   <figure><img src="/files/YhWXI5TJlmV4MBj0VZ3J" alt=""><figcaption></figcaption></figure>
4. Click `Register`
5. On the application's overview page, copy the `Application (client) ID` and `Directory (tenant) ID`**.** You'll paste these into the **Client ID** and **Tenant ID** fields in Termius

   <figure><img src="/files/zeVuYmwe080mQqJSkCtE" alt=""><figcaption></figcaption></figure>
6. Browse to `Manage` > `Certificates & secrets` in the left navigation pane

   <figure><img src="/files/pngTUcjs8TRrGKaNMUd7" alt=""><figcaption></figcaption></figure>
7. Click `+ New client secret` under **Client secrets.** Provide a `Description` and set an `Expiration` for the secret. Click `Add`

   <figure><img src="/files/VKilKKmqDveLiXX06zKQ" alt=""><figcaption></figcaption></figure>
8. Copy and save your `Secret Value` immediately. Azure will not display it again for security purposes. You'll paste this **Client Secret** field in Termius

   <figure><img src="/files/DEVZEBUn1Zekud81Yhdj" alt=""><figcaption></figcaption></figure>

### Assign a role to the Azure application <a href="#assign-a-role-to-the-application" id="assign-a-role-to-the-application"></a>

To access information about Virtual Machines in your subscription, you must assign a role to the application. Termius only needs **permission to read information** about Virtual Machines and networks. You can use the **Reader built-in role**, or create a custom role with minimum required permissions.

You can set the scope at the level of the subscription, resource group, or resource level.

#### To assign a role at the subscription scope:

1. In the [Azure portal](https://portal.azure.com), use the search bar at the top to search for and select `Subscriptions`&#x20;

   <figure><img src="/files/HNV8EwEOdJNxKnXaT5lg" alt=""><figcaption></figcaption></figure>
2. Select the `subscription` you want to assign the application to

   <figure><img src="/files/iab3McGtUMDVKWmLe0M5" alt=""><figcaption></figcaption></figure>
3. In the left pane, click `Access control (IAM)`&#x20;

   <figure><img src="/files/JOm5pXZMXcLRZTikrEzl" alt=""><figcaption></figcaption></figure>
4. Click `Add` → `Add role assignment`&#x20;

   <figure><img src="/files/xs2owd18RKug96VHb6QY" alt=""><figcaption></figcaption></figure>
5. In the **Role** tab, select `Reader` and click `Next`&#x20;

   <figure><img src="/files/6zLOPGURunYpGSTqdct3" alt=""><figcaption></figcaption></figure>
6. In the **Members** tab, click `Select members` and search for the application you created by name

   <figure><img src="/files/VVWGEzWWmETbXhFM2zrd" alt=""><figcaption></figcaption></figure>
7. Click `Review + assign`

Your Azure application is now set up and Termius can load information about your Virtual Machines.

{% hint style="info" %}
For the up-to-date instructions, see the [Microsoft Azure documentation](https://learn.microsoft.com/en-us/entra/identity-platform/howto-create-service-principal-portal).
{% endhint %}

## Enable Azure integration in Termius

1. On the `Hosts` screen, click the chevron next to the `New Host` button and choose `Azure Integration`&#x20;

   <figure><img src="/files/ZVwjL4XSEzJQjK23PdLi" alt=""><figcaption></figcaption></figure>
2. In the `Label` field, enter the group name

   <figure><img src="/files/zAjWtnOHi3KI8nlwZO85" alt=""><figcaption></figcaption></figure>
3. Paste the credentials from your Azure application into the corresponding fields:

   * **Directory (tenant) ID** → **Tenant ID**
   * **Application (client) ID** → **Client ID**
   * **Client Secret value** → **Client Secret**

   <figure><img src="/files/rWfWdjUL1kx0TV2jzh3S" alt=""><figcaption></figcaption></figure>
4. (Optional) You can configure additional SSH settings for the group, such as port or credentials. Click `Add protocols` below the Cloud sync settings, and fill out the required fields. For more details, see [Groups and tags](/organize-and-connect-to-hosts/groups-and-tags)

   <figure><img src="/files/x8VPmeZ7RGFNDzApJOXV" alt=""><figcaption></figcaption></figure>
5. Termius automatically saves the group and begins importing your Virtual Machines

{% hint style="info" %}
The **Azure credentials** you enter in Termius are stored locally and are not synced across devices.
{% endhint %}


# Encryption overview

This page explains how authentication and encryption work in Termius and how your data is securely protected across Personal and Team Vaults.

## Authentication & Encryption password

Termius offers two types of authentication:

* Email + Encryption Password
* Single sign-on (SSO). After successful SSO authentication, the app still requires the encryption password to access vaults.

The app uses a modified SRP6a protocol to communicate with the server without sending the password or password hash over the network.

<figure><img src="/files/4BIgzeeMmTxOyiiuqoYe" alt=""><figcaption></figcaption></figure>

To complete the authentication, the client and the Termius Cloud must prove that each party has the same key:

1. The cloud sends the client a random piece of data, a salt to be used with the Argon2id password hash algorithm, and a user identifier.
2. The client sends the cloud a random piece of data and a client proof.
3. The cloud sends the client a server proof, an encrypted API Key, and a salt.
4. The client validates the server proof and decrypts the API Key.

## Personal vault <a href="#personal-vault" id="personal-vault"></a>

Termius uses a hybrid encryption approach for the Personal vault. The key steps of the encryption algorithm are below:

1. Termius generates a random key pair during account creation.
2. Using the key pair, the app generates the user's personal encryption key.
3. The personal encryption key is used to encrypt all user data, such as hosts, groups, and keys.
4. The private key is encrypted using the user's encryption password.
5. The app syncs the encrypted key via Termius Cloud to other devices.

Your encryption password always stays with you. It is never stored alongside your data, and never sent over the network. No one can read data in the Personal vault without the encryption password.

{% hint style="danger" %}
If you lose your encryption password, you won't be able to recover the data.

Make sure to save your encryption password in a password manager.
{% endhint %}

## Team vault and custom team vaults

<figure><img src="/files/j86yku1R27inWbV0hcO7" alt=""><figcaption></figcaption></figure>

Termius uses a hybrid encryption approach for all team vaults.

#### On the team member's side

1. When a team member joins Termius, the app generates a key pair. It is used for their Personal vault; see above.
2. Each team member's public key is then shared with the team owner.

#### On the team owner's side

1. When a team owner invites a team member, Termius generates a separate encryption key for the Team vault and custom team vaults.
2. Termius encrypts the vault encryption keys using the team member's public key. Termius uses the team owner's private key to create the MAC.
3. Encrypted vault keys are then sent to team members via the Termius cloud.

#### On the team member's side

1. Termius sends encrypted vault keys to all members with access to these vaults.
2. The app decrypts vault keys with the member's private key stored in their Personal vault and uses the team owner's public key to verify the MAC.

## Technical details <a href="#technical-details" id="technical-details"></a>

Termius uses Libsodium version [1.0.20](https://github.com/jedisct1/libsodium/tree/1.0.20) and a custom C++ binding for iOS, Android, and Desktop applications. Termius uses the following APIs in Libsodium:

* For public-key encryption: crypto\_box\_keypair, crypto\_box\_easy, and crypto\_box\_open\_easy use the X25519 key exchange, XSalsa20 stream cipher, and Poly1305 MAC.
* For secret-key encryption: crypto\_secretbox\_keygen, crypto\_secretbox\_easy, crypto\_secretbox\_open\_easy – it uses the XSalsa20 stream cipher and the Poly1305 MAC.
* For password hashing: crypto\_pwhash with options: `OPSLIMIT_INTERACTIVE`, `MEMLIMIT_INTERACTIVE`, and ARGON2ID13.
* For generating a nonce: randombytes\_buf.

Termius uses the SRP implementation from [Botan](https://botan.randombit.net/) and [gRPC](https://grpc.io/) over TLS as the transport for the SRP protocol. Termius uses Botan version [3.2.0](https://github.com/randombit/botan/tree/3.2.0) and a custom C++ binding for iOS, Android, and Desktop applications.<br>

The encryption key and key pair are stored on devices, namely in:

* iOS: [Keychain](https://developer.apple.com/documentation/security/keychain_services).
* Android: shared preferences, encrypted by a key stored in Android [Keystore](https://developer.android.com/training/articles/keystore).
* Desktop: Electron IndexedDB encrypted by a key stored in [OS Keychain](https://github.com/atom/node-keytar) when Keychain is available and in [localStorage](https://developer.mozilla.org/en-US/docs/Web/API/Window/localStorage) as a fallback.

If you have any security concerns, you can write to us at <security@termius.com>.


# Post-Quantum Cryptography

This page explains how Termius supports post-quantum cryptography (PQC), including key exchange and authentication methods, as well as compatibility with existing SSH servers.

Termius supports Post-Quantum Cryptography (PQC) to protect data against potential future quantum computing threats, in accordance with NIST FIPS 203 (ML-KEM) and FIPS 204 (ML-DSA) standards.

### Key Exchange (KEX) Support

Termius supports both standalone ML-KEM and hybrid modes that combine classical Elliptic Curve cryptography with quantum-resistant algorithms.

* Hybrid Mode: `mlkem768x25519-sha256` (Combines PQ + X25519)
* Standalone ML-KEM: `mlkem512-sha256`, `mlkem768-sha256`, `mlkem1024-sha384`

### Authentication (ML-DSA)

Termius supports ML-DSA (Module-Lattice-Based Digital Signature Algorithm) for host and user authentication.

* Host Keys: `ssh-mldsa-44`, `ssh-mldsa-65`, `ssh-mldsa-87`
* User Keys: Support for ML-DSA SSH keys at levels 44, 65, and 87.

### Compatibility and Fallback

* **Server Support:** Use of these algorithms requires the connected SSH server to also support FIPS 203 and FIPS 204.
* **Automatic Fallback:** If the server does not support ML-KEM or ML-DSA, the application reverts to mutually supported classical algorithms (such as Ed25519 or RSA).

***

### Frequently Asked Questions (FAQ)

<details>

<summary>What is Post-Quantum Cryptography?</summary>

PQC refers to cryptographic algorithms designed to be secure against the processing power of quantum computers. A large-scale quantum computer could theoretically break current classical algorithms (RSA, ECC).

</details>

<details>

<summary>Why use a hybrid algorithm?</summary>

A hybrid algorithm like `mlkem768x25519-sha256` uses both a classical method and a post-quantum method. This ensures the connection remains secure even if one of the two algorithms is found to have a vulnerability.

</details>

<details>

<summary>Does PQC affect connection process?</summary>

ML-KEM and ML-DSA keys and signatures are larger than those of classical ECC. This increases the amount of data sent during the initial handshake, which may result in a small increase in connection setup time depending on network conditions.

{% hint style="warning" %}
On some older systems, the larger handshake can cause the connection handshake to fail and disconnect the session early.

In such a case, you can disable the use of the PQC algorithms in Termius settings.&#x20;
{% endhint %}

</details>

<details>

<summary>How do I enable these algorithms?</summary>

Termius includes these algorithms in its default SSH algorithm list. If the server supports them, Termius uses them automatically. You only need manual configuration if you want to allow only PQC algorithms on the server side.

</details>


# Compliance

This page describes the security and compliance practices used by Termius to protect customer data

## Overview

Termius follows industry-standard security practices to protect customer data and support organizational compliance requirements. The whole product is built around encrypted vaults that enable secure sync and sharing of information. Termius requires no setup on-premises. Termius mobile and desktop apps connect directly to the infrastructure. Termius also keeps a local copy of the data for offline mode. The local data is also encrypted.&#x20;

## SOC 2 Type II

<figure><img src="/files/TKdnH9lhtR2Bs3yCgL31" alt=""><figcaption></figcaption></figure>

Termius is **SOC 2 Type II compliant**. This certification verifies that Termius maintains effective controls for security, availability, and confidentiality over time.

The SOC 2 Type II audit evaluates how our systems and processes operate across an extended period and confirms that appropriate safeguards are in place to protect customer data.

To get access to the compliance documentation, visit [Termius Trust Center](https://security.termius.com/).

## Security practices

To support compliance and data protection, Termius implements:

* **End-to-end encryption** for credentials, keys, and vault data
* **Secure infrastructure and access controls**
* **Audit logging** for team activity
* **Access management**
* **Two-factor authentication (2FA)** and **SAML SSO**

These measures help organizations securely manage infrastructure access while meeting internal security and compliance requirements.


# Account Management

This page describes how to manage your Termius account, including updating email, enabling 2FA, changing the encryption password and more.

## Change email address

{% tabs %}
{% tab title="Account management portal" %}

1. Open the `Account` page on the [account management portal](https://account.termius.com/)&#x20;
2. Click `Change` next to your account details, then click `Change email`

   <figure><img src="/files/Z5Ft4ooyUwJkjQ7zPDL9" alt=""><figcaption></figcaption></figure>
3. Enter `New email` address and your current `Encryption password`

   <figure><img src="/files/yZOKDFs3IHPPLC0wuKzR" alt=""><figcaption></figcaption></figure>
4. Click `Save`
   {% endtab %}

{% tab title="Desktop" %}

<figure><img src="/files/AZ8PwtY6mqIbhCEsPso2" alt=""><figcaption></figcaption></figure>

1. Navigate to `Termius > Settings > Account`
2. Click `Change` next to your email address
3. Enter the new email address and your current encryption password
4. Click `Save`
   {% endtab %}

{% tab title="iOS" %}

1. Open `Profile` in the app

   <div align="left"><figure><img src="/files/spwwr8fbvHDaPWMNIT36" alt="" width="375"><figcaption></figcaption></figure></div>
2. Tap your email address

   <div align="left"><figure><img src="/files/mhBbA4Dm7xXGEHnteQoA" alt="" width="375"><figcaption></figcaption></figure></div>
3. Tap ![](data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw==)`three dots` button, then `Change Email`

   <div align="left"><figure><img src="/files/DQ1hOOH5uYu9gAsMJKnT" alt="" width="375"><figcaption></figcaption></figure></div>
4. Enter `New email` address and your current `Encryption Password`

   <div align="left"><figure><img src="/files/p0cdGj42dbkLYo83rzQR" alt="" width="375"><figcaption></figcaption></figure></div>
5. Tap `Submit`
   {% endtab %}

{% tab title="Android" %}

1. Open `Settings` in the app

   <div align="left"><figure><img src="/files/dQ3oOvuakcNFWJGtHt3u" alt="" width="375"><figcaption></figcaption></figure></div>
2. Tap `Account settings`

   <div align="left"><figure><img src="/files/F2ULZ6F0dvzaIEPH1upY" alt="" width="375"><figcaption></figcaption></figure></div>
3. &#x20;Tap ![](data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw==)`three-dots` button, then `Change Email`

   <div align="left"><figure><img src="/files/WfI5e0JEsEpP8iHi9Odo" alt="" width="375"><figcaption></figcaption></figure></div>
4. Enter `New email` address and your current `Encryption Password`

   <div align="left"><figure><img src="/files/qSJhTeFRTA3jV3TD7KRp" alt="" width="375"><figcaption></figcaption></figure></div>
5. Tap `Confirm`
   {% endtab %}
   {% endtabs %}

## Change name

{% tabs %}
{% tab title="Account management portal" %}

1. Open the `Account` page on the [account management portal](https://account.termius.com/)&#x20;
2. Click `Change` next to your account details, then click `Change name`

   <figure><img src="/files/Imc5R9BpU4tgkfrwvGvg" alt=""><figcaption></figcaption></figure>
3. Enter `First name` and `Last name`&#x20;

   <figure><img src="/files/y5Gh52Etx0xqH4bvGGal" alt=""><figcaption></figcaption></figure>
4. Click `Save`
   {% endtab %}
   {% endtabs %}

## Change encryption password

{% tabs %}
{% tab title="Account management portal" %}

<figure><img src="/files/LvF3vASoupZ5xptXRck6" alt=""><figcaption></figcaption></figure>

1. Open the `Account` page on the [account management portal](https://account.termius.com/)&#x20;
2. Click `Change password`&#x20;
3. Enter your old encryption password
4. Enter the new encryption password
5. Click the `Change` button

{% hint style="danger" %}
If you forgot your encryption password or lost access to 2FA, you can reset it to regain access to the account.&#x20;

However, after the reset the app won't be able to decrypt your previously synced data so you will need to start from scratch.
{% endhint %}
{% endtab %}

{% tab title="Desktop" %}

<figure><img src="/files/xonzTfUBBlVAXRcCx7Zf" alt=""><figcaption></figcaption></figure>

1. Navigate to `Termius > Settings > Account`
2. Click `Change encryption password`&#x20;
3. Enter your old encryption password
4. Enter the new encryption password
5. Click `Save` button

{% hint style="warning" %}
If you can't change the encryption password, contact [Termius support](https://support.termius.com/hc/en-us/requests/new).
{% endhint %}
{% endtab %}

{% tab title="iOS" %}

1. Open `Profile` in the app

   <div align="left"><figure><img src="/files/spwwr8fbvHDaPWMNIT36" alt="" width="375"><figcaption></figcaption></figure></div>
2. Tap your email address

   <div align="left"><figure><img src="/files/mhBbA4Dm7xXGEHnteQoA" alt="" width="375"><figcaption></figcaption></figure></div>
3. Tap `Change Password`&#x20;

   <div align="left"><figure><img src="/files/Bue4U8q4scmXUDAYeCD7" alt="" width="375"><figcaption></figcaption></figure></div>
4. Enter your `Old encryption password` and the `New encryption password`

   <div align="left"><figure><img src="/files/vUQ6t3X76unGbGzMsotn" alt="" width="375"><figcaption></figcaption></figure></div>
5. Tap `Submit`
   {% endtab %}

{% tab title="Android" %}

1. Open `Settings` in the app

   <div align="left"><figure><img src="/files/dQ3oOvuakcNFWJGtHt3u" alt="" width="375"><figcaption></figcaption></figure></div>
2. Tap `Account settings`&#x20;

   <div align="left"><figure><img src="/files/F2ULZ6F0dvzaIEPH1upY" alt="" width="375"><figcaption></figcaption></figure></div>
3. Tap `Change Password`&#x20;

   <div align="left"><figure><img src="/files/gcC70jWn8u2o2urkKDB7" alt="" width="375"><figcaption></figcaption></figure></div>
4. Enter your `Old encryption password` and the `New encryption password`

   <div align="left"><figure><img src="/files/idi6KVMIleQv0atKIdVU" alt="" width="375"><figcaption></figcaption></figure></div>
5. Tap `Confirm`&#x20;
   {% endtab %}
   {% endtabs %}

## Manage active devices

The Devices section lists all devices currently logged in to your Termius account, along with the last activity time for each. You can review your active devices on the account management portal or in Termius on mobile.

{% tabs %}
{% tab title="Account management portal" %}

<figure><img src="/files/yxag31SLYP34fBpkDB9h" alt=""><figcaption></figcaption></figure>

To remotely log out from your devices:

1. Open the `Account` page on the [account management portal](https://account.termius.com/)&#x20;
2. Find the `Devices` section
3. Click `Sign Out on all devices` to sign out from all of them at once, or
4. Click `Sign Out` next to the selected device. If the device is offline, the sign-out will be applied the next time it connects to the internet
   {% endtab %}

{% tab title="iOS" %}
To remotely log out from your devices:

1. Open `Profile` in the app

   <div align="left"><figure><img src="/files/spwwr8fbvHDaPWMNIT36" alt="" width="375"><figcaption></figcaption></figure></div>
2. Tap your email address

   <div align="left"><figure><img src="/files/mhBbA4Dm7xXGEHnteQoA" alt="" width="375"><figcaption></figcaption></figure></div>
3. Tap `Devices`&#x20;

   <div align="left"><figure><img src="/files/66Rj7S7CzL2m0OYvVbto" alt="" width="375"><figcaption></figcaption></figure></div>
4. Tap `Log out` next to the selected device. If the device is offline, the log-out will be applied the next time it connects to the internet

   <div align="left"><figure><img src="/files/vZpphyaTnau7pA1DDM2j" alt="" width="375"><figcaption></figcaption></figure></div>

{% endtab %}

{% tab title="Android" %}
To remotely log out from your devices:

1. Open `Settings` in the app

   <div align="left"><figure><img src="/files/dQ3oOvuakcNFWJGtHt3u" alt="" width="375"><figcaption></figcaption></figure></div>
2. Tap `Account settings`&#x20;

   <div align="left"><figure><img src="/files/F2ULZ6F0dvzaIEPH1upY" alt="" width="375"><figcaption></figcaption></figure></div>
3. Tap `Devices`&#x20;

   <div align="left"><figure><img src="/files/sZhFrDwlRjvIV9SPAmPK" alt="" width="375"><figcaption></figcaption></figure></div>
4. Tap `Sign out` next to the selected device. If a device is offline, the sign-out will be applied the next time it connects to the internet

   <div align="left"><figure><img src="/files/9P2mOCMVwnkNqjm3kS0z" alt="" width="375"><figcaption></figcaption></figure></div>

{% endtab %}
{% endtabs %}

## Manage Two-Factor Authentication (2FA)

Termius supports two 2FA methods for email sign-in with email and an encryption password: TOTP or [Authy](https://authy.com/).&#x20;

You can use any authenticator app supporting TOTP, e.g., Microsoft Authenticator or Google Authenticator.

Termius does not prompt for a second factor when you sign in with Apple, Google, or SAML SSO.

### Enable 2FA

{% tabs %}
{% tab title="Account management portal" %}

<figure><img src="/files/TghV7rIGgqmUToOXAjOy" alt=""><figcaption></figcaption></figure>

1. Open the `Account` page on the [account management portal](https://account.termius.com/)&#x20;
2. Turn on the toggle `Two-factor authentication`&#x20;
3. Choose a 2FA provider:
   * **TOTP - Google Authenticator, Duo, etc.**
     1. Click `Continue` and enter your encryption password
     2. Scan the QR code to set up the 2FA provider
     3. Enter the verification code from your 2FA Provider to complete the setup process
   * **Authy - phone number for authentication**
     1. Enter your phone number
     2. The verification code will appear in the Authy app. Enter this code to complete the setup process

{% hint style="info" %}
**Important**: Try the call option if you don't receive the SMS when registering with Authy.
{% endhint %}
{% endtab %}

{% tab title="Desktop" %}

<figure><img src="/files/lh3lxamccbDU0pKSHaHb" alt=""><figcaption></figcaption></figure>

1. Navigate to `Termius > Settings > Account`
2. Turn on the toggle `Enable 2FA`&#x20;
3. Choose a 2FA provider:
   1. **TOTP - Google Authenticator, Duo, etc.**
      1. Click `Continue` and enter your encryption password
      2. Scan the QR code to set up the 2FA provider
      3. Enter the verification code from your 2FA Provider to complete the setup process
   2. **Authy - phone number for authentication**
      1. Enter your phone number and click
      2. Enter the verification code to complete the setup process. This code will appear in the Authy app

{% hint style="info" %}
**Important**: Try the call option if you don't receive the SMS when registering with Authy.
{% endhint %}
{% endtab %}

{% tab title="iOS" %}

1. Open `Profile` in the app

   <div align="left"><figure><img src="/files/spwwr8fbvHDaPWMNIT36" alt="" width="375"><figcaption></figcaption></figure></div>
2. Tap your email address

   <div align="left"><figure><img src="/files/mhBbA4Dm7xXGEHnteQoA" alt="" width="375"><figcaption></figcaption></figure></div>
3. Turn on the toggle `2FA`&#x20;

   <div align="left"><figure><img src="/files/j4HfZdIsGe7R8m1gIt5c" alt="" width="375"><figcaption></figcaption></figure></div>
4. Choose a 2FA provider:

   <div align="left"><figure><img src="/files/NTSumkjyQscvD1uyyWIk" alt="" width="375"><figcaption></figcaption></figure></div>

   * **TOTP - Google Authenticator, Duo, etc.:**
     1. Enter your encryption password
     2. Copy the code and add it to your 2FA provider
     3. Enter the verification code from your 2FA Provider to complete the setup process.
   * **Authy - phone number for authentication:**
     1. Enter your encryption password
     2. Enter your phone number
     3. The verification code will appear in the Authy app. Enter this code to complete the setup process
        {% endtab %}

{% tab title="Android" %}

1. Open `Settings` in the app

   <div align="left"><figure><img src="/files/dQ3oOvuakcNFWJGtHt3u" alt="" width="375"><figcaption></figcaption></figure></div>
2. Tap `Account settings`&#x20;

   <div align="left"><figure><img src="/files/F2ULZ6F0dvzaIEPH1upY" alt="" width="375"><figcaption></figcaption></figure></div>
3. Tap `Enable 2FA`&#x20;

   <div align="left"><figure><img src="/files/LfPy5BF5vcopHzvEzaB8" alt="" width="375"><figcaption></figcaption></figure></div>
4. Choose a 2FA provider:

   <div align="left"><figure><img src="/files/NTSumkjyQscvD1uyyWIk" alt="" width="375"><figcaption></figcaption></figure></div>

   * **TOTP - Google Authenticator, Duo, etc.**
     1. Enter your encryption password
     2. Copy the code and add it to your 2FA provider
     3. Enter the verification code from your 2FA Provider to complete the setup process
   * **Authy - phone number for authentication**
     1. Enter your phone number
     2. The verification code will appear in the Authy app
     3. Enter this code to complete the setup process
        {% endtab %}
        {% endtabs %}

### Disable 2FA

{% tabs %}
{% tab title="Account management portal" %}

<figure><img src="/files/TghV7rIGgqmUToOXAjOy" alt=""><figcaption></figcaption></figure>

1. Open the `Account` page on the [account management portal](https://account.termius.com/)&#x20;
2. Turn off the toggle `Two-factor authentication`&#x20;
3. Enter your encryption password
4. Enter the verification code to complete the disabling process
   {% endtab %}

{% tab title="Desktop" %}

<figure><img src="/files/lh3lxamccbDU0pKSHaHb" alt=""><figcaption></figcaption></figure>

1. Navigate to `Termius > Settings > Account`
2. Turn off the toggle `Enable 2FA`&#x20;
3. Enter your encryption password
4. Enter the verification code to complete the disabling process
   {% endtab %}

{% tab title="iOS" %}

1. Open `Profile` in the app

   <div align="left"><figure><img src="/files/spwwr8fbvHDaPWMNIT36" alt="" width="375"><figcaption></figcaption></figure></div>
2. Tap `your email`&#x20;

   <div align="left"><figure><img src="/files/mhBbA4Dm7xXGEHnteQoA" alt="" width="375"><figcaption></figcaption></figure></div>
3. Tap ![](data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw==)`three-dots` button, then `Disable 2FA`&#x20;

   <div align="left"><figure><img src="/files/DJeSeOeSXyFBfo3pO5iL" alt="" width="375"><figcaption></figcaption></figure></div>
4. Enter your current encryption password
5. Enter the verification code to complete the disabling process
   {% endtab %}

{% tab title="Android" %}

1. Open `Settings` in the app

   <div align="left"><figure><img src="/files/dQ3oOvuakcNFWJGtHt3u" alt="" width="375"><figcaption></figcaption></figure></div>
2. Tap `Account settings`&#x20;

   <div align="left"><figure><img src="/files/F2ULZ6F0dvzaIEPH1upY" alt="" width="375"><figcaption></figcaption></figure></div>
3. Tap ![](data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw==)`three-dots` button, then `2FA`&#x20;

   <div align="left"><figure><img src="/files/SfHwDgn4oOcKNpUZxYyB" alt="" width="375"><figcaption></figcaption></figure></div>
4. Enter your current encryption password
5. Enter the verification code to complete the disabling process
   {% endtab %}
   {% endtabs %}

## Link GitHub account

You can get free access to all Pro and Team features with the GitHub Student Developer Pack.

To link your GitHub account:

{% stepper %}
{% step %}

#### Verify your GitHub status

First, you must have a verified GitHub Education account. If you haven't done this yet, follow the [official GitHub Student Guide](https://education.github.com/pack) to get started
{% endstep %}

{% step %}

#### Wait for activation

Please note that there is a difference between being Verified and Activated. GitHub may approve your application, but access to partner offers (like Termius) is only available once your status is fully **activated**. This transition can sometimes take a few days
{% endstep %}

{% step %}

#### Link to Termius

<figure><img src="/files/IU1VAPKExDCI9NnLFos7" alt=""><figcaption></figcaption></figure>

Once your GitHub Education access is active, you can link it to your Termius account:

* Navigate to the [account management portal](https://account.termius.com/) > `For Students`&#x20;
* Click `Link your GitHub account`
* Sign in to GitHub and authorize Termius
  {% endstep %}
  {% endstepper %}

GitHub may take some time to activate your access after verification. If you cannot link your GitHub account yet, try again in a few hours.

If you experience issues linking your GitHub account, see the [troubleshooting guide](/help-center/faq/how-can-i-get-termius-for-free-with-github-student-developer-pack).

{% hint style="info" %}
Your **GitHub Student Developer Pack** access must be verified and activated in your GitHub account before linking.
{% endhint %}

***

## Email notifications

Termius sends several types of email notifications related to your account and team activity.

### **Transactional emails**

Transactional emails include invoices, payment confirmations, subscription updates, and other account status updates. These are system notifications and cannot be disabled.

### **Termius Academy** and **Newsletter** emails

Termius Academy and Newsletter emails contain product updates, guides, and tips for using Termius. You can unsubscribe from these emails using the unsubscribe link in the footer of the message.

### **Team activity reports**

<figure><img src="/files/F8agEyB7qvUiKTTr3TAM" alt=""><figcaption></figcaption></figure>

Team activity reports are available with Team and Business subscriptions. These emails summarize the changes you and your team have made in the vaults.

Team activity reports can be configured only in the **account management portal**:

1. Open the `Account` page on the [account management portal](https://account.termius.com/)&#x20;
2. Find the `Email notifications` section
3. Select how often you want to receive reports:
   * Daily updates
   * Weekly summary
   * No updates
4. Choose your preferred time zone from the drop-down

## Delete account

When you delete your account, it is **scheduled** for deletion rather than deleted immediately.\
You can restore the account within **30 days** by logging in to the [account management portal](https://account.termius.com/) and clicking `Restore account`.

{% tabs %}
{% tab title="Account management portal" %}

1. Open the `Account` page on the [account management portal](https://account.termius.com/)&#x20;
2. Click `Delete account`&#x20;

   <figure><img src="/files/dTkaePmhXTwtmbyCZRc6" alt=""><figcaption></figcaption></figure>
3. If you're a team owner, remove all your team members first

   <figure><img src="/files/AFOMZ2Dhmj5GajBQ4qJa" alt=""><figcaption></figcaption></figure>
4. Enter your encryption password
5. Check your email inbox for further instructions

{% hint style="info" %}
If you can't delete an account, contact [Termius support](https://support.termius.com/hc/en-us/requests/new).
{% endhint %}
{% endtab %}

{% tab title="Desktop" %}

1. Navigate to `Termius > Settings > Account`
2. Click `Delete account`&#x20;

   <figure><img src="/files/Onjjfol2A8FmfkGX1BYa" alt=""><figcaption></figcaption></figure>
3. If you're a team owner, remove all your team members first via the [account management portal](https://account.termius.com/)

   <figure><img src="/files/AFOMZ2Dhmj5GajBQ4qJa" alt=""><figcaption></figcaption></figure>
4. Enter your encryption password
5. Check your email inbox for further instructions
   {% endtab %}

{% tab title="iOS" %}

1. Open `Profile` in the app

   <div align="left"><figure><img src="/files/spwwr8fbvHDaPWMNIT36" alt="" width="375"><figcaption></figcaption></figure></div>
2. Tap `your email`&#x20;

   <div align="left"><figure><img src="/files/mhBbA4Dm7xXGEHnteQoA" alt="" width="375"><figcaption></figcaption></figure></div>
3. Tap ![](data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw==)`three-dots` icon, then `Delete Account`

   <div align="left"><figure><img src="/files/7p3lXmt1lBDNAruBzDk6" alt="" width="375"><figcaption></figcaption></figure></div>
4. If you're a team owner, remove all your team members first via the [account management portal](https://account.termius.com/)

   <div align="left"><figure><img src="/files/AFOMZ2Dhmj5GajBQ4qJa" alt="" width="563"><figcaption></figcaption></figure></div>
5. Enter your encryption password
6. Check your email inbox for further instructions
   {% endtab %}

{% tab title="Android" %}

#### You cannot delete your account in the **Android app**.

To delete your account, use the account management portal instructions above.
{% endtab %}
{% endtabs %}

{% hint style="warning" %}
**Team members** cannot delete their own accounts as they are being managed by the **team owner**.
{% endhint %}


# Billing and plans

This page describes how to manage your billing information, upgrade your plan, change your payment method, and download receipts.

## Subscriptions

Termius offers four paid plans: Pro, Team, Business, and Enterprise. Each plan includes unique features not available on the free Starter plan. Paid plans are available only as subscriptions.

Here's a quick feature comparison of all the available plans:

* **Starter:** For individuals who need a reliable standalone SSH client with all the essentials.
* **Pro:** For professionals who rely on SSH daily across desktop and mobile devices.
* **Team:** For teams that manage shared infrastructure together and need to collaborate securely.
* **Business:** For companies that need advanced controls and support for compliance requirements.
* **Enterprise:** For large organizations that need enterprise-grade security and centralized access to infrastructure at scale.

Check out the [Pricing page](https://termius.com/pricing) for the latest info on our plans and comparison.

{% hint style="info" %}
Students can get free access to all Pro and Team features with the [GitHub Student Developer Pack](https://termius.com/education). See [Link GitHub account](/administration/account-management#github).
{% endhint %}

### Purchase a subscription

{% tabs %}
{% tab title="Team and Business" %}

#### To **purchase** a **Team or Business plan**:

1. Navigate to the [account management portal](https://account.termius.com/) > `Billing`
2. Click `Purchase now`

   <figure><img src="/files/w8ESNt5KRa65LnXfjU1Q" alt=""><figcaption></figcaption></figure>
3. Select the Team or Business plan

   <figure><img src="/files/LrZXPxErvVuCaKhmFowT" alt=""><figcaption></figcaption></figure>
4. Choose the number of seats (minimum of 2)

   <figure><img src="/files/THok9e5wVLiPneCugPfO" alt=""><figcaption></figcaption></figure>
5. Select the billing period – yearly or monthly

   <figure><img src="/files/69dpIaNneEoQ17oeSIfz" alt=""><figcaption></figcaption></figure>
6. Complete the payment using a **credit card**

{% hint style="info" %}
Team and Business plans can only be purchased through the Account Management Portal and cannot be purchased via PayPal or through app stores.
{% endhint %}
{% endtab %}

{% tab title="Pro" %}

#### To **purchase** a **Pro plan**:

1. Navigate to the [account management portal](https://account.termius.com/) > `Billing`
2. Click `Purchase now`

   <figure><img src="/files/w8ESNt5KRa65LnXfjU1Q" alt=""><figcaption></figcaption></figure>
3. Select the Pro plan

   <figure><img src="/files/2XyIcpndUh92giiRQce7" alt=""><figcaption></figcaption></figure>
4. Select the billing period – yearly or monthly

   <figure><img src="/files/qLJF7ySQJlYOPewM8wek" alt=""><figcaption></figcaption></figure>
5. Complete the payment using a credit card or PayPal

You can also purchase the Pro plan through app stores, including Google Play, App Store, and Microsoft Store.

{% hint style="info" %}
Plans purchased through app stores are managed by the respective stores.
{% endhint %}
{% endtab %}
{% endtabs %}

### Upgrade your plan

<figure><img src="/files/QwRa8QrC4eKM7J6Ifxxh" alt=""><figcaption></figcaption></figure>

You can upgrade your plan at any time on the [account management portal](https://account.termius.com/) > `Billing`  or in the Termius app. When upgrading, the remaining time on your current paid plan is converted into credit and applied to the new plan.

### Cancel your subscription

<figure><img src="/files/G2Az2btBOfI3ytJUwe1E" alt=""><figcaption></figcaption></figure>

To cancel a subscription:

* Navigate to the [account management portal](https://account.termius.com/) > `Billing` , and click `Cancel subscription` , or
* If the subscription was purchased through a third-party store ([Google Play](https://support.google.com/googleplay/answer/7018481?hl=en\&co=GENIE.Platform%3DAndroid), [App Store](https://support.apple.com/en-nz/118428?device-type=mac), or [Microsoft Store](https://support.microsoft.com/en-us/account-billing/cancel-your-microsoft-subscription-c2c6b0e3-cab3-cb98-d83e-c9ad54620530)), cancel it directly in that store.

After cancellation, auto-renewal will be disabled, but your subscription will remain active until the end of the current billing period.

### Switch to annual payments

<figure><img src="/files/h4AyLxU0i5goNzWI2nus" alt=""><figcaption></figcaption></figure>

You can switch to annual payments for all subscriptions purchased by card in the [account management portal](https://account.termius.com/).

For Pro subscriptions purchased through app stores, billing changes must be made in the [Apple App Store](https://support.apple.com/en-us/HT204939), [Google Play](https://support.google.com/googleplay/answer/7018481?hl=en\&co=GENIE.Platform%3DAndroid\&oco=0#zippy=%2Cchange-between-subscriptions-prepaid-plans), or [Microsoft Store](https://support.microsoft.com/en-us/account-billing/change-your-microsoft-subscription-payment-method-and-options-39ab4bc1-01f9-fc28-c3a5-49e87b6e7611#Change%20subscription%20plans).

For subscriptions purchased via PayPal, cancel the existing subscription, wait for the current billing period to end, and then purchase the annual plan.

### Manage seats

Seats determine how many team members can access your Team vault.

#### Add seats

<figure><img src="/files/wqjwLztN7tkAWKukwixn" alt=""><figcaption></figcaption></figure>

To add team members:

1. Navigate to the [account management portal](https://account.termius.com/) > `Team`&#x20;
2. Find the `Team members` section&#x20;
3. Enter the email address of the person you want to invite.

If no seats are available, the number of seats in your subscription **increases automatically** when you invite a new member.

If your subscription is paid via invoice, additional seats can be added by contacting [Termius support](https://support.termius.com/hc/en-us/requests/new?ticket_form_id=900001336483).

#### Remove seats

Remove the team member in the [account management portal](https://account.termius.com/) under Team.

Removing a team member **does not automatically reduce the number of seats** in your subscription.\
If you need to reduce the number of seats to lower the subscription cost, please contact [Termius support](https://support.termius.com/hc/en-us/requests/new?ticket_form_id=900001336483).&#x20;

## Billing details

### Update card details

<figure><img src="/files/a0KnLxplRNWWvtQJUwqQ" alt=""><figcaption></figcaption></figure>

To change card details:

1. Navigate to the [account management portal](https://account.termius.com/) > `Billing`
2. Find the section `Card details`&#x20;
3. Click `Update` and enter the card details

### Get receipts

<figure><img src="/files/NUg03BOgqHoq3FVpfDwG" alt=""><figcaption></figcaption></figure>

You can download receipts:

1. Navigate to the [account management portal](https://account.termius.com/) > `Billing`
2. Click `Get Receipt` next to a transaction in the Transaction History section

#### Edit receipt details

<figure><img src="/files/4Xf15exM1Kjt3X0k6A8c" alt=""><figcaption></figcaption></figure>

To edit receipt details:

1. Navigate to the [account management portal](https://account.termius.com/)  > `Billing`
2. Find the section `Edit receipt details`&#x20;
3. Specify the information you want added to the receipts, like company name, address, and tax ID

## Frequently Asked Questions

<details>

<summary><strong>What happens when my subscription expires?</strong></summary>

When a Pro subscription expires, the Pro features become disabled. This includes synchronization, meaning any changes you make in the app will no longer be uploaded to the Termius cloud. These changes will be stored locally on your devices.

</details>

<details>

<summary><strong>Is it possible to request a refund?</strong></summary>

Certain refund requests for subscriptions may be considered by Termius Corporation on a case-by-case basis and granted in the sole discretion of Termius Corporation.

If you made the purchase through App Store, Google Play, or Microsoft Store, please follow one of these instructions: [App Store](https://support.apple.com/en-us/HT204084), [Google Play](https://support.google.com/googleplay/workflow/9813244?hl=en), or [Microsoft Store](https://support.microsoft.com/en-us/account-billing/returning-items-you-bought-from-microsoft-store-for-exchange-or-refund-81629012-aa4f-f48b-2394-8596f415072b).&#x20;

</details>

<details>

<summary><strong>Will I receive a renewal invoice via PayPal?</strong></summary>

Renewal invoices are not issued for PayPal subscriptions. After each renewal, PayPal sends a payment receipt to your email.

You can also download receipts from the Account Management Portal. See [Get receipts](#get-receipts) for instructions.

</details>

<details>

<summary>How to change my payment method?</summary>

It is not currently possible to change the payment method for an active subscription.\
To use a different payment method, wait until the current subscription expires, then purchase a new subscription using the preferred method.

Your data will remain safe and **will not be lost if the subscription expires**.

</details>


# SAML SSO

This page explains how to set up and use SAML SSO in Termius, including authentication flow, encryption password requirements, and configuration with identity providers.

## Overview

SAML SSO enables organizations to authenticate users in Termius through an external identity provider (IdP).

Instead of managing separate credentials for Termius, users sign in using the same identity system already used across the organization.

This approach centralizes authentication, simplifies user management, and aligns Termius access with existing security and compliance policies.

{% hint style="info" %}
SAML SSO is available as an add-on in the Termius Business plan.
{% endhint %}

### Set up encryption password

Even when signing in with SAML SSO, you still need to set up an **encryption password** in Termius.

This password is used to encrypt and decrypt your data within the Termius app, including credentials, SSH keys, and more. It is separate from your SSO login and is never shared with your identity provider.

Your SAML SSO credentials authenticate your account, while the encryption password protects your data.

{% hint style="warning" %}
Store your encryption password in a password manager. If you forget it and need to reset it, **Termius** **won't be able to decrypt your data**. This means you will lose access to your data and have to start from scratch.
{% endhint %}

{% hint style="info" %}
Find more information about how encryption works in Termius in the [Encryption overview](/security/encryption-overview).
{% endhint %}

***

## SAML SSO providers in Termius

Termius uses WorkOS to provide support for a variety of SAML SSO providers. Major providers include Google, Okta, OneLogin, Microsoft Azure Active Directory, Auth0, Duo Security, and many others.

If your preferred SAML SSO provider is not listed, you can opt for Custom SAML SSO or Custom OpenID configurations.

<details>

<summary><strong>SAML SSO providers list</strong></summary>

<table data-header-hidden data-full-width="true"><thead><tr><th>SSO Provider</th></tr></thead><tbody><tr><td>ADP OpenID Connect</td></tr><tr><td>Auth0</td></tr><tr><td>Azure AD SAML</td></tr><tr><td>CAS SAML</td></tr><tr><td>ClassLink</td></tr><tr><td>Cloudflare</td></tr><tr><td>CyberArk SAML</td></tr><tr><td>Duo SSO</td></tr><tr><td>Google SAML</td></tr><tr><td>JumpCloud SAML</td></tr><tr><td>Keycloak</td></tr><tr><td>LastPass</td></tr><tr><td>Microsoft AD FS SAML</td></tr><tr><td>miniOrange</td></tr><tr><td>NetIQ</td></tr><tr><td>Okta SAML</td></tr><tr><td>OneLogin SAML</td></tr><tr><td>Oracle SAML</td></tr><tr><td>PingFederate SAML</td></tr><tr><td>PingOne SAML</td></tr><tr><td>Rippling SAML</td></tr><tr><td>Salesforce</td></tr><tr><td>Shibboleth Generic SAML</td></tr><tr><td>Shibboleth Unsolicited SAML</td></tr><tr><td>SimpleSAML.php</td></tr><tr><td>VMware</td></tr></tbody></table>

</details>

***

## Set up SAML SSO

<figure><img src="/files/D6isdTAnOZuxrgCkZrTb" alt=""><figcaption></figcaption></figure>

SAML SSO is available only as an add-on to the Business plan.

To **set up** SAML SSO:

1. Navigate to the [account management portal](https://account.termius.com/) > `SAML SSO`&#x20;
2. Click `Configure now`&#x20;
3. Add your domain(s), then click `Configure now`&#x20;
4. On the WorkOS setup page, select your identity provider from the list and follow the instructions

You can make changes to your configuration in `SAML SSO` > `Configure Provider` within the WorkOS settings page.

### Test your SAML SSO configuration with Termius

By default, once SAML SSO is set up, your account is in the hybrid mode - you already can use SAML SSO but you still have an option to log in with email and encryption password as a fallback.&#x20;

**To test your SAML SSO configuration:**

1. Ensure the test session on the WorkOS side passes successfully
2. Log out of your Termius account
3. Click `Continue with SAML SSO` on the login page
4. Enter your work email address and click `Continue`
5. You will be redirected to your identity provider's login page. Enter your credentials and log in
6. If the configuration is successful, you will be redirected back to Termius and logged in via SAML SSO

{% hint style="success" %}
After the successful test, you can **enforce** SAML SSO for your team by enabling the `Require to log in with SSO` toggle.
{% endhint %}

## Disable SAML SSO

You have an option to disable SAML SSO temporarily or completely.&#x20;

If you have issues with your provider and want to disable SAML SSO only temporarily, just disable the toggle `Require to log in with SSO`. Once disabled, you will be able to use just your email address and encryption password as a fallback.&#x20;

If you want to deactivate SAML SSO completely:&#x20;

1. Disable the toggle `Require to log in with SSO`
2. Remove your configuration via `SAML SSO` > `Configure Provider` within the WorkOS settings page


# Windows / Linux / macOS

New updates and improvements

## 2026

{% updates format="full" %}
{% update date="2026-06-25" %}

## 9.40.1

🛠️ Fixed several issues affecting session logging reliability.\
🛠️ Improved app performance when working with many hosts and groups.\
🛠️ Other stability improvements.
{% endupdate %}

{% update date="2026-05-28" %}

## 9.39.0

✨ Added the ability to remove SSH ID.

🛠️ Improved the app performance for accounts with many hosts.\
🛠️ Fixed an issue with SFTP local navigation not working after switching from a remote host.\
🛠️ Fixed an issue with dictation input (e.g., Wispr Flow) not working in the terminal on Windows.\
🛠️ Fixed an issue with SSH ID authentication with 1Password passkeys on Windows.\
🛠️ Fixed an issue with IP address syntax highlighting.\
🛠️ Fixed an issue with terminal tab selection on macOS in full-screen mode on external displays.\
🛠️ Other stability improvements.
{% endupdate %}

{% update date="2026-05-11" %}

## 9.38.2

🛠️ Fixed a bug with the login form when logging in from Settings.
{% endupdate %}

{% update date="2026-05-06" %}

## 9.38.1

✨ Introducing support for FIDO2 keys in SSH ID.\
✨ Added the ability to remove snippets from the terminal side panel.

\
🛠️ Other improvements in stability and performance.
{% endupdate %}

{% update date="2026-03-26" %}

## 9.37.6

🛠️ Fixed an issue with identity recommendations when using SSH ID.\
🛠️ Fixed incorrect display of port forwarding rule descriptions.\
🛠️ Other improvements in stability and performance.
{% endupdate %}

{% update date="2026-03-17" %}

## 9.37.5

🛠️ Fixed an issue where the scroll bar in the terminal was not visible.\
🛠️ Fixed an issue where the local drive could not be selected in SFTP.\
🛠️ Fixed an issue where files behind symbolic links can't be opened in SFTP.\
🛠️ Fixed an issue that caused the SFTP tab to become unresponsive.\
🛠️ Other improvements in stability and performance.
{% endupdate %}

{% update date="2026-03-09" %}

## 9.37.3 (4)

✨ **Terminal Emulation:** Added support for specifying **Linux** and **VT100** terminal types within Terminal settings.

🛠️ Fixed a bug causing an infinite spinner in SFTP when attempting to restore a disconnected session.\
🛠️ Fixed a bug that prevented users from exporting their biometric keys.\
🛠️ Other stability improvements.
{% endupdate %}

{% update date="2026-02-23" %}

## 9.37.2

🛠️ Fixed a bug with the terminal initialization on some Cisco devices.
{% endupdate %}

{% update date="2026-02-19" %}

## 9.37.1

🛠️ Fixed a bug where the terminal scrollbar could appear with an incorrect size.\
🛠️ Fixed an issue with the auto-save on the group form that could have rarely led to changes being overridden.\
🛠️ Other stability and performance improvements.
{% endupdate %}

{% update date="2026-02-09" %}

## 9.37.0

✨ Added support for ML-DSA key generation and authentication (requires server-side ML-DSA support).\
✨ Improved hotkey support for workspaces:\
\- `Cmd+S` (or `Ctrl+S`) is now used to save changes in the workspace (layout, focus mode, hosts list, tab names).\
\- `Cmd+.` (or `Ctrl+.`) is used for opening/closing the terminal side panel\
\- `Cmd+Shift+M` (or `Ctrl+Shift+M`) switches between the Focus and Split modes\
\- `Cmd+Option+arrows` (or `Ctrl+Alt+arrows`) switches between the terminals in the workspace in both modes\
\- You are open to customize it in `Termius > Settings > Shortcuts`

🛠️ Stability and performance improvements.
{% endupdate %}

{% update date="2026-02-05" %}

## 9.36.3

🛠️ Fixed several issues with SFTP connections.\
🛠️ Fixed a bug that didn't allow deleting the custom shortcut sets.\
🛠️ Other stability and performance improvements.
{% endupdate %}

{% update date="2026-01-20" %}

## 9.36.2

🛠️ Fixed a bug with the app startup on Intel-based Macs.
{% endupdate %}

{% update date="2026-01-20" %}

## 9.36.1

✨ You can now specify usernames and passwords for your hosts when importing from CSV.

🛠️ Other stability and performance improvements.
{% endupdate %}

{% update date="2026-01-14" %}

## 9.35.4

🛠️ Stability improvements.
{% endupdate %}
{% endupdates %}

## 2025

{% updates format="full" %}
{% update date="2025-12-22" %}

## 9.34.8

✨ SSH Certificates and Environment Variables are now free!

🛠️ Fixed an issue with sorting order in SFTP when connecting to a remote server.\
🛠️ Fixed an issue with Windows Hello access being denied, preventing users from signing in with a security key.\
🛠️ Fixed an issue on Windows with the inconsistent terminal width after running a snippet on multiple hosts from the Snippets screen.\
🛠️ Improved synchronization stability.\
🛠️ Other stability and performance improvements.
{% endupdate %}

{% update date="2025-12-18" %}

## 9.34.7

🛠️ Fixed a bug with identity deletion from the host edit form.
{% endupdate %}

{% update date="2025-12-10" %}

## 9.34.6

🛠️ Fixed a bug with connections switching in SFTP.\
🛠️ Fixed a bug with the Clear Terminal Buffer shortcut.\
🛠️ Other stability and performance improvements.
{% endupdate %}

{% update date="2025-12-01" %}

## 9.34.5

🛠️ Fixed an issue with the auto-save on the host form that occasionally led to changes being overridden.\
🛠️ Fixed the behavior of the “Clear terminal” shortcut to be consistent with the "clear" command in the terminal.\
🛠️ Fixed a bug with the Termius AppArmor profile that caused issues with starting new processes from Termius local terminal.\
🛠️ Other stability and performance improvements.
{% endupdate %}

{% update date="2025-11-25" %}

## 9.34.3 (4)

✨ Introducing SSH.id — device-bound, biometric-protected SSH keys you can provision anywhere using your SSH.id handle.\
✨ Added host icons for Rocky, Alma, Alpine, and Amazon Linux.

🛠️ Fixed an issue with Azure Cloud Sync.\
🛠️ Fixed a bug with Select All not working when used via the system menu.\
🛠️ Other stability and performance improvements.
{% endupdate %}

{% update date="2025-11-10" %}

## 9.33.0

✨ We've enhanced session log management. In addition to the last session log per host, you can now **save selected logs** to prevent them from being overwritten on the next connection. You can also **add comments** to these saved logs to briefly describe what the sessions were about.

🛠️ Other stability improvements.
{% endupdate %}

{% update date="2025-11-04" %}

## 9.32.4

🛠️ Fixed a bug that caused the app to hang when editing a host.\
🛠️ Fixed a bug in the multi-key export.\
🛠️ Stability and performance improvements.
{% endupdate %}

{% update date="2025-10-20" %}

## 9.32.3

🛠️ Fixed a bug where host chains were not saved and placeholders appeared empty in host form.\
🛠️ Fixed a bug where one of the processes stayed running after closing Termius.\
🛠️ Fixed a bug where the copy shortcut (CMD+C / Shift+CTRL+C) didn’t work in terminal logs.\
🛠️ Stability and performance improvements.
{% endupdate %}

{% update date="2025-10-09" %}

## 9.32.2

✨ Workspaces can now save and restore the working directory and running application. Get back to where you left off in seconds.\
✨ Local terminals can now be saved in workspace templates, allowing you to preserve your local development environment alongside remote connections.\
✨ Two new terminal themes were introduced: Flexoki Dark and Light.

🛠️ Replaced MD5 fingerprints by SHA256 fingerprints in connection flow.\
🛠️ Fixed a bug with renamed sessions resetting their names when dragged into a split view.\
🛠️ Stability and performance improvements.
{% endupdate %}

{% update date="2025-09-22" %}

## 9.31.5

🛠️ Fixed a bug with Ctrl‑J being treated incorrectly when bound as a tmux prefix.\
🛠️ Fixed a bug with cursor losing focus in the Hosts search bar.\
🛠️ Fixed a bug with host selection with the mouse.\
🛠️ Fixed a bug with hosts drag'n'drop into groups.\
🛠️ Fixed a bug when you couldn't duplicate a session after closing all panes but one in splitview/workspace\
🛠️ Fixed the AppArmor profile to reference a valid ABI on Ubuntu 22.04.\
🛠️ Other stability and performance improvements.
{% endupdate %}

{% update date="2025-09-16" %}

## 9.31.4

✨ Added support for ANSI OSC 52 for better copy-paste experience in the terminal.\
✨ Improved the app update experience. Removed auto-update to new versions. Updates now need to be initiated manually.

🛠️ Resolved startup failures on Ubuntu 24+ caused by AppArmor and Chromium sandbox interaction.\
🛠️ Improved SSH stability with PQC key exchange algorithms.\
🛠️ Adjusted traffic-light buttons position for macOS Tahoe 26.\
🛠️ Fixed a bug with session log dates.\
🛠️ Fixed in issue with pasting and running snippets in PowerShell.\
🛠️ Stability and performance improvements.
{% endupdate %}

{% update date="2025-08-25" %}

## 9.30.0

🛠️ Stability and performance improvements.
{% endupdate %}

{% update date="2025-08-18" %}

## 9.29.0

✨ **New Multiplayer (Terminal Sharing) with enhanced UX and control management**

* Multiplayer moved from the Side Panel to the Terminal tab.
* Added control management: only one participant can have input control at a time. Control can be changed via terminal shortcuts, mouse, or the tab control widget.
* Tab now displays multiplayer status, control widget, and participant list.
* Added split view support for multiplayer sessions.
* Participant’s terminal now closes automatically when sharing stops or disconnects (previously it stayed open).

🛠️ Stability and performance improvements.
{% endupdate %}

{% update date="2025-08-13" %}

## 9.28.0

✨ Added support for the `mlkem512-sha256,` `mlkem768-sha256`, and `mlkem1024-sha384` key exchange (KEX) methods. This support is limited to OpenSSH OQS-v9 and later when the server is configured to use only that KEX method.

🛠️ Stability and performance improvements.
{% endupdate %}

{% update date="2025-07-29" %}

## 9.27.0

✨ Added support for search in session logs.
{% endupdate %}

{% update date="2025-07-15" %}

## 9.26.0

🛠️ Fixed credentials inheritance in groups and hosts.\
🛠️ Minor UI adjustments in credentials form.\
🛠️ Local terminal and Serial connection now open in the current “New Tab” instead of creating separate tabs.\
🛠️ Other stability and performance improvements.
{% endupdate %}

{% update date="2025-07-02" %}

## 9.25.1

🛠️ Stability and performance improvements.
{% endupdate %}

{% update date="2025-07-01" %}

## 9.25.0

✨ Added support for the `mlkem768x25519-sha256` key exchange (KEX) method. This support is limited to OpenSSH 9.9 and later when the server is configured to use only that KEX method.\
✨ Running snippets on multiple hosts is now free. Go to snippets, select targets, and execute the command across your servers simultaneously.

🛠️ Stability and performance improvements
{% endupdate %}

{% update date="2025-06-17" %}

## 9.22.0

✨ Run snippets on multiple targets in a separate tab for easier tracking and multitasking.

🛠️ Stability and performance improvements
{% endupdate %}

{% update date="2025-06-03" %}

## 9.21.2

✨ Added Logs feature. Now, you can view the latest terminal session on any host. Logs are synced across devices and shared with your team.

🛠️ Stability and performance improvements
{% endupdate %}

{% update date="2025-05-13" %}

## 9.20.0

🛠️ Fixed an issue where Autocomplete Helium would close and not reopen when clicking outside the dialog.\
🛠️ Stability and performance improvements.
{% endupdate %}

{% update date="2025-05-05" %}

## 9.19.4

🛠️ Stability and performance improvements.
{% endupdate %}

{% update date="2025-04-29" %}

## 9.19.2

🛠️ Stability and performance improvements.
{% endupdate %}

{% update date="2025-04-22" %}

## 9.19.0

✨ Enhanced navigation for Autocomplete AI and password suggestions.\
✨ FIDO2 is now available in the Starter plan.

🛠️ Stability and performance improvements
{% endupdate %}

{% update date="2025-04-11" %}

## 9.18.1

🛠️ Stability and performance improvements.
{% endupdate %}

{% update date="2025-04-04" %}

## 9.18.0

✨ Now, Autocomplete can be temporarily disabled for the day or the current session.\
✨ Pressing Esc now completely dismisses Autocomplete Helium without immediately reappearing and will re-trigger after executing a command.\
✨ Enhanced navigation in Autocomplete Helium.\
✨ Workspaces now allow restoring the last state, including layout, ordering and titles.

🛠️ Fixed Host Chain in Workspaces.
{% endupdate %}

{% update date="2025-03-21" %}

## 9.17.1

✨ Broadcast mode is now available in the Starter plan.\
✨ Enabled hotkey processing through the Autocomplete Helium input field.

🛠️ Fixed an issue where Autocomplete Helium appeared in interactive terminal applications.\
🛠️ Fixed Autocomplete Helium’s positioning for zsh in local terminals.\
🛠️ Resolved an issue where the Command Palette was inaccessible due to alerts within the SFTP tab.\
🛠️ Fixed a bug that caused the app to duplicate symbols in terminals during Broadcast mode when reconnected.\
🛠️ Other stability improvements.
{% endupdate %}

{% update date="2025-03-06" %}

## 9.16.0

✨Helium Autocomplete now suggests options for the most popular commands.

🛠️ Fixed CVE-2023-48795 ("Terrapin Attack")
{% endupdate %}

{% update date="2025-02-24" %}

## 9.15.2

✨ Open New Tab and start typing to search hosts right away - no CMD+K required\
✨ Hosts are now at the top of the list in the Command Palette
{% endupdate %}

{% update date="2025-02-20" %}

## 9.15.1

✨ Helium Autocomplete now suggests Snippets.\
✨ Create and save workspaces from previously closed connections at the New Tab screen.\
✨ Links in the terminal now require the **Cmd** key on macOS or the **Ctrl** key on Windows and Linux to open, preventing accidental clicks.

🛠️ Fixed the bug when the app didn't recognise PuTTY keys when connecting with enabled agent forwarding.
{% endupdate %}

{% update date="2025-02-07" %}

## 9.14.0

✨ Helium Autocomplete now suggests file and folder paths much faster.\
✨ Helium Autocomplete can now fill passwords in the terminal.\
✨ Introducing New Tab, a quicker way to connect and reopen recent connections.
{% endupdate %}

{% update date="2025-01-28" %}

## 9.13.0

✨ Helium Autocomplete now provides file and folder path suggestions.\
✨ Added the ability to paste commands using the Tab key.\
✨ Added the ability to edit snippets from the side panel in a terminal.

🛠️ Other stability improvements.
{% endupdate %}

{% update date="2025-01-09" %}

## 9.12.0

✨Helium autocomplete now supports suggestions from shell history.
{% endupdate %}

{% update date="2025-01-07" %}

## 9.11.0

✨ Introducing Workspaces: a better way to navigate multiple tabs. You can now switch between Split View and Focus Mode. Select one specific terminal to focus on while the remaining terminals are conveniently displayed as a list.

🛠️ UI and stability improvements.
{% endupdate %}
{% endupdates %}

## 2024

{% updates format="full" %}
{% update date="2024-12-20" %}

## 9.10.0

✨ A new version of Helium Autocomplete is here. It introduces an input field that allows you to input commands without any delays, even on high-latency networks. Also, this release includes significant groundwork for further autocomplete improvements. Stay tuned for upcoming releases.

🛠️ UI and stability improvements.
{% endupdate %}

{% update date="2024-12-13" %}

## 9.9.3

🛠️ Stability improvements.
{% endupdate %}

{% update date="2024-12-05" %}

## 9.9.0

✨ We've added Autocomplete Helium, our first step towards transforming the autocomplete user experience. In this release, you can convert text into shell commands with AI by pressing the Down Arrow in the terminal.

🛠️ Stability improvements.
{% endupdate %}

{% update date="2024-11-29" %}

## 9.8.7

🛠️ Fixed a bug during the 2FA setup when the QA code couldn't be scanned in some cases.\
🛠️ Other UI and stability improvements.
{% endupdate %}

{% update date="2024-11-15" %}

## 9.8.6

✨ New app icon.

🛠️ Stability improvements.
{% endupdate %}

{% update date="2024-11-04" %}

## 9.8.5

✨ Added the ability to duplicate port forwarding rules.\
✨ Update brand colors for host icons slightly.

🛠️ Stability improvements.
{% endupdate %}

{% update date="2024-10-30" %}

## 9.8.4

🛠️ Stability improvements.
{% endupdate %}

{% update date="2024-10-20" %}

## 9.8.3

🛠️ Fixed a bug that could freeze the application right after opening a Command Palette.\
🛠️ Other stability improvements.
{% endupdate %}

{% update date="2024-09-20" %}

## 9.7.0

✨ Six new terminal themes were introduced: Kanagawa Wave, Kanagawa Dragon, Kanagawa Lotus, Hacker Blue, Hacker Green, and Hacker Red.

🛠️ Fixed a bug when the font was not set up correctly in the terminal when you connect to a host in a new window.\
🛠️ Fixed a bug when reconnecting a session within a Split View was not possible.\
🛠️ Other stability improvements.
{% endupdate %}

{% update date="2024-09-16" %}

## 9.6.1

✨Vault management is now available for team users. Set your teammates' permissions to access vaults right in the app.

🛠️ Fixed a bug with connections using <hmac-sha2-512-etm@openssh.com> and <chacha20-poly1305@openssh.com>.\
🛠️ Other stability improvements.
{% endupdate %}

{% update date="2024-09-03" %}

## 9.5.0

✨ Two new terminal themes were introduced: Everforest Dark and Everforest Light.
{% endupdate %}

{% update date="2024-08-23" %}

## 9.4.1

✨ Vault management got easier with a new Vault Filter. Select a single vault or all vaults with one click.

🛠️ Fixed a bug with local terminal opening when the app could open two terminals instead of one
{% endupdate %}

{% update date="2024-08-20" %}

## 9.3.3

🛠️ Stability improvements
{% endupdate %}

{% update date="2024-08-15" %}

## 9.3.2

🛠️ Fixed a bug with the SFTP Actions menu.
{% endupdate %}

{% update date="2024-08-13" %}

## 9.3.0

✨ Granting team vault permissions is now easier. Set user permissions in the app when they join the team

🛠️ Fixed a bug with the "Use Option key as meta" setting\
🛠️ Fixed a bug with the wrong commands' order when executing a snippet in PowerShell\
🛠️ Other stability improvements
{% endupdate %}

{% update date="2024-08-02" %}

## 9.2.0

✨ Updated existing fonts to support Nerd Font v3. Here is the list of nerd fonts in the application: FiraCode, JetBrains Mono, Meslo, Source Code Pro, Source Code Pro Medium, AnonymousPro, DejaVu Sans Mono, Droid Sans Mono, Fira Mono, Fira Mono Medium, Inconsolata, Ubuntu Mono, Cascadia Code.\
✨ Added bold weight for DejaVu Sans Mono, Inconsolata-g, Cascadia Code, Fira Code, JetBrains Mono, Meslo.\
✨ Improved overall terminal performance and made smaller fonts more dense.\
✨ Added the ability to close a tab with a middle mouse click.\
✨ The "+" (New Tab) button is now always visible on the interface.\
✨The app now auto-focuses the PIN field when connecting with -sk SSH key pairs

🛠️ Fixed a dynamic port forwarding when the bind address is set to "localhost."
{% endupdate %}

{% update date="2024-07-26" %}

## 9.1.1

🛠️ Stability improvements
{% endupdate %}

{% update date="2024-07-11" %}

## 9.1.0

✨ Vault management is now available in the app. Create and update vaults and manage permissions without leaving the app.

🛠️ Stability improvements.
{% endupdate %}

{% update date="2024-07-11" %}

## 9.0.0

✨ Added horizontal tabs to simplify navigation between Vault, SFTP, and connections.\
✨ Consolidated all data under the Vaults tab, including Keychain and Known Hosts, which has been moved from settings.

✨ Introducing the command palette feature. Hit `CTRL+K` (Linux/Windows) or `CMD+K` (Mac) to access all your tabs and hosts in one place.

* Quickly jump between tabs with `CTRL+J` or `CMD+J`.
* Start a new connection with `CTRL+T` or `CMD+T`.

✨ Three new terminal themes were introduced: Night Owl, Light Owl, Aura

🛠️ Fixed minimize/maximize buttons on Windows
{% endupdate %}

{% update date="2024-06-20" %}

## 8.12.9

🛠️ Fixed connections to the ZTE equipment\
🛠️ Stability improvements
{% endupdate %}

{% update date="2024-06-12" %}

## 8.12.7

✨ Three new terminal themes were introduced: Rosé Pine, Rosé Pine Moon, Rosé Pine Dawn

🛠️ Improved stability of terminal sharing\
🛠️ Other stability improvements
{% endupdate %}

{% update date="2024-05-23" %}

## 8.12.6

🛠️ Stability improvements
{% endupdate %}

{% update date="2024-05-17" %}

## 8.12.4

🛠️ Fixed a bug when the focus was not set in the terminal when un-minimizing the app.\
🛠️ Other UI and stability improvements.
{% endupdate %}

{% update date="2024-05-15" %}

## 8.12.3

✨ Added the ability to select and copy the instructions during keyboard-interactive authentication.
{% endupdate %}

{% update date="2024-05-07" %}

## 8.12.2

🛠️ Fixed SSH connections with 2FA
{% endupdate %}

{% update date="2024-05-06" %}

## 8.12.1

✨ Three new terminal themes were introduced: Cobalt2, Octocat Dark, Octocat Light\
✨ Added support for diffie-hellman-group16-sha512 and diffie-hellman-group18-sha512 key exchange methods\
✨ Added support for <rsa-sha2-256-cert-v01@openssh.com> and <rsa-sha2-512-cert-v01@openssh.com> host key types

🛠️ Fixed SSH connections with SSH certificates for RSA keys\
🛠️ Stability improvements
{% endupdate %}

{% update date="2024-05-03" %}

## 8.12.0

✨ Three new terminal themes were introduced: Cobalt2, Octocat Dark, Octocat Light

🛠️ Stability improvements
{% endupdate %}

{% update date="2024-04-30" %}

## 8.11.2

🛠️ Stability improvements
{% endupdate %}

{% update date="2024-04-10" %}

## 8.11.0

✨ Added support for biometric keys on Windows based on the Windows Hello APIs.\
✨ Four new terminal themes were introduced: Ayu Dark, Ayu Light, Cyberpunk, and Cyberpunk Scarlet.\
✨ Enhanced terminal autocomplete stability.

🛠️ Other stability and UI improvements.
{% endupdate %}

{% update date="2024-03-28" %}

## 8.10.4

✨ Generate Snippets and convert text to command with AI for free. In Settings > Terminal, enable Autocomplete to use AI without switching context. Available for all users with an account.

🛠️ Fixed a bug with AWS sync when EC2 instance names were not updated after being changed on the AWS side.\
🛠️ Other stability and UI improvements.
{% endupdate %}

{% update date="2024-03-20" %}

## 8.10.2

🛠️ Stability improvements
{% endupdate %}

{% update date="2024-03-09" %}

## 8.10.0

✨ Three new terminal themes were introduced: Romania Night, Romania Day, and Aubergine\
🛠️ Fixed a bug when hardware keys were not linked to hosts automatically during the connection flow\
✨ Other stability and UI improvements
{% endupdate %}

{% update date="2024-02-28" %}

## 8.9.9

🛠️ Fixed a bug with inconsistent ordering for history if connections were started in bulk from a group\
🛠️ Fixed a bug when you couldn't delete a tag with a long name\
🛠️ Fixed a bug with proxy settings editing\
🛠️ Fixed a bug when the focus was not set automatically when you closed one of the panes in the split view\
🛠️ Fixed a bug when the focus was not set when drag'n'drop a terminal into a split view\
🛠️ Fixed a bug in SFTP when the app could hang if you drag the file into a removed directory\
🛠️ Fixed the bugs in the dialogs presented on the SFTP screen\
🛠️ Fixed a bug with item selection on the Port Forwarding screen\
🛠️ Improved performance when handling multiple entities at once\
🛠️ Other stability improvements
{% endupdate %}

{% update date="2024-02-09" %}

## 8.9.7

✨ Three new terminal themes were introduced: Peach Fresh, 1984 Dark, and 1984 Light\
✨ Improved how the multi-line package names are presented in the side panel

🛠️ Fixed a bug with maximizing/minimizing by double-clicking the top bar\
🛠️ Other stability improvements
{% endupdate %}

{% update date="2024-01-24" %}

## 8.9.6

🛠️ Fixed a bug when, in some cases, viewers couldn't join the shared terminal session\
🛠️ Other stability improvements
{% endupdate %}

{% update date="2024-01-15" %}

## 8.9.4

🛠️ Stability Improvements.
{% endupdate %}

{% update date="2024-01-11" %}

## 8.9.4

🛠️ Stability Improvements.
{% endupdate %}
{% endupdates %}

## 2023

{% updates format="full" %}
{% update date="2023-12-27" %}

## 8.9.1

🛠️ Fixed snippet search in the side panel in the terminal\
🛠️ Other minor UI improvements
{% endupdate %}

{% update date="2023-12-15" %}

## 8.9.0

✨ Introduced four new terminal themes: Winter Night, Winter Day, Tokyo Night, and Tokyo Day

🛠️ Fixed a bug when using port forwarding with biometric keys\
🛠️ Other minor UI improvements
{% endupdate %}

{% update date="2023-12-11" %}

## 8.8.3

🛠️Stability Improvements.
{% endupdate %}

{% update date="2023-12-04" %}

## 8.8.2

✨ New side panel in the terminal: the appearance of the side panel now reflects your selected terminal color theme. Open the side panel via Cmd+S on macOS and Ctrl+S on Windows/Linux to execute snippets, browse your history commands, or change terminal appearance.\
✨ Added a Productivity tab in the terminal side panel so now you can share your terminal session and change autocomplete settings from there.

🛠️ Stability improvements.
{% endupdate %}

{% update date="2023-12-02" %}

## 8.7.3

🛠️Stability Improvements.
{% endupdate %}

{% update date="2023-11-30" %}

## 8.7.2

✨ Autocomplete now suggests correct paths after the terminal buffer is cleared.

🛠️ Fixed path suggestion in autocomplete for the home directory.\
🛠️ Fixed path suggestions for folders with spaces.
{% endupdate %}

{% update date="2023-11-19" %}

## 8.6.1

🛠️Stability Improvements.
{% endupdate %}

{% update date="2023-11-14" %}

## 8.6.0

✨ Introduced four new terminal themes: Catppuccin Latte, Catppuccin Mocha, Diwali, Movember\
✨ Autocomplete path suggestions are now case-insensitive.\
✨ Folders starting with a dot are now suggested in autocomplete without needing to type the dot.\
✨ Autocomplete history suggestion has an improved ranking system.\
✨ Autocomplete now suggests history commands for completion when a match is found anywhere within the command.\
✨ Added ability to change vault while creating a PF rule via the PF Wizard

🛠️ Fixed a bug when identity wasn't shown in the Host Edit form after being selected from the password field

📝 You can enable autocomplete in Settings → Terminal → Autocomplete (Beta)
{% endupdate %}

{% update date="2023-11-07" %}

## 8.5.2

🛠️ Fixed an issue with the re-login screen displayed for users without an account
{% endupdate %}

{% update date="2023-11-03" %}

## 8.5.0, 8.5.1

✨ Added navigation in autocomplete via the Tab button. To supercharge your terminal experience, enable Autocomplete (beta) in Settings → Terminal.\
✨ Updated visual style of context menus.\
✨ Enhanced the host and group edit screens.
{% endupdate %}

{% update date="2023-10-12" %}

## 8.4.0

✨ New features for Snippets that you've been asking for:

* Now you can run your snippets on multiple hosts at the same time and can quickly check the results of its execution.
* For cases when you run particular snippets on the same hosts, you can now select default targets for faster execution.

✨ New terminal terminal themes: Atom One Dark, Atom One Light, Dia De Muertos, and Halloween

🛠️ Fixed a rare issue when running a snippet from the right side panel on particular versions of PowerShell and the first character gets removed\
🛠️ Other stability improvements
{% endupdate %}

{% update date="2023-09-18" %}

## 8.2.0

✨ Introduced six new terminal themes: Gruvbox Dark, Gruvbox Light, Material Dark, Material Light, Manhattan, and Plastic World
{% endupdate %}

{% update date="2023-09-07" %}

## 8.1.1-2

✨ Added support for the codepage 850 charset

🛠️ Fixed an issue: snippets packages haven't been displayed on the "Add a package" field when creating/editing a snippet.
{% endupdate %}

{% update date="2023-08-30" %}

## 8.1.0

✨ Added the auto-reconnect for SSH sessions.

🛠️ Stability and performance improvements.
{% endupdate %}

{% update date="2023-08-16" %}

## 8.0.5

🛠️ Fixed a bug in autocomplete in PowerShell when the text was not correctly erased in some cases
{% endupdate %}

{% update date="2023-08-04" %}

## 8.0.3-4

🛠️ Terminal color schemes improvements\
🛠️ Fixed bugs in the Port Forwarding wizard\
🛠️ Fixed a bug with shell type checking\
🛠️ Other stability improvements
{% endupdate %}

{% update date="2023-07-18" %}

## 8.0.2

🛠️ Fixed a bug when the app demanded to log in multiple times after a password change\
🛠️ Fixed an issue with the app freezing when scrolling a team members list
{% endupdate %}

{% update date="2023-07-07" %}

## 8.0.1

🛠️ Fixed files and directory suggestions for commands used with sudo.\
🛠️ Fixed an issue with the autocomplete enabling script being executed again when adding a session to a split view.
{% endupdate %}

{% update date="2023-06-22" %}

## 8.0.0

**✨ Team Vault**: a new way to share data with the team.

* Now, in addition to host groups and snippets sharing, your team can share keys, identities, port forwarding rules, and known hosts. Working in a team is now much easier, thanks to Vaults.

✨ Added ability to edit the Credentials Sharing mode for Hosts and Groups.
{% endupdate %}

{% update date="2023-06-16" %}

## 7.59.9

🛠️ Fixed a bug experienced by some users when the app gets blank when using SSH or SFTP.
{% endupdate %}

{% update date="2023-06-12" %}

## 7.59.7

🛠️ Fixed the order of execution of snippet commands in Power Shell.\
🛠️ Fixed a bug when the 1st line was not visible in autocomplete dialog for users on a free account.
{% endupdate %}

{% update date="2023-05-31" %}

## 7.59.5

🤖 Generate shell script from a description using the power of AI in a terminal.\
✨ Added autocomplete for paths and history commands in the local terminal.\
✨ Added import of the known hosts from the \~/.ssh/known\_hosts file.\
✨ Added ability to convert a known host into the Host in Termius.\
✨ Setting the UTF-8 locale for the local terminal by default.

🛠️ Fixed missing Enter and Tab key presses in the Terminal when autocomplete is on.\
🛠️ Fixed execution of multi-line snippets in PowerShell.\
🛠️ Fixed the issues with tmux shortcuts.\
🛠️ Fixed symlinks opening in SFTP.\
🛠️ Fixed some issues with Port Forwarding connectivity.
{% endupdate %}

{% update date="2023-05-18" %}

## 7.59.2

* Fixed screen clearing handling when the broadcast mode is enabled in Split View.
* Improved the process of establishing a connection to servers that don't support 'exec' channels.
  {% endupdate %}

{% update date="2023-05-12" %}

## 7.59.0-1

* We enhanced the Broadcast Input feature. Now you can send hotkeys and escape sequences to all Split View panes.
* Added the ability to choose the authentication method during the connection process if you forgot to specify one in advance. Previously, in such a case, you were limited by password authentication only.
  {% endupdate %}

{% update date="2023-04-28" %}

## 7.58.7

* Resolved an issue that could have led to unexpected host authentication failures in certain scenarios.
  {% endupdate %}

{% update date="2023-04-26" %}

## 7.58.6

* Fixed a rare issue when connections to particular servers with ed22519 and ECDSA host keys didn't work.
* Fixed an issue with an incorrect port while connecting via telnet on the connection flow screen.
  {% endupdate %}

{% update date="2023-04-17" %}

## 7.58.5

* Stability improvements.
  {% endupdate %}

{% update date="2023-04-10" %}

## 7.58.4

* Stability improvements.
  {% endupdate %}

{% update date="2023-03-28" %}

## 7.58.3

* Fixed a change of terminal themes when switching between autocomplete suggestions.
  {% endupdate %}

{% update date="2023-03-24" %}

## 7.58.2

* Fixed a change of terminal themes when switching between autocomplete suggestions.
  {% endupdate %}

{% update date="2023-03-23" %}

## 7.58.0, 7.58.1

* Change the **appearance of your terminal** without leaving it. Open a side panel with **Cmd+S** on Mac or **Ctrl+S** on PC, and select colors and fonts that work best for you.
* Autocomplete of your paths and directories is now available in the dash, fish, and tcsh shells.
* Other stability improvements.
  {% endupdate %}

{% update date="2023-03-17" %}

## 7.57.0

* Create Snippets with Termius' assistance. Describe what the command should do, and Termius will make a Snippet for it 🚀
* Also, we improved sorting by name and fixed a few minor UI issues.
  {% endupdate %}

{% update date="2023-02-28" %}

## 7.56.4

* Fixed compatibility issue with macOS 10.15 and Ubuntu 18.04 when starting the app 🔧
* Improved password auto-completion UX.
  {% endupdate %}

{% update date="2023-02-24" %}

## 7.56.3

* PowerShell is now a default shell on Windows.
* Added password manager to terminal autocomplete.
  {% endupdate %}

{% update date="2023-02-01" %}

## 7.56.0

* **Redesigned terminal autocomplete** to be more user-friendly and visually appealing. Autocomplete suggestions now appear faster than before, allowing you to navigate and execute commands more efficiently.
* Fixed issues with the import of some SSH keys.
* Fixed issue with unsuccessful connections to hosts from History.
* Fixed the bug with copy/paste shortcuts not working when connecting to a group or to several hosts.
* Other fixes and performance improvements.
  {% endupdate %}

{% update date="2023-01-13" %}

## 7.55.2

* Fixed issues when users saw a black screen in the app.
* Fixed a bug when session logs were not available for new connections.
  {% endupdate %}
  {% endupdates %}

## 2022

{% updates format="full" %}
{% update date="2022-12-23" %}

## 7.54.3

* Fixed auto-update on Windows.
  {% endupdate %}

{% update date="2022-12-22" %}

## 7.54.2

* Fixed the bug when **Autocomplete for file paths** couldn't be enabled.
  {% endupdate %}

{% update date="2022-12-19" %}

## 7.54.1

* **Sync with Microsoft Azure**. Now it's possible to automatically sync details of your virtual machines from Azure to Termius and organize them into subgroups.
* Added autocomplete for command options and arguments in the terminal.
* Added autocomplete for Shell History.
* Added the possibility to easily save commands from Shell History into snippets.
* Extended the emoji support in the terminal. Fixed several zsh prompts.
  {% endupdate %}

{% update date="2022-12-09" %}

## 7.53.0

* Fixed issues when SSH connections with keys could not start
  {% endupdate %}

{% update date="2022-11-29" %}

## 7.52.1

* Improved autocomplete for directories.
* Added History sync.
* Fixed the bug when the start of the app was long for some users.
  {% endupdate %}

{% update date="2022-11-22" %}

## 7.52.0

* Shared connections in teams. Now you can see who's connected to which shared servers and join their terminal sessions to do your job collaboratively.
* Fix the ability to edit host details after a connection to a host fails.
* Fixed the bug with host creation when trying to export a key to the server.
  {% endupdate %}

{% update date="2022-11-10" %}

## 7.51.1

* An improved billing page.
  {% endupdate %}

{% update date="2022-11-03" %}

## 7.51.0

* Fixed incorrect handling of mouse events in the terminal.
* Fixed issues with keyboard-interactive prompts.
  {% endupdate %}

{% update date="2022-10-25" %}

## 7.50.1

* Made keyword highlighting enabled by default.
* Fixed the display of keyboard-interactive prompts during the SSH connection process.
* Fixed an issue potentially causing the desktop app to be out of sync with the mobile apps.
  {% endupdate %}

{% update date="2022-10-24" %}

## 7.50.0

* Added highlighting for Error, Warning, Info, and other keywords in the terminal. The list of keywords that will be highlighted can be found in Preferences > Terminal.
* Added password auto-completion in the terminal.
  {% endupdate %}

{% update date="2022-10-03" %}

## 7.49.0

* Ability to have up to 16 sessions in Split View.
* Ability to resize a Split View pane.
* Improved SFTP read and write performance.
* Identities autocomplete in the Username and Password fields. It is now easy to find the right identity and create one based on the credentials from other hosts
* Minor UI/UX improvements.
  {% endupdate %}

{% update date="2022-09-12" %}

## 7.48.0

* Made it possible to rearrange panes in Split View.
* Fixed an issue with scrolling on Linux.
* Fixed the inability to create a snippet using the snippet picker panel.
  {% endupdate %}

{% update date="2022-08-31" %}

## 7.47.3

* Fixed issues with the List view.
  {% endupdate %}

{% update date="2022-08-31" %}

## 7.47.2

* Provided some visual improvements.
* Fixed the inability to create file type associations using the 'Open with' option.
  {% endupdate %}

{% update date="2022-08-29" %}

## 7.47.1

* Fixed the import functionality.
  {% endupdate %}

{% update date="2022-08-26" %}

## 7.47.0

* Custom layouts in Split View: a pane can now be split vertically or horizontally.
* Ability to move a session in Split View back to a separate tab.
* Suggestions for directories in Autocomplete.
* Better performance of the terminal in SSH sessions.
* A fix for the issue with FIDO2 keys in host chains.
* Several more bug fixes and improved stability.
  {% endupdate %}

{% update date="2022-08-17" %}

## 7.46.4

* Cloud sync improvements: ability to organize hosts synced with AWS and DigitalOcean into subgroups.
* Fixed an issue causing usernames / passwords to be saved despite the 'Save to host' option being disabled.
* Fixed inability to restore an App Store subscription.
* Other minor bug fixes
  {% endupdate %}

{% update date="2022-08-02" %}

## 7.46.2

* SSH certificates. Now a Pro user can attach an OpenSSH certificate to a key and use it for authentication.
* Added keyboard shortcuts for switching between panes in split view and focusing on the multi-exec field. To see or change the available shortcuts, go to **Preferences** > **Shortcuts.**
* Improved the performance of the terminal when one has a large number of snippets.
* Improved the stability of synchronization and the app as a whole.
* Optimized the performance of the local terminal (unavailable in the App Store version of Termius).
* Fixed duplication of tags.
* Fixed host chain connections to servers that use public-key authentication only and have no ssh key provided.
  {% endupdate %}

{% update date="2022-07-21" %}

## 7.45.3

* Fixed inability to connect via a double-click.
  {% endupdate %}

{% update date="2022-07-20" %}

## 7.45.2

* Stability improvements.
  {% endupdate %}

{% update date="2022-07-18" %}

## 7.45.1

* Added the ability to execute a command or snippet in all terminals in a split view.
* Added the ability to open Termius in a new window.
* Provided various UX/UI improvements.
* Fixed issues with connecting to Mikrotik devices through SFTP.
  {% endupdate %}

{% update date="2022-07-04" %}

## 7.44.0

* Snippets and SFTP are no longer paid features.
* A new option in the host context menu allowing you to copy and share an ssh link.
* Ability to generate security keys (ed25519-sk, ecdsa-sk).
* Ability to import discoverable (aka resident) SSH keys from FIDO2 devices.
* Performance improvements to SFTP concerning file transfer from local to remote hosts.
* Double click on a history item connects you to the host.
* Fixed the inability to re-connect and a few other issues.
  {% endupdate %}

{% update date="2022-06-27" %}

## 7.43.3

* Split view. [You can open up to 4 terminals inside a single tab](https://support.termius.com/hc/en-us/articles/8003720178457).
* Enterprise SSO. Termius supports more than 30 identity providers.
  {% endupdate %}

{% update date="2022-06-21" %}

## 7.42.2

* Fixed incorrectly displayed value of the subscription price.
  {% endupdate %}

{% update date="2022-06-15" %}

## 7.42.1

* Fixed connections with parameters set in a group.
  {% endupdate %}

{% update date="2022-06-13" %}

## 7.42.0

* Fixed the Autocomplete functionality behaving incorrectly in local and SSH connections with PowerShell.
* Stability and performance improvements
  {% endupdate %}

{% update date="2022-05-31" %}

## 7.41.3

* Fixed a sync issue caused by the import functionality.
  {% endupdate %}

{% update date="2022-05-23" %}

## 7.41.2

* Snippet Packages allows organizing snippets into one-level groups to put the same type of snippets in one place and simplify snippet management in general.
* It's easier now to create port forwarding rules.
* Added support for discoverable (resident) ecdsa-sk and ed25519-sk keys.
* Fixed bugs with ecdsa-sk, and ed25519-sk keys in macOS App Store build.
  {% endupdate %}

{% update date="2022-05-04" %}

## 7.40.2

* Fixed an issue causing a blank screen on start.
  {% endupdate %}

{% update date="2022-05-02" %}

## 7.40.1

* Automatic detection of server OSes allowing Termius to show their logos instead of generic icons.
* ed25519-sk and ecdsa-sk keys are working without admin permissions on Windows.
* The DigitalOcean integration imports a droplet's public IP address if it exists, or otherwise a private one.
* Fixed sorting by name.
* Fixed an issue causing the terminal to have incorrect size in Telnet sessions.
* Renamed the subscription plans.
  {% endupdate %}

{% update date="2022-04-19" %}

## 7.39.0

* Ability to execute a snippet in all active sessions.
  {% endupdate %}

{% update date="2022-04-11" %}

## 7.38.2

* Sync with AWS and DigitalOcean clouds. Automatic sync of changes in your infrastructure at AWS or DigitalOcean to Termius will save you from the nightmare of updating data every time your system scales up/down.
* Added the ability to manually switch between the app's color schemes.
* Added the ability to switch terminal emulation types in Preferences.
* Updated color palettes in some of the terminal themes.
* Fixed an issue causing the terminal to have incorrect size in Telnet sessions.
* Fixed inability to use port forwarding with host chaining.
* Fixed an issue with the input mode in terminal session sharing.
* Stability and performance improvements.
  {% endupdate %}

{% update date="2022-04-04" %}

## 7.37.2

* Fixed an issue with CSV import.
  {% endupdate %}

{% update date="2022-03-30" %}

## 7.37.1

* Fixed an issue with CSV import.
  {% endupdate %}

{% update date="2022-03-29" %}

## 7.37.0

* Host chaining setting in groups for easier management of infrastructure involving advanced security. It's now possible to specify a host chain consisting of jump or bastion host servers for many hosts at once – by specifying it in the group containing the hosts.
* Ability to generate a biometric key based on the Secure Enclave and use it for SSH authentication. The function is available for MacOS and can be found on the Keychain screen.
* Ability to import from CSV and MobaXterm.
* Performance improvements concerning scrolling in the terminal.
  {% endupdate %}

{% update date="2022-03-25" %}

## 7.36.1

* Stability improvements.
  {% endupdate %}

{% update date="2022-03-23" %}

## 7.36.0

* Added the ability to record and view session logs.
* Fixed import of hosts from ssh config without Hostname parameter.
* Added a convenient way to export SSH public key to a host.
* Added support for non-resident SK keys.
  {% endupdate %}

{% update date="2022-03-17" %}

## 7.35.7

* Fixed the placement of the Autocomplete and 'Share session' options.
* Fixed a screen flickering issue occurring on registration.
  {% endupdate %}

{% update date="2022-03-11" %}

## 7.35.6

* Fixed problems with closing the application.
  {% endupdate %}

{% update date="2022-03-10" %}

## 7.35.5

* Fixed an issue preventing the app from a restart after an update has been downloaded.
* Fixed a bug causing a crash report to appear when the app is started.
  {% endupdate %}

{% update date="2022-03-09" %}

## 7.35.4

* Autocomplete for snippets.
* New terminal color schemes: Dracula, Nord Light, Nord Dark, Monokai.
* New fonts: Meslo Nerd Font, JetBrains Mono Nerd Font, Fira Code Nerd Font and Cascadia Code.
* Fixed an incorrect order of running snippets on Windows.
* Security improvements and more bug fixes.
  {% endupdate %}

{% update date="2022-02-21" %}

## 7.34.0

* Stability improvements.
  {% endupdate %}

{% update date="2022-02-08" %}

## 7.33.1

* Now team editors can share and unshare groups (like team owners can), remove any shared groups.
* When sharing data, teams can choose to share credentials or not to share credentials, or to share access using MultiKey.
  {% endupdate %}

{% update date="2022-01-13" %}

## 7.32.0

* Made it possible to use an empty password during SSH authentication.
* Stability improvements.
  {% endupdate %}
  {% endupdates %}

## 2021

{% updates format="full" %}
{% update date="2021-12-13" %}

## 7.28.0

* Made it possible to generate ED25519, ECDSA and RSA keys (on the Keychain screen).
* Brought back the SFTP path input field.
* Fixed issues with adding tags.
  {% endupdate %}

{% update date="2021-11-29" %}

## 7.27.0

* Added an option to open file for SFTP with download/upload.
* Added auto-save indicators to the edit forms.
* Fixed snippet execution on hosts running Windows.
* Termius for Teams: fixed multiple group sharing confirmation.
* Some UI improvements and UI-related bug fixes.
  {% endupdate %}

{% update date="2021-11-15" %}

## 7.26.0

* Added support for TOTP as a second authentication factor.
* Other stability and security improvements.
  {% endupdate %}

{% update date="2021-11-08" %}

## 7.25.0

* Live terminal is now available for all authenticated users.
* Added import from PuTTY.
* Other stability and security improvements.
  {% endupdate %}

{% update date="2021-11-02" %}

## 7.24.1

* Live terminal sessions - ability to share a session with other Termius users.
* The '+ New' / edit forms have been reworked and now save changes automatically.
  {% endupdate %}

{% update date="2021-10-20" %}

## 7.23.2

* Added Single Sign-On via Apple ID and Google Account.
* Added support for the new format of PuTTY keys (PPK3).
* Added verbose connection logs to troubleshoot connection errors.
  {% endupdate %}

{% update date="2021-10-12" %}

## 7.22.1

* Improved import from SecureCRT - made it possible to import keys, passwords, and port forwarding rules.
* Other stability and security improvements.
  {% endupdate %}

{% update date="2021-09-21" %}

## 7.21.1

* Made it possible to import groups and snippets from SecureCRT.
* Added team presence indicators.
  {% endupdate %}

{% update date="2021-09-09" %}

## 7.20.1

* Made it possible to add hosts to groups using drag and drop.
* Provided team owners with an option to require 2FA on their teams’ accounts.
  {% endupdate %}

{% update date="2021-08-30" %}

## 7.19.2

* Fixed a flow leading to creation of undeletable group.
  {% endupdate %}

{% update date="2021-08-23" %}

## 7.19.1

* Added MultiKey – a secure way of sharing access to your team’s servers.
* Made it possible to reorder terminal tabs.
  {% endupdate %}

{% update date="2021-08-11" %}

## 7.18.3

* Host import is now free for all users.
* Minor improvements in the user interface.
  {% endupdate %}

{% update date="2021-07-26" %}

## 7.17.1

* Added the ability to connect to the selected group and host by the 'Enter' key.
* Fixed the issue with the application freeze when the SFTP connection is terminated.
* Improved the stability and usability of the application.
  {% endupdate %}

{% update date="2021-07-10" %}

## 7.16.0

**Added:**

* Multi-selection for the Hosts, Port Forwarding, Snippets, Known Hosts, and Keychain screens.
* Re-connection prompt for disconnected SFTP sessions.

**Fixed:**

* Issue with accessing folders with names starting with '#' on Windows.
  {% endupdate %}

{% update date="2021-06-28" %}

## 7.15.1

**Added:**

* Syncing of the application’s theme with that of the operating system.

**Changed:**

* Improved UX of the login form.
  {% endupdate %}

{% update date="2021-06-25" %}

## 7.14.0

**Added:**

* Snippet sharing. Now team owners and editors can share their snippets with the whole team.
* Option to establish connections to all hosts in a group with just one click.

**Changed:**

* Removed support for the previous rendering terminal engine (HTERM).
* Reinstated the snippet picker feature in Terminal’s single, double, and right-click actions.
  {% endupdate %}

{% update date="2021-06-14" %}

## 7.13.0

**Changed:**

* Improved the stability of the application.
  {% endupdate %}

{% update date="2021-05-31" %}

## 7.12.0

**Changed:**

* Added support for rsa-sha2-256 and rsa-sha2-512 signature algorithms.
  {% endupdate %}

{% update date="2021-05-17" %}

## 7.11.1

**Fixed:**

* Issues with mouse copy-pasting for macOS.
  {% endupdate %}

{% update date="2021-05-04" %}

## 7.10.2

**Fixed:**

* Double paste issue in the terminal.
  {% endupdate %}

{% update date="2021-05-03" %}

## 7.10.1

**Changed:**

* Enabled customization of terminal copy/paste shortcuts.
  {% endupdate %}

{% update date="2021-04-19" %}

## 7.9.0

**Added:**

* Pop-up allowing one to easily reconnect to a disconnected session.

**Changed:**

* Removed Snippets resize bar for easier interaction with the terminal's scroll bar.
  {% endupdate %}

{% update date="2021-04-05" %}

## 7.8.0

**Changed:**

* Improved stability.
  {% endupdate %}

{% update date="2021-03-23" %}

## 7.7.1

**Fixed:**

* Displaying of account's expiration date.
  {% endupdate %}

{% update date="2021-03-08" %}

## 7.6.0

**Fixed:**

* Issue slowing down the startup performance for premium users.
  {% endupdate %}

{% update date="2021-02-22" %}

## 7.5.4

**Changed:**

* Minor improvements and preparations for upcoming changes.
  {% endupdate %}

{% update date="2021-02-19" %}

## 7.5.3

**Fixed:**

* Losing host credentials for some users when an old version of the app is updated.
* Opening local files in SFTP.
  {% endupdate %}

{% update date="2021-02-09" %}

## 7.5.2

**Added:**

* A new way to share feedback with the Termius team, right from the app.

**Fixed:**

* Stop at the 'Checking Setup' step during migration to the new crypto.
* Handling of the Enter key during the Termius for Teams Trial creation flow.
  {% endupdate %}

{% update date="2021-01-26" %}

## 7.4.1

**Added:**

* Support for Apple Silicon hardware.

**Fixed:**

* Password changes with enabled 2FA.
* App freezes when a large directory is removed via SFTP.
  {% endupdate %}
  {% endupdates %}

## 2020

{% updates format="full" %}
{% update date="2020-12-28" %}

## 7.3.2

**Added:**

* Team members can save their own credentials for shared hosts and groups.
* A new Editor role for teams: editors can add, edit, and delete hosts inside shared groups.
  {% endupdate %}

{% update date="2020-12-02" %}

## 7.2.1

**Changed:**

* New Termius icon on Mac OS.

**Fixed:**

* Update of a user's profile after the purchase.
  {% endupdate %}

{% update date="2020-11-17" %}

## 7.1.0

**Added:**

* Windows charsets.

**Changed:**

* The default shortcut for closing tab is Ctrl + Shift + W (Windows, Linux).
  {% endupdate %}

{% update date="2020-10-23" %}

## 7.0.1

**Added:**

* Option to re-connect in the tab context menu.
  {% endupdate %}

{% update date="2020-10-20" %}

## 7.0.0

**Added:**

* Tiles layout.
  {% endupdate %}

{% update date="2020-09-17" %}

## 6.5.1

**Changed:**

* Stability improvements.
  {% endupdate %}

{% update date="2020-08-20" %}

## 6.4.1

**Changed:**

* Stability improvements.
  {% endupdate %}

{% update date="2020-07-30" %}

## 6.3.0

**Changed:**

* Stability improvements.
  {% endupdate %}

{% update date="2020-07-21" %}

## 6.2.2

**Changed:**

* Improved terminal stability.

**Fixed:**

* Hosts import to shared groups.
* Cursor position reset in the terminal search.
* Labels for new terminal labels in the system menu.
* Impossibility to connect through SFTP if the username is not set.
  {% endupdate %}

{% update date="2020-06-25" %}

## 6.1.1

**Changed:**

* Stability improvements.
  {% endupdate %}

{% update date="2020-06-16" %}

## 6.0.0

**Changed:**

* Stability improvements.
  {% endupdate %}

{% update date="2020-06-03" %}

## 5.13.0

**Added / changed:**

* Better security when you change the 2FA settings.
  {% endupdate %}

{% update date="2020-05-28" %}

## 5.12.0

**Added / changed:**

* Stability improvements.
  {% endupdate %}

{% update date="2020-04-29" %}

## 5.10.1

**Added:**

* Termius for Teams: ability to share host chains.

**Fixed:**

* Import of files containing keys.
* Issue with activation of the subscription.
  {% endupdate %}

{% update date="2020-04-14" %}

## 5.9.2

**Fixed:**

* Color schemes in new windows.
* Mouse events in the terminal.
* Tab hints in the compact mode.
  {% endupdate %}

{% update date="2020-03-30" %}

## 5.7.2

**Added:**

* Snippets in new windows.

**Fixed:**

* Problem maximizing window with a double click.
  {% endupdate %}

{% update date="2020-03-16" %}

## 5.6.1

**Added:**

* Ability to search in the terminal.
* GitHub Teachers Toolbox support.
  {% endupdate %}

{% update date="2020-01-30" %}

## 5.4.1

**Added:**

* Import from SecureCRT.
* Close terminal button.
  {% endupdate %}

{% update date="2020-01-13" %}

## 5.3.2

**Changed:**

* Reduced RAM usage.
  {% endupdate %}
  {% endupdates %}

## 2019

{% updates format="full" %}
{% update date="2019-12-23" %}

## 5.2.3

**Changed:**

* Improved selection text color for all terminal themes.
* Tab titles displayed when hovered over.

**Fixed:**

* Active tab selection after a tab is closed via the context menu.
  {% endupdate %}

{% update date="2019-12-11" %}

## 5.1.1

**Changed:**

* Better resizing when the Snippets panel is open.
* Improved stability.
  {% endupdate %}

{% update date="2019-11-25" %}

## 5.0.6

**Added / changed:**

* Group sharing.
* Updated look of the Preferences screen.
* 'Use Option As Meta key' enabled by default.
* Improved performance and stability.

**Fixed:**

* Drag-and-drop on the SFTP screen.
* Drag-and-drop into the terminal.
* The process of merging directories via SFTP.
  {% endupdate %}

{% update date="2019-10-09" %}

## 4.9.21

**Fixed:**

* Blinking scroll bars.
  {% endupdate %}

{% update date="2019-09-26" %}

## 4.9.18

**Fixed:**

* Performance issues.
  {% endupdate %}

{% update date="2019-08-07" %}

## 4.9.7

**Added / changed:**

* Keyboard shortcut for closing terminal tabs.
* Copy option in the Snippets (terminal) panel.
* Synchronization improvements.

**Fixed:**

* Lost focus in keyboard-interactive dialogs.
  {% endupdate %}

{% update date="2019-07-15" %}

## 4.9.2

**Added / changed:**

* Handling of host key changes.

**Fixed:**

* Preferred host sorting resets after the app restarts.
* Inability to start Port Forwarding for a host with a host chain.
  {% endupdate %}

{% update date="2019-06-10" %}

## 4.7.2

**Added / changed:**

* Improved performance of the Hosts screen.
* Ability to open the terminal in a new window.
* Synchronization of known hosts.
* Ability to edit and remove tags.
* Drag-and-drop of files into the terminal.
* Order of items in SFTP panels is now saved.

**Fixed:**

* Zooming in the terminal. (Font size increasing to the maximum once you press the hotkey.)
* Handling of symbolic links in SFTP.
  {% endupdate %}

{% update date="2019-04-29" %}

## 4.5.0

**Added / changed:**

* Charset support.
* Import from \~/.ssh/config.
* Terminal zoom.
* Increased terminal scroll-back buffer size.
* Drag and drop from Finder to SFTP.
* Drag and drop between SFTP panels.
* Shortcut to open the local terminal.
  {% endupdate %}

{% update date="2019-03-15" %}

## 4.2.7

**Added:**

* Local terminal.
* A better terminal rendering engine.
* SSH key file import.
  {% endupdate %}

{% update date="2019-02-18" %}

## 4.1.2

**Fixed:**

* (MacOS) Black screen when the app is closed from the full-screen mode.
* Terminal snippets expanding when you left-click.
* Fingerprints dialog.
  {% endupdate %}

{% update date="2019-01-18" %}

## 4.0.2

**Fixed:**

* Problem with selecting a host for a port forwarding rule.
  {% endupdate %}
  {% endupdates %}

## 2018

{% updates format="full" %}
{% update date="2018-12-20" %}

## 3.5.0 (2)

**Added:**

* Termius for Teams.
* Host chaining (support for jump hosts).
* Labels for port forwarding rules.
  {% endupdate %}

{% update date="2018-11-30" %}

## 3.3.5

**Added:**

* Agent forwarding can be configured for a host.
* Proxy support.
  {% endupdate %}
  {% endupdates %}


# iOS / iPadOS

New updates and improvements

## 2026

{% updates format="full" %}
{% update date="2026-06-29" %}

## 7.4.0

✨ Added support for ANSI OSC 52 for better copy-paste experience in the terminal.\
\
🛠️ Improved scrolling experience in the terminal.\
🛠️ Changed the default sorting order in SFTP to be by kind.\
🛠️ Expanded hardware keyboard support.\
🛠️ Other stability improvements.
{% endupdate %}

{% update date="2026-06-15" %}

## 7.3.5

✨ Added support for auth banners during the connection flow.\
\
🛠️ Fixed a bug with sorting of snippets in the side panel.\
🛠️ Fixed a bug with copying of text from nano.\
🛠️ Fixed a bug with the blank terminal screen after device rotation when using a custom keyboard.\
🛠️ Other improvements.
{% endupdate %}

{% update date="2026-05-06" %}

## 7.3.4

🛠️ Fixed incorrect display of port forwarding rule descriptions.\
🛠️ Fixed an issue with snippets preview in the terminal.\
🛠️ Stability and security improvements.
{% endupdate %}

{% update date="2026-02-24" %}

## 7.3.3

✨ Added support for ML-DSA key generation and authentication (requires server-side ML-DSA support).
{% endupdate %}

{% update date="2026-01-21" %}

## 7.3.2

🛠️ Fixed a bug with copying of double-width characters from the terminal.\
🛠️ Updated the icon for hosts that are set up for development with OpenCode.\
🛠️ Other stability improvements.
{% endupdate %}
{% endupdates %}

## 2025

{% updates format="full" %}
{% update date="2025-12-22" %}

## 7.3.1

✨ SSH Certificates and Environment Variables are now free!\
✨ Added "linux" terminal emulation type to be consistent with Termius on other platforms.\
✨ Improved spacing between the keys in the keyboard add-on.

🛠️ SOCKS4 proxy support has been deprecated. Please migrate to SOCKS5 if you are affected by this change.\
🛠️ Fixed an issue in SFTP navigation when trying to open a restricted folder.\
🛠️ Fixed an issue in SFTP that didn't allow selecting other drives on Windows\
🛠️ Fixed an issue when the app didn't remember the side panel state on the iPad in some rare cases.\
🛠️ Other stability improvements.
{% endupdate %}

{% update date="2025-12-08" %}

## 7.3.0

✨ We've enhanced session log management. In addition to the last session log per host, you can now **save selected logs** to prevent them from being overwritten on the next connection. You can also **add comments** to these saved logs to briefly describe what the sessions were about

🛠️ Changed the files preview style in SFTP to full screen\
🛠️ Fixed an issue in the key export flow when the public key is empty\
🛠️ Fixed an issue with auto correction when editing a snippet (e.g. converting a double hyphen to an em dash)\
🛠️ Fixed an issue when the app didn't remember the side panel state on the iPad in some cases\
🛠️ Other stability and performance improvements
{% endupdate %}

{% update date="2025-11-24" %}

## 7.2.0

✨ Introducing SSH.id — device-bound, biometric-protected SSH keys you can provision anywhere using your SSH.id handle\
✨ Added host icons for Rocky, Alma, Alpine, and Amazon Linux

🛠️ Fixed a bug related to the Known Hosts duplication in case of short hostnames\
🛠️ Other stability and performance improvements
{% endupdate %}

{% update date="2025-11-10" %}

## 7.1.0

✨ Added support for CJK input in the terminal when using a hardware keyboard

🛠️ Stability fixes and improvements
{% endupdate %}

{% update date="2025-10-20" %}

## 7.0.0

✨ Updated for Liquid Glass design

🛠️ Stability fixes and improvements
{% endupdate %}

{% update date="2025-10-14" %}

## 6.3.4

🛠️ Fixed a bug with dismissing of the connection input dialog when app goes to the background
{% endupdate %}

{% update date="2025-10-09" %}

## 6.3.3

✨ Improved integration with CLI coding agents. Configure Gemini, Claude Code, OpenCode, etc. on your hosts, and an AI agent will start automatically when you connect\
✨ Added a new input field in the terminal. It supports speech-to-text, lets you speak to CLI coding agents, and makes prompt editing easier\
✨ Two new terminal themes were introduced: Flexoki Dark and Light

🛠️ Replaced MD5 fingerprints by SHA256 fingerprints in connection flow\
🛠️ Removed the Pin Code timeout. The app now present the Pin Code screen each time the application goes to the background
{% endupdate %}

{% update date="2025-09-29" %}

## 6.3.2

🛠️ Fixed a bug with starting Port Forwarding rules with host chains\
🛠️ Fixed a bug with file preview cache in SFTP\
🛠️ Other stability improvements
{% endupdate %}

{% update date="2025-09-08" %}

## 6.3.1

✨ Added an ability to bind Shift+Tab to a volume button\
✨ Moved AI Widget settings to the app Settings

🛠️ Improved SSH stability with PQC key exchange algorithms\
🛠️ Fixed a bug when the side panel state on the iPad was not saved between sessions\
🛠️ Dropped support for iOS 16\
🛠️ Other stability fixes and improvements
{% endupdate %}

{% update date="2025-08-25" %}

## 6.3.0

✨ New AI widget

* Moved the AI widget above the keyboard, allowing multiple commands to run without switching.
* Added a history of generated commands
* Added a snippet package with generated commands
* Added support for providing AI context by selecting lines in the terminal output

✨ Added **Shift+Tab** to the additional keyboard in Terminal, enabling actions for Claude Code and other AI tools\
✨ Added support for the `mlkem768x25519-sha256` key exchange (KEX) method. This support is limited to OpenSSH 9.9 and later when the server is configured to use only that KEX method\
\
🛠️ Fixed a bug when a saved key passphrase was not applied when starting a port forwarding rule\
🛠️ Fixed keyboard language switching in the Label field on the Host form\
🛠️ Fixed missing icon for Windows hosts\
🛠️ Stability fixes and improvements
{% endupdate %}

{% update date="2025-08-13" %}

## 6.2.1

🛠️ Fixed credentials inheritance in groups and hosts\
🛠️ Fixed removal of Personal Session Logs if logs are disabled\
🛠️ Stability fixes and improvements
{% endupdate %}

{% update date="2025-07-09" %}

## 6.2.0

✨ Added Logs feature. Terminal session logs are now automatically collected for every host. They sync across your devices and are shared with your team. You can view your logs on Desktop.

🛠️ Stability fixes and improvements
{% endupdate %}

{% update date="2025-05-27" %}

## 6.1.8

🛠️ Stability fixes and improvements.
{% endupdate %}

{% update date="2025-05-13" %}

## 6.1.6

🛠️ Fixed an issue with Sign Up using Google/Apple.
{% endupdate %}

{% update date="2025-05-12" %}

## 6.1.5

🛠️ Stability fixes and improvements.
{% endupdate %}

{% update date="2025-04-15" %}

## 6.1.4

🛠️ Stability fixes and improvements.
{% endupdate %}

{% update date="2025-03-27" %}

## 6.1.3

🛠️ Fixed CVE-2023-48795 ("Terrapin Attack")
{% endupdate %}

{% update date="2025-03-07" %}

## 6.1.1

✨ Drag files to your SFTP session directly from the Files app.\
✨ Copy files between SFTP sessions with a simple drag.\
✨ Added ability to copy file paths in SFTP session.\
✨ The Side Panel state persists between app sessions.\
✨ Updated brand colors for host icons.
{% endupdate %}

{% update date="2025-03-03" %}

## 6.1.0

🛠️ Fixed attaching Biometric keys after exporting to the host.\
🛠️ Fixed an issue related to the random sticking of Ctrl and Alt software buttons.\
🛠️ Stability fixes and improvements.
{% endupdate %}

{% update date="2025-02-21" %}

## 6.0.0

✨ This update brings a new UI for iPhones and iPads!\
✨ Updated Navigation:

* **iPhone:** A new bottom tab bar for a more intuitive navigation between your Vaults, Connections, and Profile.
* **iPad:** A new Desktop-like layout with tabs at the top for seamless switching between your Vaults and active connections.

✨ Improved SFTP:\
✨ Multiple SFTP sessions can now be opened alongside the terminal tabs.
{% endupdate %}

{% update date="2025-01-28" %}

## 5.10.1

🛠️ Fixed Enterprise SSO login with Azure\
🛠️ Other stability improvements
{% endupdate %}
{% endupdates %}

## 2024

{% updates format="full" %}
{% update date="2024-11-08" %}

## 5.10.0

🛠️ Fixed an issue with keeping the focus in the terminal on iPhones when you use the hardware keyboard\
🛠️ Fixed an occasional crash when you are connecting with Mosh\
🛠️ Other stability improvements
{% endupdate %}

{% update date="2024-10-03" %}

## 5.9.5

🛠️ Stability improvements.
{% endupdate %}

{% update date="2024-09-25" %}

## 5.9.4

✨ Six new terminal themes were introduced: Kanagawa Wave, Kanagawa Dragon, Kanagawa Lotus, Hacker Blue, Hacker Green, and Hacker Red

🛠️ Stability improvements
{% endupdate %}

{% update date="2024-09-16" %}

## 5.9.3

🛠️ Improved the app stability and performance on iOS 18.
{% endupdate %}

{% update date="2024-09-03" %}

## 5.9.2

🛠️ Stability improvements
{% endupdate %}

{% update date="2024-08-26" %}

## 5.9.0

✨ Two new terminal themes were introduced: Everforest Dark and Everforest Light.

🛠️ Fixed crash while connecting from Quick Connect.\
🛠️ Fixed the default port issue when using the Telnet protocol.\
🛠️ Dropped support of iOS 15.
{% endupdate %}

{% update date="2024-08-07" %}

## 5.8.7

✨ Updated existing fonts to support Nerd Font v3. Here is the list of nerd fonts in the application: FiraCode, JetBrainsMono, Meslo, Sorce Code Pro, Sorce Code Pro Medium, DejaVu Sans Mono, Ubuntu Mono, Cascadia Code.

🛠️ Fixed an issue with SSH connections when one-time code authentication is requested before the password authentication.\
🛠️ Fixed a bug with snippet execution in multiple active terminals.\
🛠️ Stability fixes and improvements.
{% endupdate %}

{% update date="2024-07-29" %}

## 5.8.6

🛠️ Stability improvements.
{% endupdate %}

{% update date="2024-07-16" %}

## 5.8.5

✨ Three new terminal themes were introduced: Night Owl, Light Owl, Aura.\
✨ AI in the terminal is now free for users with an account.

🛠️ Other stability improvements.
{% endupdate %}

{% update date="2024-07-01" %}

## 5.8.4

🛠️ We improved the arrow key gestures in the terminal - long-press the terminal or the spacebar to activate arrows.
{% endupdate %}

{% update date="2024-06-20" %}

## 5.8.3

🛠️ Stability improvements.
{% endupdate %}

{% update date="2024-06-17" %}

## 5.8.2

🛠️ Fixed an issue with applying autocomplete settings to the current active session.\
🛠️ Fixed an issue with not showing the password autocomplete if it was initiated from a snippet.\
🛠️ Stability improvements.
{% endupdate %}

{% update date="2024-05-28" %}

## 5.8.1

✨ Three new terminal themes were introduced: Rosé Pine, Rosé Pine Moon, Rosé Pine Dawn.

🛠️ Stability improvements.
{% endupdate %}

{% update date="2024-05-20" %}

## 5.8.0

✨ We have added the ability to preview files in SFTP on remote servers, including playing audio and video content.\
✨ Active port forwarding rules are now shown in the Live Activity.

🛠️ Fixed an issue with key export to a host with a host chain.\
🛠️ Other stability improvements.
{% endupdate %}

{% update date="2024-05-03" %}

## 5.7.0

✨ The iPhone terminal has a new look. Every element on the interface reflects the selected terminal color theme.\
✨ New keyboard add-on in terminal on iPhone with quick access to additional keyboard, Snippets, shell history, and appearance.\
✨ Added gestures to arrow key support: press and hold your finger down on the terminal, then move it around.\
✨ Enhanced text selection in the terminal: press, hold, and lift your finger to select text.\
✨ Added password suggestions in autocomplete.\
✨ Enhanced login and registration screens.\
✨ Introduced three new terminal themes: Cobalt2, Octocat Dark, and Octocat Light.

🛠️ Fixed groups navigation toolbar on the Snippets screen.\
🛠️ Fixed the Run button on the Snippets picker screen.\
🛠️ Fixed snippets execution with quotes in a script.
{% endupdate %}

{% update date="2024-04-16" %}

## 5.6.1

✨ We have added the ability to preview local files in SFTP, including playing audio and video content. Now, there is no need to switch between the apps to preview downloaded files.\
✨ Introduced four new terminal themes: Ayu Dark, Ayu Light, Cyberpunk, and Cyberpunk Scarlet.\
✨ Active connections are now shown in the Live Activity.

🛠️ Fixed a bug related to reconnecting to a host with a host chain.\
🛠️ Fixed a bug related to running snippets from Shortcuts\
🛠️ Fixed a bug with history items deletion.\
🛠️ Other stability improvements.
{% endupdate %}

{% update date="2024-03-13" %}

## 5.6.0

* ✨ Added support for connections with FIDO2-based SSH keys
* ✨ Added the ability to generate FIDO2-based SSH keys
  {% endupdate %}

{% update date="2024-03-09" %}

## 5.5.1

✨ Introduced three new terminal themes: Aubergine, Romania Day, Romania Night

🛠️ Other stability improvements.
{% endupdate %}

{% update date="2024-02-29" %}

## 5.5.0

✨ Improved Snippets search in the side panel in the terminal

🛠️ Fixed a bug when not all active sessions were listed when you long-pressed a host\
🛠️ Fixed a bug with missing progress animation when connecting to MOSH hosts\
🛠️ Other stability improvements.
{% endupdate %}

{% update date="2024-02-22" %}

## 5.4.0

✨ Improved functionality of gestures in the terminal: now the trigger frequency is tied to the cursor speed (Settings -> Cursor speed)

🛠️ Fixed a bug when the app couldn't connect to some servers, resulting in the 'end of file' error right after an attempt to start an SSH session\
🛠️ Fixed a bug when a user couldn't activate the host selection after hiding the terminal window\
🛠️ Other stability improvements.
{% endupdate %}

{% update date="2024-02-14" %}

## 5.3.1

🛠️Enhanced the app stability for iOS/iPadOS 17.4 beta versions.
{% endupdate %}

{% update date="2024-02-02" %}

## 5.3.0

✨ Introducing AI in the terminal on iPhone: Type what you want to do and get a command to make it for you.\
✨ Three new terminal themes were introduced: Peach Fresh, 1984 Dark, and 1984 Light.\
✨ Enhanced cursor speed in the terminal for a smoother experience.

🛠️ Resolved an issue related to focus in the terminal when switching between apps.\
🛠️ Fixed a problem with alphabetical sorting on the Snippets screen.
{% endupdate %}

{% update date="2024-01-18" %}

## 5.2.1

🛠️ Fixed a bug with the SSH keys handling when connecting to a host from History.\
🛠️ Fixed a bug related to tag creation.\
🛠️ Fix a bug when touches in the terminal didn't work in Nano.\
🛠️ Other stability improvements.
{% endupdate %}
{% endupdates %}

## 2023

{% updates format="full" %}
{% update date="2023-12-22" %}

## 5.2.0

✨ Added Keyboard Add-on with quick access keys. Control its visibility in the Keyboard Add-on tab on the side panel by toggling the "Show keyboard add-on" setting.\
✨ Improved the application start stability\
✨ Other stability improvements
{% endupdate %}

{% update date="2023-12-07" %}

## 5.1.0

✨ Introduced four new terminal themes: Winter Night, Winter Day, Tokyo Night, and Tokyo Day\
✨ Added support for serial connection with USB-C Redpark cables

🛠️ Fixed sound duplication of key press on the keyboard in the terminal\
🛠️ Fixed issue with size calculating of the side panel in the terminal on iOS 15
{% endupdate %}

{% update date="2023-11-27" %}

## 5.0.0

✨ Team Vault: a new way to share data with the team. Now, in addition to host groups and snippets sharing, your team can share keys, identities, port forwarding rules, and known hosts. Working in a team is now much easier, thanks to Vaults.\
✨ The terminal on iPad got a new look where every element on the interface reflects the selected terminal color theme.\
✨ New side panel in terminal on iPad with quick access to additional keyboard, Snippets, shell history, and appearance.\
✨ Added gestures to arrow key support: press and hold your finger down on the space key, then move it around.\
✨ Introduced four new terminal themes: Catppuccin Latte, Catppuccin Mocha, Diwali, Movember.\
✨ Improved stability related to the app start.
{% endupdate %}

{% update date="2023-11-03" %}

## 4.26.5

🛠️ Fixed an issue where email and password fields were not cleared upon navigating to a different screen.
{% endupdate %}

{% update date="2023-11-02" %}

## 4.26.4

🛠️ Fixed a crash when using Google SSO multiple times.
{% endupdate %}

{% update date="2023-11-02" %}

## 4.26.3

🛠️ Fixed an issue with the application start.<br>
{% endupdate %}

{% update date="2023-10-19" %}

## 4.26.1

🛠️ Fixed an issue with weak passwords not being restricted on the registration screen.\
🛠️ UI and stability improvements.
{% endupdate %}

{% update date="2023-10-16" %}

## 4.26.0

✨ Introduced four new terminal themes: Atom One Dark, Atom One Light, Halloween, and Dia De Muertos.

🛠️ Fixed layout issue with search bar when cancel button is pressed.\
🛠️ Fixed the dismissing of Host/Group Edit when the search is active.\
🛠️ Fixed issue with tags input on the Edit Host screen.
{% endupdate %}

{% update date="2023-10-05" %}

## 4.25.1

🛠️ Fixed an issue where the monthly subscription price was displayed incorrectly.
{% endupdate %}

{% update date="2023-09-20" %}

## 4.25.0

🛠️ Fixed an issue when the Recaptcha visual challenge was not loading in some cases.
{% endupdate %}

{% update date="2023-10-02" %}

## 4.24.0

✨ Added global color scheme sync.

🛠️ Stability improvements.
{% endupdate %}

{% update date="2023-09-18" %}

## 4.23.0

✨ Introduced six new terminal themes: Gruvbox Dark, Gruvbox Light, Material Dark, Material Light, Manhattan, Plastic World

🛠️ Application launch time has been optimized
{% endupdate %}

{% update date="2023-09-05" %}

## 4.22.0

🛠️ Application launch time has been optimized.\
🛠️ Other stability improvements.
{% endupdate %}

{% update date="2023-08-10" %}

## 4.21.1

* Fixed a bug that blocked the app in rare cases after the Pro trial expiration.
  {% endupdate %}

{% update date="2023-08-07" %}

## 4.21.0

* Terminal color schemes' improvements
* Fixed a bug that stopped the app from starting on some devices
  {% endupdate %}

{% update date="2023-07-24" %}

## 4.20.0

* Fixed saving of the sorting order on the "Hosts" screen
* Dropped support of iOS 14
  {% endupdate %}

{% update date="2023-07-10" %}

## 4.19.0

* Fixed an issue with the keyboard in stage manager on iPadOS
* Fixed an issue when a Serial Connection button on iPhones was missing if there were no active connections
  {% endupdate %}

{% update date="2023-06-22" %}

## 4.18.0

* Added ability to edit the Credentials Sharing mode for Hosts and Groups - this update will be **required** for you if you start using **Team Vaults** in the Termius Desktop app
* Fixed incorrect size of preview when using the context menu on Hosts and Snippets screens
  {% endupdate %}

{% update date="2023-06-06" %}

## 4.17.0

* Fixed a bug when targets could not be removed from a snippet
* Fixed a few 2FA-related bugs
* Other stability improvements
  {% endupdate %}

{% update date="2023-05-12" %}

## 4.16.0

* Stability improvements
* Fixed occasional app crashes during host duplication
  {% endupdate %}

{% update date="2023-05-02" %}

## 4.15.0

* Improvements to user experience on iPhone. Control buttons have been relocated to the bottom of the screen for a smoother experience.
  {% endupdate %}

{% update date="2023-04-14" %}

## 4.14.3

* Fixed a bug when passwords and private keys were not updated
  {% endupdate %}

{% update date="2023-04-12" %}

## 4.14.2

* Fixed the disappearing of the snippet button from the keyboard add-on
* Fixed a bug when background sessions were closed incorrectly
* Fixed a bug with the search field disappearing on the History screen
* Other UI and stability improvements
  {% endupdate %}

{% update date="2023-03-27" %}

## 4.14.1

* **FaceID/TouchID unlock** is now free for everyone 🎉
* Fixed software keyboard backspace key autorepeat
* Fixed opening of the Terminal screen in multi-window mode on the iPad
* Fixed a bug with the sync of biometric keys when you had them set up on several devices
* Fixed a bug with cursor repositioning when long-dragging the space on the keyboard
  {% endupdate %}

{% update date="2023-03-09" %}

## 4.14.0

* **Terminal Autocomplete** is now free.
  * Less typing on mobile, more autocomplete in the terminal for everyone!
* **Password Paste** in the terminal is also free now.
  * Running a command with sudo and it asks for a password, there is no longer a need to type it manually if it’s saved in the host - click one button on the keyboard and no longer feel the pain
* Fixed a bug when you couldn't connect via SFTP from the Files app
* Improved the account screen
* UI and stability improvements
  {% endupdate %}

{% update date="2023-02-20" %}

## 4.13.9

* Added support for connections with FIDO2-based keys. [iOS/iPadOS app can only connect with FIDO2 keys, Desktop app can generate and import such keys](https://termius.com/hc/en-us/articles/5618120162457).
* Improved performance of the Hosts screen.
* Fixed the bug with serial connections.
* Fixed app crash when you switch from Snippets to Commands history in the terminal.
* Other stability improvements.
  {% endupdate %}

{% update date="2023-01-25" %}

## 4.13.8

* Fixed a bug when some users were asked to provide feedback about the app too frequently.
  {% endupdate %}
  {% endupdates %}

## 2022

{% updates format="full" %}
{% update date="2022-12-22" %}

## 4.13.7

* Enhanced the SFTP manager in the app.
  {% endupdate %}

{% update date="2022-12-08" %}

## 4.13.6

* Fixed ctrl + underscore shortcut when software keyboard is used.
  {% endupdate %}

{% update date="2022-12-02" %}

## 4.13.5

* Fixed issue with the status bar in Terminal on iPhone 14 / 14 Pro / 14 Pro Max.
  {% endupdate %}

{% update date="2022-11-22" %}

## 4.13.4

* Added a setting to choose an alternative connection process in case of connection issues while using VPN.
  {% endupdate %}

{% update date="2022-11-17" %}

## 4.13.3

* Fixed issues with in-app feedback.
  {% endupdate %}

{% update date="2022-11-11" %}

## 4.13.2

* Minor improvements and better stability.
  {% endupdate %}

{% update date="2022-10-15" %}

## 4.13.0

* Fixed issues with pasting in the terminal.
  {% endupdate %}

{% update date="2022-09-26" %}

## 4.12.0

* Key import improvements: now you can add an SSH key directly from the Files app.
  {% endupdate %}

{% update date="2022-09-14" %}

## 4.11.10

* Minor bug fixes and stability improvements.
* Port knocking is no longer supported.
  {% endupdate %}

{% update date="2022-08-29" %}

## 4.11.9

* UI and stability improvements.
  {% endupdate %}

{% update date="2022-08-10" %}

## 4.11.8

* Stability improvements to data storage.
  {% endupdate %}

{% update date="2022-08-06" %}

## 4.11.7

* Stability improvements to data storage.
  {% endupdate %}

{% update date="2022-08-02" %}

## 4.11.6

* SSH certificates. Now a Pro user can attach an OpenSSH certificate to a key and use it for authentication.
* Fixed some UI and UX shortcomings.
  {% endupdate %}

{% update date="2022-07-26" %}

## 4.11.5

* A new 'Devices' section shows your devices with account access and allows you to remotely sign out from a device.
* UI and stability improvements.
  {% endupdate %}

{% update date="2022-06-30" %}

## 4.11.4

* Stability improvements.
  {% endupdate %}

{% update date="2022-06-29" %}

## 4.11.3

* Enterprise SSO. Termius supports more than 30 identity providers.
* Fixed an issue with scrolling in the terminal when an alternate screen buffer is being used.
  {% endupdate %}

{% update date="2022-06-16" %}

## 4.11.2

* Mouse/trackpad support in the terminal.
* UI bug fixes and improvements.
  {% endupdate %}

{% update date="2022-05-25" %}

## 4.11.1

* Snippet Packages allows organizing snippets into one-level groups to put the same type of snippets in one place and simplify snippet management in general.
* SFTP and Tabs are free now.
* Fixed SFTP integration with Files.
  {% endupdate %}

{% update date="2022-05-02" %}

## 4.11.0

* Fixed issues with focus in the multi-window mode
* Mapped Esc to Cmd + .
* Fixed shortcuts that were broken on non-QWERTY keyboard layouts
* Fixed the Alt + Backspace shortcut
  {% endupdate %}

{% update date="2022-04-18" %}

## 4.10.9

* Fixed an issue with mapping Backspace to CTRL + H.
* Fixed a crash occurring when establishing a port forwarding connection with a host chain.
  {% endupdate %}

{% update date="2022-04-11" %}

## 4.10.8

* Improved support for hardware keyboards in the terminal.
* Fixed an incorrect order of running snippets on Windows.
* Fixed incorrect inheritance of proxy settings from a group.
  {% endupdate %}

{% update date="2022-03-28" %}

## 4.10.7

* Host chaining setting in groups for easier management of infrastructure involving advanced security. It’s now possible to specify a host chain consisting of jump or bastion host servers for many hosts at once – by specifying it in the group containing the hosts.
* Fixed the Select / Copy controls.
  {% endupdate %}

{% update date="2022-03-11" %}

## 4.10.6

* Stability improvements.
  {% endupdate %}

{% update date="2022-02-23" %}

## 4.10.5

* Fixed an issue with detaching a SEP key from a host or group.
  {% endupdate %}

{% update date="2022-02-21" %}

## 4.10.4

* Added new terminal color schemes: Dracula, Nord Light, Nord Dark, and Monokai.
* Added more fonts: Meslo (nerd font), JetBrains Mono (nerd font), Fira Code (nerd font), and Cascadia Code.
* Teams can now confirm members' access to shared data from within the app.
* Stability and security improvements.
  {% endupdate %}

{% update date="2022-02-10" %}

## 4.10.3

* When sharing data, teams can now choose to share credentials or not to share credentials, or to share access using MultiKey.
* Added global ReCaptcha support.
  {% endupdate %}

{% update date="2022-01-26" %}

## 4.10.2

* Fixed an issue with hardware keyboard handling.
* Fixed an issue causing the terminal to hang after exit.
  {% endupdate %}

{% update date="2022-01-24" %}

## 4.10.1

* Improved sign-up process.
* Security and stability improvements.
* This is the last version to support iOS 13.
  {% endupdate %}

{% update date="2022-01-10" %}

## 4.10.0

* Stability improvements.
  {% endupdate %}
  {% endupdates %}

## 2021

{% updates format="full" %}
{% update date="2021-12-30" %}

## 4.9.10

* Fixed freezing that would occur when the terminal was closed.
  {% endupdate %}

{% update date="2021-12-13" %}

## 4.9.9

* Added key auto-repeat for letters.
* Fixed the 'more' button in keyboard-interactive prompts with long messages.
  {% endupdate %}

{% update date="2021-12-06" %}

## 4.9.8

* Stability improvements.
  {% endupdate %}

{% update date="2021-11-29" %}

## 4.9.7

* Fix for the disappearing tabs issue.
  {% endupdate %}

{% update date="2021-11-15" %}

## 4.9.6

* Added support for TOTP as a second authentication factor.
* Fixed startup snippet execution on hosts running Windows.
  {% endupdate %}

{% update date="2021-11-02" %}

## 4.9.5

* Support for serial connections on devices with a Lightning port.
* Performance and stability improvements.
  {% endupdate %}

{% update date="2021-10-28" %}

## 4.9.4

* Stability improvements.
  {% endupdate %}

{% update date="2021-10-20" %}

## 4.9.3

* Added single sign-on via Apple ID and Google account.
* Team editors can now share and unshare groups (like team admins can).
  {% endupdate %}

{% update date="2021-10-06" %}

## 4.9.2

* Added verbose connection logs to troubleshoot connection errors.
* Now you can see if your teammates are also using Termius at the moment.
* Got the app ready for iOS 15.
* Added an ability to duplicate a host.
  {% endupdate %}

{% update date="2021-09-06" %}

## 4.9.1

* Provided team owners with an option to require 2FA on their teams' accounts.
* Fixed an issue with executing snippets using Siri Shortcuts.
* Fixed the 'Connect to a host' shortcut not appearing in the Shortcuts app when the host alias is empty.
* Fixed the option allowing sharing files using Termius (via SFTP).
* Fixed local host discovery feature.
  {% endupdate %}

{% update date="2021-08-23" %}

## 4.9.0

* Fix the connection issue when using hostchain.
  {% endupdate %}

{% update date="2021-08-20" %}

## 4.8.10

* Added MultiKey – a secure way of sharing access to your team's servers.
* Minor improvements.
  {% endupdate %}

{% update date="2021-08-09" %}

## 4.8.8

* Added automatic removal of whitespaces before and after the host name during a connection.
  {% endupdate %}

{% update date="2021-07-26" %}

## 4.8.7

* Stability improvements.
  {% endupdate %}

{% update date="2021-07-12" %}

## 4.8.6

**Added:**

* Implemented security improvements - added invisible Google ReCaptcha for signup forms to prevent brute-force of user's passwords.
  {% endupdate %}

{% update date="2021-06-25" %}

## 4.8.5

**Added:**

* Snippet sharing. Now team owners and editors can share their snippets with the whole team.

**Fixed:**

* Issue with terminal opening after establishing a connection.
  {% endupdate %}

{% update date="2021-06-14" %}

## 4.8.3

**Changed:**

* Enabled repetition of the backspace command when the corresponding key is being pressed on the software keyboard.
  {% endupdate %}

{% update date="2021-05-31" %}

## 4.8.1

**Added / changed:**

* Enabled multiple windows usage for iPads.
* Added an option to save company details.
* Added an option to change bind-address for Dynamic PF rule.

**Fixed:**

* Issue causing a lost connection when the Run Snippet screen is closed.
  {% endupdate %}

{% update date="2021-05-17" %}

## 4.8.0

**Changed:**

* Improved Drag'n'Drop function on SFTP and Hosts screens.

**Fixed:**

* Solved the problem with application freezing on the SFTP screen.
  {% endupdate %}

{% update date="2021-05-04" %}

## 4.7.9

**Changed:**

* 'Clone' renamed to 'Duplicate' in the terminal's tab menu.
* Enabled displaying multiple subscriptions on the Settings and Account screens.
* Improved stability of autocompletion.
* Enabled repetition for delete and backspace commands when holding the corresponding keys on the custom keyboard.

**Fixed:**

* Handling @ and # symbols on AZERTY keyboard.
  {% endupdate %}

{% update date="2021-04-19" %}

## 4.7.8

**Changed:**

* Enabled password autofill in the password popup window during connection.

**Fixed:**

* Crashes after a log-out when there's an active host chain session.
  {% endupdate %}

{% update date="2021-04-06" %}

## 4.7.7

**Changed:**

* Improved layout on iPhone 12 and iPhone 12 Pro.

**Fixed:**

* A rare crash when Terminal is open.
  {% endupdate %}

{% update date="2021-04-05" %}

## 4.7.6

**Changed:**

* Improved stability.
  {% endupdate %}

{% update date="2021-03-22" %}

## 4.7.5

**Changed:**

* Dropped the iOS 12 support.
* Termius for Teams trial enabled for users with the Premium subscription.
  {% endupdate %}

{% update date="2021-03-08" %}

## 4.7.4

**Fixed:**

* Yellow stripe blocking the additional keyboard.
* Crashes due to opening non-HTTP/HTTPS URLs from the browser in the terminal.
  {% endupdate %}

{% update date="2021-02-22" %}

## 4.7.3

**Added:**

* Improved 'Help & Feedback' section for more convenient user interaction with the Termius team.
* Improved app performance on the Keychain screen

**Fixed:**

* App crashes when no passphrase is provided for an encrypted Putty key.
* App crashes when all snippets are deleted.
* Problem with the appearance of navigation bar when the device is being rotated.
* PIC code input duplication.
* Yellow stripe preventing the usage of additional keyboard.
  {% endupdate %}

{% update date="2021-01-29" %}

## 4.7.2

**Fixed:**

* Crash when the CMD+M shortcut is used on an external keyboard.
* Crash when one connects from the Terminals screen.
* Crash when the SFTP extension is being used
  {% endupdate %}

{% update date="2021-01-27" %}

## 4.7.1

**Fixed:**

* Stability issues on the Hosts screen.
  {% endupdate %}

{% update date="2021-01-25" %}

## 4.7.10

**Fixed:**

* Issue affecting the synchronization of host data.
* Format handling of YubiKey token via NFC scanner.
* Issues with terminal color themes.
  {% endupdate %}

{% update date="2021-01-07" %}

## 4.6.11

**Added:**

* Team members can save their own credentials for shared hosts and groups.
* A new Editor role for teams: editors can add, edit, and delete hosts inside shared groups.
  {% endupdate %}
  {% endupdates %}

## 2020

{% updates format="full" %}
{% update date="2020-12-14" %}

## 4.6.10

**Fixed:**

* Duplication of Terminal tabs after pressing Cmd + N to open a new window.
  {% endupdate %}

{% update date="2020-12-03" %}

## 4.6.9

**Added / changed:**

* Improved hardware keyboard support for Shift+Alt combinations.

**Fixed:**

* Handling of YubiKey token via NFC scanner.
* Issue causing inactive sessions to display as active.
* Issue causing inability to focus on Termius in the split view mode.
  {% endupdate %}

{% update date="2020-10-28" %}

## 4.6.8

**Added:**

* Support for Full Keyboard Access.

**Fixed:**

* Issues related to iOS 14.
* Crashes on the Export Key screen.
  {% endupdate %}

{% update date="2020-08-27" %}

## 4.6.7

**Fixed:**

* App crashes when you try to create a snippet with the default target.
  {% endupdate %}

{% update date="2020-08-19" %}

## 4.6.6

**Changed:**

* Stability improvements.
  {% endupdate %}

{% update date="2020-07-29" %}

## 4.6.5

**Changed:**

* Stability improvements.

**Fixed:**

* Deep links handling.
* Warning notifications about pasteboard usage.
  {% endupdate %}

{% update date="2020-07-14" %}

## 4.6.4

**Changed:**

* Significantly reduced size of the app.
* Stability improvements.
  {% endupdate %}

{% update date="2020-06-10" %}

## 4.6.2

**Changed:**

* Stability improvements.
* The default port for HTTP proxy is 3128.
  {% endupdate %}

{% update date="2020-06-01" %}

## 4.6.1

**Changed:**

* Stability improvements.
* The terminal bell sound respects the system volume level.

**Fixed:**

* Issue with a filtered list of hosts.
  {% endupdate %}

{% update date="2020-05-06" %}

## 4.6.0

**Added:**

* Termius for Teams: ability to share host chains.

**Changed**

* The home indicator is hidden, when in the terminal.
  {% endupdate %}

{% update date="2020-04-30" %}

## 4.5.7

**Changed:**

* Stability improvements.
  {% endupdate %}

{% update date="2020-03-26" %}

## 4.5.6

**Added:**

* Trials for the Teams' plan.
  {% endupdate %}

{% update date="2020-03-18" %}

## 4.5.5

**Added:**

* Support for SEP keys: ability to generate a private key using iOS Keychain, store this key inside SEP and use it for SSH authentication.
* GitHub Teachers Toolbox support.
* Ability to auto-hide tabs and keyboard add-on in the terminal.
* Preview of the app (displayed when the app is in the background) has been blurred to prevent screenshots of the sensitive information.

**Fixed:**

* CTRL button state doesn't reset when the volume button is remapped to Ctrl.
  {% endupdate %}

{% update date="2020-02-18" %}

## 4.5.4

**Changed:**

* HTTP Cookies Storage moved to the iOS Keychain for better security.
  {% endupdate %}

{% update date="2020-01-28" %}

## 4.5.3

**Changed:**

* Splash screen is shown only the very first launch.

**Fixed:**

* Support pages.
* Lowercase input with the software keyboard in the terminal when Caps Lock is remapped.
* The Try Again button on the SFTP screen when presented from the terminal.
* Typos on the background sessions screen.
  {% endupdate %}
  {% endupdates %}

## 2019

{% updates format="full" %}
{% update date="2019-12-23" %}

## 4.5.2

**Changed:**

* Synchronization improvements.

**Fixed:**

* Failed launch on iOS 10.
  {% endupdate %}

{% update date="2019-12-11" %}

## 4.5.1

**Changed:**

* Better support for background sessions.
* Text files are no longer associated with Termius.
* Improved stability of synchronisation.
  {% endupdate %}

{% update date="2019-11-13" %}

## 4.5.0

**Changed:**

* Background work available to non-premium users.
  {% endupdate %}

{% update date="2019-10-24" %}

## 4.4.8

**Added / changed:**

* Data sharing for teams.
* Ability to select multiple items with a two-finger pan gesture.
* More stable synchronisation.
  {% endupdate %}

{% update date="2019-10-02" %}

## 4.4.7

**Fixed:**

* Pin code verification.
  {% endupdate %}

{% update date="2019-09-29" %}

## 4.4.6

**Fixed:**

* Incorrect PIN code validation.
  {% endupdate %}

{% update date="2019-09-28" %}

## 4.4.5

**‌Added / changed:**

* Full support of iOS 13, including context menus and the floating keyboard features.
* Drag and drop to the Hosts screen on iPhones. 
* Stability improvements.
  {% endupdate %}

{% update date="2019-09-14" %}

## 4.4.4

**Fixed:**

* One extra character copied in Terminal (for SSH).
* Drag and drop to the Hosts screen on iPhones.
* Stability issues.
  {% endupdate %}

{% update date="2019-09-03" %}

## 4.4.3

**Changed:**

* Stability improvements.

**Fixed:**

* Chinese (Simplified) - Pinyin input.
  {% endupdate %}

{% update date="2019-08-29" %}

## 4.4.2

**Added:**

* Ability to remap Caps Lock.
* Hotkeys for F1-F10.
* Bind address for local port forwarding.
  {% endupdate %}

{% update date="2019-08-12" %}

## 4.4.1

**Added / changed:**

* A "Use Option as Meta key" option.
* Internal bugs fixes and improvements.

**Fixed:**

* Extra characters appearing when you copy from the terminal.
* App crashes when you run a snippet on multiple targets.
  {% endupdate %}

{% update date="2019-07-24" %}

## 4.4.0

**Added / changed:**

* Port knocking.
* New black color theme.
* Updated and improved UI.
  {% endupdate %}

{% update date="2019-07-08" %}

## 4.3.12

**Changed:**

* Improvements to stability.

**Fixed:**

* Known hosts not saved when you use SFTP.
  {% endupdate %}

{% update date="2019-06-20" %}

## 4.3.11

**Changed:**

* Improvements to synchronisation stability.

**Fixed:**

* Crashes when connecting from the History screen.
  {% endupdate %}

{% update date="2019-06-11" %}

## 4.3.10

**Changed:**

* Stability improvements.

**Fixed:**

* Colors on the feedback screen when in the Dark mode.
  {% endupdate %}

{% update date="2019-06-05" %}

## 4.3.9

**Changed:**

* Improved hardware keyboard handling.

**Fixed:**

* Caps Lock and Esc broken in the terminal.
* Freezes when opening the terminal / switching to the app from the background.
* Saving a private key from the Import screen.
* Multiline copy in a Mosh session.
  {% endupdate %}

{% update date="2019-05-16" %}

## 4.3.8

**Added / changed:**

* Improvements to hardware keyboard support.
* Port forwarding now works with host chaining and proxy.

**Fixed:**

* App crashes when you connect to 'localhost'.
* Public key export via clipboard.
  {% endupdate %}

{% update date="2019-05-07" %}

## 4.3.7

**Changed:**

* Stability improvements.
  {% endupdate %}

{% update date="2019-04-30" %}

## 4.3.6

**Fixed:**

* SSH Agent Forwarding.
  {% endupdate %}

{% update date="2019-04-29" %}

## 4.3.5

**Fixed:**

* Crashes during file copy in SFTP.
* Fixed session disconnecting process.
* Other stability issues.
  {% endupdate %}

{% update date="2019-04-24" %}

## 4.3.4

**Added / changed:**

* Handling of Shift + Tab in the terminal.
* Improvements to Autocomplete and its stability.

**Fixed:**

* Hardware keyboards with non-QWERTY layouts not handled correctly.
* IPv6 connectivity issues when you use a hostname.
* Stability issues.
  {% endupdate %}

{% update date="2019-04-02" %}

## 4.3.3

**Fixed:**

* Problem with key repeat in the terminal.
* Handling of right shift/alt/cmd buttons on hardware keyboard.
* Connecting via SFTP for hosts with proxy and chain hosts configuration.
* Stability issues related to Autocomplete.
* Terminal rendering on iPads.
  {% endupdate %}

{% update date="2019-03-15" %}

## 4.3.2

**Added / changed:**

* Key repeat for English letters and numbers in the terminal.
* Improvements to Autocomplete.

**Fixed:**

* Public key export script​.
* Additional keyboard when used with a hardware keyboard.
  {% endupdate %}

{% update date="2019-02-01" %}

## 4.3.1

**Fixed:**

* Stability issues.
  {% endupdate %}

{% update date="2019-01-30" %}

## 4.3.0

**Added:**

* Yubikey support for SSH/SFTP sessions.
  {% endupdate %}
  {% endupdates %}

## 2018

{% updates format="full" %}
{% update date="2018-12-22" %}

## 4.2.2

**Fixed:**

* Current plan title.
  {% endupdate %}

{% update date="2018-12-19" %}

## 4.2.1

**Added / changed:**

* Termius for Teams.
* Support for restoring a subscription, when the user is logged in.

**Fixed:**

* Autocomplete.
* Siri shortcuts integration (removal of hosts/snippets associated with Siri shortcuts).
  {% endupdate %}

{% update date="2018-12-03" %}

## 4.2.0

**Added:**

* Support for host chains (jump hosts).

**Fixed:**

* Text selection and drag and drop in the terminal.
* Drag and drop in the SFTP manager.
  {% endupdate %}
  {% endupdates %}


# Android

New updates and improvements

## 2026

{% updates format="full" %}
{% update date="2026-07-06" %}

## 7.7.0

✨ Reworked terminal gesture handling. You no longer need to switch to a dedicated touch mode. Long press now activates arrow gestures. Learn more - [Mobile terminal](/terminal/mobile-terminal).\
✨ Improved the terminal tabs appearance.

🛠️ Patched libssh2 for CVE-2026-55200.\
🛠️ Changed the default sorting order in SFTP to be by kind.\
🛠️ Fixed a bug with the cached file path when editing a file in SFTP.\
🛠️ Other stability improvements.
{% endupdate %}

{% update date="2026-06-22" %}

## 7.6.0

✨ Added support for auth banners during the connection flow.\
✨ Added support for ANSI OSC 52 for better copy-paste experience in the terminal.

🛠️ Stability improvements.
{% endupdate %}

{% update date="2026-05-28" %}

## 7.5.5

🛠️ Fixed the issues with screen scrolling in TUI apps.\
🛠️ Fixed an issue where opening a terminal editor could show content overlapping the previous shell output.\
🛠️ Fixed an issue where SSH key selection in the host editor was occasionally not applied.\
🛠️ Fixed an issue where the app becomes unresponsive after returning from the background when the lock screen is enabled.\
🛠️ Other stability improvements.
{% endupdate %}

{% update date="2026-05-06" %}

## 7.5.3

🛠️ Stability improvements.
{% endupdate %}

{% update date="2026-04-13" %}

## 7.5.2

🛠️ Fixed incorrect display of port forwarding rule descriptions.\
🛠️ Stability improvements.
{% endupdate %}

{% update date="2026-03-11" %}

## 7.5.1

🛠️ Fixed the Flexoki themes selection color opacity.\
🛠️ Stability improvements.
{% endupdate %}

{% update date="2026-02-11" %}

## 7.5.0

✨ Added support for ML-DSA key generation and authentication (requires server-side ML-DSA support).

🛠️ The back gesture in SFTP now dismisses selection and filter modes instead of exiting to the main screen.\
🛠️ Fixed the app crash when selecting a snippet with variables from autocomplete suggestions.\
🛠️ Other stability improvements.
{% endupdate %}

{% update date="2026-01-19" %}

## 7.4.3

🛠️ Fixed occasional app crashes when resuming the app from the background.\
🛠️ Fixed links handling in the terminal: now it will open them in relevant apps, not always in the browser as before.\
🛠️ Fixed an occasional bug with the additional keyboard that didn’t allow switching back to the original keyboard.\
🛠️ Fixed a bug on the Connections screen with not showing started SFTP sessions until the connection is successful.\
🛠️ Other stability improvements.
{% endupdate %}
{% endupdates %}

## 2025

{% updates format="full" %}
{% update date="2025-12-22" %}

## 7.4.2

✨ SSH Certificates and Environment Variables are now free!

🛠️ Fixed an issue with password saving on host/group edit forms.\
🛠️ Other stability improvements.
{% endupdate %}

{% update date="2025-12-08" %}

## 7.4.1

✨ You can now preview files in SFTP when tapping on a file.

🛠️ Fixed an issue where searching by words on the Hosts screen was not working correctly.\
🛠️ Fixed a bug causing the wrong terminal to be focused when the app was reopened.\
🛠️ SOCKS4 proxy support has been deprecated. Please migrate to SOCKS5 if you are affected by this change.\
🛠️ Other stability improvements.
{% endupdate %}

{% update date="2025-11-24" %}

## 7.4.0

✨ Introducing SSH.id — device-bound, biometric-protected SSH keys you can provision anywhere using your SSH.id handle.\
✨ Added host icons for Rocky, Alma, Alpine, and Amazon Linux.\
✨ Added ability to edit files in SFTP using a file editor in the terminal.

🛠️ Fixed a bug with missing path separator when copying an SFTP item path to the clipboard.\
🛠️ Fixed a bug with handling of ssh:// links.\
🛠️ Other stability improvements.
{% endupdate %}

{% update date="2025-11-04" %}

## 7.3.1

✨ We've enhanced session log management. In addition to the last session log per host, you can now **save selected logs** to prevent them from being overwritten on the next connection. You can also **add comments** to these saved logs to briefly describe what the sessions were about.

🛠️ Other stability improvements.
{% endupdate %}

{% update date="2025-10-22" %}

## 7.3.0

✨ Multiple SFTP sessions can now be opened alongside the terminal tabs.\
✨ Connections screen on mobile now lists all types of active connections: SSH, SFTP, and Port Forwarding.

🛠️ Other stability improvements.
{% endupdate %}

{% update date="2025-10-06" %}

## 7.2.8

✨ Two new terminal themes were introduced: Flexoki Dark and Light.

🛠️ Replaced MD5 fingerprints by SHA256 fingerprints in connection flow.
{% endupdate %}

{% update date="2025-09-17" %}

## 7.2.7

🛠️ Improved SSH stability with PQC key exchange algorithms.\
🛠️ Fixed the Discord link to direct to the Android channel, instead of iOS.\
🛠️ Other stability improvements.
{% endupdate %}

{% update date="2025-09-09" %}

## 7.2.6

✨ Added an ability to bind Shift+Tab to a volume button or a shake gesture.

🛠️ Fixed the issue with showing recent connections in the New connection dialog.\
🛠️ Fixed broken emoji in the prompt line when autocomplete suggestions appear.\
🛠️ Other stability improvements.
{% endupdate %}

{% update date="2025-09-02" %}

## 7.2.5

🛠️ Fixed the issue with terminal input from GBoard.\
🛠️ Fixed the issue with unparsed symbols in the fish prompt.\
🛠️ Other stability improvements.
{% endupdate %}

{% update date="2025-08-26" %}

## 7.2.3 (4)

✨ Added **Shift+Tab** and **voice typing** to the additional keyboard in Terminal, enabling actions for Claude Code and other AI tools.

🛠️ Fixed inability to change language in the terminal.\
🛠️ Fixed a bug with pasting in Vim.\
🛠️ Other stability improvements.
{% endupdate %}

{% update date="2025-08-07" %}

## 7.2.2

✨ Added support for the `mlkem768x25519-sha256` key exchange (KEX) method. This support is limited to OpenSSH 9.9 and later when the server is configured to use only that KEX method.

🛠️ Fixed incorrect TTY behavior with tmux.\
🛠️ Fixed crash in the Connections screen after serial connection.\
🛠️ Fixed showing an empty view over existing hosts when resuming the app.\
🛠️ Other stability improvements.
{% endupdate %}

{% update date="2025-07-30" %}

## 7.2.0(1)

✨ Running snippets on multiple hosts is now free. Go to snippets, select targets, and execute the command across your servers simultaneously.\
✨ Discover local devices is now free. Scan your local network and connect to devices easily.

🛠️ Stability improvements.
{% endupdate %}

{% update date="2025-07-16" %}

## 7.1.3

🛠️ Fixed credentials inheritance in groups and hosts.\
🛠️ Stability improvements.
{% endupdate %}

{% update date="2025-06-26" %}

## 7.1.2

🛠️ Stability improvements.
{% endupdate %}

{% update date="2025-06-17" %}

## 7.1.0

🛠️ Stability improvements.\
✨ Added Logs feature. Terminal session logs are now automatically collected for every host. They sync across your devices and are shared with your team. You can view your logs on Desktop.
{% endupdate %}

{% update date="2025-06-10" %}

## 7.0.4

🛠️ Stability improvements.
{% endupdate %}

{% update date="2025-05-13" %}

## 7.0.3

🛠️ Stability improvements.
{% endupdate %}

{% update date="2025-04-25" %}

## 7.0.2

🛠️ Stability improvements.
{% endupdate %}

{% update date="2025-03-31" %}

## 7.0.1

🛠️ Fixed CVE-2023-48795 ("Terrapin Attack")

🛠️ Improved UX for navigation and dialogs
{% endupdate %}

{% update date="2025-03-12" %}

## 7.0.0

✨ This release introduces a significant UI update to improve navigation and streamline your workflow on both phone and tablet.\
✨ Updated Navigation and UI:

* **Phone**: A new bottom tab bar for more intuitive navigation between your Vault, Connections, and Settings
* **Tablet**: A new layout providing you with a desktop-like experience, using top tabs to switch between your Vault and active connections
  {% endupdate %}

{% update date="2025-03-06" %}

## 6.3.19

🛠️ Stability improvements.
{% endupdate %}

{% update date="2025-01-21" %}

## 6.3.18

🛠️ Stability improvements.
{% endupdate %}
{% endupdates %}

## 2024

{% updates format="full" %}
{% update date="2024-12-20" %}

## 6.3.17

🛠️ Stability improvements.
{% endupdate %}

{% update date="2024-11-29" %}

## 6.3.16

🛠️ Stability improvements.
{% endupdate %}

{% update date="2024-11-25" %}

## 6.3.15

🛠️ Stability improvements.
{% endupdate %}

{% update date="2024-11-08" %}

## 6.3.14

🛠️ Stability improvements.
{% endupdate %}

{% update date="2024-10-30" %}

## 6.3.13

🛠️ Stability improvements.
{% endupdate %}

{% update date="2024-10-25" %}

## 6.3.12

🛠️ Stability improvements.
{% endupdate %}

{% update date="2024-10-10" %}

## 6.3.10

🛠️ Stability improvements.
{% endupdate %}

{% update date="2024-09-26" %}

## 6.3.9

✨ Six new terminal themes were introduced: Kanagawa Wave, Kanagawa Dragon, Kanagawa Lotus, Hacker Blue, Hacker Green, and Hacker Red.

🛠️ Stability improvements.
{% endupdate %}

{% update date="2024-09-10" %}

## 6.3.8

🛠️ Stability improvements.
{% endupdate %}

{% update date="2024-08-26" %}

## 6.3.7

✨ Two new terminal themes were introduced: Everforest Dark and Everforest Light

🛠️ Fixed crash while connecting from Quick Connect
{% endupdate %}

{% update date="2024-08-14" %}

## 6.3.6

🛠️ Stability improvements.
{% endupdate %}

{% update date="2024-08-08" %}

## 6.3.5

✨ Updated existing fonts to support Nerd Font v3. Here is the list of nerd fonts in the application: FiraCode, JetBrainsMono, Meslo, Source Code Pro, DejaVu Sans Mono, Ubuntu Mono, Cascadia Code.

🛠️ Stability improvements
{% endupdate %}

{% update date="2024-07-30" %}

## 6.3.4

🛠️ Stability improvements.
{% endupdate %}

{% update date="2024-06-24" %}

## 6.3.2

🛠️ Fixed issues with host selection on the SFTP tab.\
🛠️ Improved stability of SFTP connections.\
🛠️ Other stability improvements.
{% endupdate %}

{% update date="2024-06-18" %}

## 6.3.1

🛠️ Improved the stability of file transfer via SFTP\
🛠️ Other stability improvements
{% endupdate %}

{% update date="2024-06-10" %}

## 6.3.3

✨ Three new terminal themes were introduced: Night Owl, Light Owl, Aura

🛠️ Stability improvements
{% endupdate %}

{% update date="2024-06-10" %}

## 6.3.0

✨ Three new terminal themes were introduced: Rosé Pine, Rosé Pine Moon, Rosé Pine Dawn\
✨ Improved pasting in nano

🛠️ Stability improvements
{% endupdate %}

{% update date="2024-05-20" %}

## 6.2.2

🛠️ Stability improvements.
{% endupdate %}

{% update date="2024-05-07" %}

## 6.2.1

🛠️ Fixed a bug when connecting via Host Chains using Biometric Keys.\
🛠️ Stability improvements.
{% endupdate %}

{% update date="2024-04-25" %}

## 6.2.0

🛠️ Stability improvements.
{% endupdate %}

{% update date="2024-04-12" %}

## 6.1.5

✨ Four new terminal themes were introduced: Ayu Dark, Ayu Light, Cyberpunk and Cyberpunk Scarlet.

🛠️ UI and stability improvements.
{% endupdate %}

{% update date="2024-03-26" %}

## 6.1.4

✨ We improved the SFTP stability\
✨ Selection mode on the Hosts screen became better - now it's easier to edit or duplicate filtered hosts\
✨ AI in the terminal is now free for users with an account

🛠️ Other stability improvements
{% endupdate %}

{% update date="2024-03-20" %}

## 6.1.3

✨ We improved the SFTP stability\
✨ Selection mode on the Hosts screen became better - now it's easier to edit or duplicate filtered hosts\
✨ AI in the terminal is now free for users with an account

🛠️ Other stability improvements
{% endupdate %}

{% update date="2024-03-04" %}

## 6.1.2

✨ Three new terminal themes were introduced: Aubergine, Romania Night, and Romania Day

🛠️ Fixed a couple of rare crashes that could happen when working with SFTP\
🛠️ Fixed a rare crash that could happen when changing tabs on the terminal screen\
🛠️ Fixed the bug that could lead to losing the link between biometric keys and hosts\
🛠️ Stability improvements
{% endupdate %}

{% update date="2024-02-21" %}

## 6.1.1

✨ Added support for connections with FIDO2-based SSH keys\
✨ Added the ability to generate FIDO2-based SSH keys\
✨ Improved the file transfer stability in SFTP\
✨ Improved the app stability when executing multiple snippets\
✨ Improved the PIN lock screen

🛠️ Fixed a bug with public keys export to hosts with host chains\
🛠️ Other UI and stability improvements
{% endupdate %}

{% update date="2024-02-07" %}

## 6.0.6

✨ AI in the Termius improvements. You can now paste the generated command to change its parameters before execution

🛠️ Fixed a bug when the plus button was not visible in some cases\
🛠️ Stability improvements
{% endupdate %}

{% update date="2024-01-25" %}

## 6.0.5

🛠️ Fixed the issue with login via Google and Apple accounts
{% endupdate %}

{% update date="2024-01-24" %}

## 6.0.4

🛠️Fixed a bug with the login and sign-up in the app.\
🛠️Stability improvements
{% endupdate %}

{% update date="2024-01-23" %}

## 6.0.2

🛠️ Fixed an issue when users couldn't navigate out of the C: drive on Windows machines\
🛠️ Fixed a bug when, in some cases, users were asked for an auth password while it had already been saved in the host\
🛠️ Improved handling of some escape sequences in the Terminal\
🛠️ Other stability Improvements
{% endupdate %}

{% update date="2024-01-11" %}

## 6.0.1

✨ Introducing AI in the terminal: Type what you want to do and get a command to make it for you.

🛠️ Fixed an issue with mouse clicks in SGR mode (used in nano).\
🛠️ Fixed an issue with missing line breaks in some cases when pasting multi-line text into the terminal.
{% endupdate %}
{% endupdates %}

## 2023

{% updates format="full" %}
{% update date="2023-12-22" %}

## 6.0.0

✨Team Vault: a new way to share data with the team. Now, in addition to host groups and snippets sharing, your team can share keys, identities, port forwarding rules, and known hosts. Working in a team is now much easier, thanks to Vaults.
{% endupdate %}

{% update date="2023-12-07" %}

## 5.11.2

✨ Introduced four new terminal themes: Winter Night, Winter Day, Tokyo Night, and Tokyo Day.

🛠️ Fixed an issue when a virtual Alt key won't auto-release when used with arrow virtual keys.
{% endupdate %}

{% update date="2023-11-27" %}

## 5.11.1

✨ Improved opening files from SFTP;\
✨ Improved terminal gestures detection;

🛠️ Fixed an issue when a virtual Alt key won't auto-release when used with other virtual keys\
🛠️ Fixed a rare issue when a terminal gets highlighted unexpectedly\
🛠️ Other stability improvements.
{% endupdate %}

{% update date="2023-11-15" %}

## 5.11.0

**✨ Enhanced Keychain Management.** Experience streamlined management of SSH keys and certificates. Easily export and share public keys for seamless access granting\
✨ Introduced four new terminal themes: Catppuccin Latte, Catppuccin Mocha, Diwali, Movember

🛠️ Fixed a bug when biometric key authentication requested via agent forwarding was stuck.\
🛠️ Fixed a bug when pressing a host on the widget didn't start a connection.\
🛠️ Fixed a bug with executing a snippet on a host without saved credentials\
🛠️ Improved the SFTP stability\
🛠️ Other stability improvements
{% endupdate %}

{% update date="2023-11-02" %}

## 5.10.11

🛠️ Fixed incorrect bottom panel offset on Android 10 and below.
{% endupdate %}

{% update date="2023-10-16" %}

## 5.10.10

✨ Introduced four new terminal themes: Atom One Dark, Atom One Light, Halloween, and Dia De Muertos.
{% endupdate %}

{% update date="2023-10-03" %}

## 5.10.9

🛠️ Stability improvements.
{% endupdate %}

{% update date="2023-09-18" %}

## 5.10.8

✨ Introduced six new terminal themes: Gruvbox Dark, Gruvbox Light, Material Dark, Material Light, Manhattan, Plastic World

🛠️ Stability improvements.
{% endupdate %}

{% update date="2023-08-29" %}

## 5.10.7

🛠️ Stability improvements.
{% endupdate %}

{% update date="2023-08-21" %}

## 5.10.5-6

🛠️ Fixed incorrect background colors on some screens.\
🛠️ Terminal color schemes' improvements.\
🛠️ Stability improvements.
{% endupdate %}

{% update date="2023-08-02" %}

## 5.10.4

🛠️ Stability improvements.
{% endupdate %}

{% update date="2023-07-19" %}

## 5.10.3

🛠️ Fixed an app crash that could happen when you delete a port forwarding rule.
{% endupdate %}

{% update date="2023-07-13" %}

## 5.10.2

✨ Navigation has been improved - essential buttons are moved to the bottom of the screen for easier access.

🛠️ SFTP stability improvements - an internal cache of files opened from local storage now clears when the app restarts.
{% endupdate %}

{% update date="2023-07-05" %}

## 5.10.1

🛠️ Fixed a bug with the launch of Port Forwarding rules when the binding address is not specified.
{% endupdate %}

{% update date="2023-06-22" %}

## 5.10.0

✨ Added ability to edit the Credentials Sharing mode for Hosts and Groups - this update will be **required** for you if you start using **Team Vaults** in the Termius Desktop app.
{% endupdate %}

{% update date="2023-06-07" %}

## 5.9.8

🛠️ Fixed a crash during the auth with a biometric key if the first attempt failed.\
🛠️ Other stability improvements.
{% endupdate %}

{% update date="2023-05-23" %}

## 5.9.7

🛠️ Stability improvements.
{% endupdate %}

{% update date="2023-05-19" %}

## 5.9.6

🛠️ Stability improvements.
{% endupdate %}

{% update date="2023-05-09" %}

## 5.9.5

🛠️ Fixed several UI issues.\
🛠️ Other stability improvements.
{% endupdate %}

{% update date="2023-04-17" %}

## 5.9.4

✨ **Biometric unlock with Face or Touch ID is now free**.\
✨ Added support for **Day/Night** mode on Android 10 and newer devices, allowing the app to follow the system's dark mode setting automatically.

🛠️ Fixed issues with SFTP causing app crashes for some users.\
🛠️ Fixed an issue with a split mode.\
🛠️ Fixed the incorrect tab behavior during PF rule creation.\
🛠️ Fixed issues with startup snippets in the terminal.
{% endupdate %}

{% update date="2023-03-29" %}

## 5.9.3

🛠️ Fixed a crash that sometimes occurred during Port Forwarding rules creation.\
🛠️ Fixed a problem with the screen overlapping by the keyboard on the AWS settings screen.\
🛠️ History screen improvements.\
🛠️ Other minor stability improvements.
{% endupdate %}

{% update date="2023-03-10" %}

## 5.9.2

✨ Added monochrome app icon support.

🛠️ Fixed crash on the SFTP screen.\
🛠️ Other stability improvements.
{% endupdate %}

{% update date="2023-01-27" %}

## 5.9.1

🛠️ Fixed occasional app crashes when you start a number of connections at the same time.\
🛠️ Fixed the problem when hosts don't apply configs from their groups.\
🛠️ Fixed a few bugs related to autocomplete in the terminal.
{% endupdate %}

{% update date="2023-01-16" %}

## 5.9.0

✨ **Terminal Autocomplete** is now free. Less typing on mobile, more autocomplete in the terminal for everyone!\
✨ **Password Paste** in the terminal is also free now. Running a command with sudo and it asks for a password, there is no longer a need to type it manually if it's saved in the host - just click one button on the keyboard and no longer feel the pain 🙂\
✨ We improved the connection flow so it's easier now to enter data or pass interactive checks during the connection.

🛠️ Stability improvements.
{% endupdate %}
{% endupdates %}

## 2022

{% updates format="full" %}
{% update date="2022-12-21" %}

## 5.8.7

🛠️ Fixed an issue with the Apple SSO.\
🛠️ Other stability improvements.
{% endupdate %}

{% update date="2022-11-30" %}

## 5.8.6

🛠️ Fixed the issue some users had when they chose to migrate to the new encryption algorithms.
{% endupdate %}

{% update date="2022-11-23" %}

## 5.8.5

✨ Variables in snippets. Forget about creating many similar snippets with only little differences in parameters. Instead, now you can configure snippet variables and be able to specify parameters right before the snippet execution.
{% endupdate %}

{% update date="2022-11-21" %}

## 5.8.4

🛠️ Improved the stability of the application.
{% endupdate %}

{% update date="2022-11-10" %}

## 5.8.3

🛠️ Stability improvements.
{% endupdate %}

{% update date="2022-10-18" %}

## 5.8.2

🛠️ Fixed an incorrect SFTP path shown after another connection is started.\
🛠️ Stability improvements.
{% endupdate %}

{% update date="2022-09-27" %}

## 5.8.1

✨ It's now easier to create port forwarding rules - check it out.

🛠️ Fixed a bug where the copy/paste menu in the terminal was not closing.
{% endupdate %}

{% update date="2022-08-29" %}

## 5.7.8

✨ A new 'Devices' section showing your devices with account access and allowing you to remotely sign out from a device.
{% endupdate %}

{% update date="2022-08-23" %}

## 5.7.7

🛠️ Improved stability during app launching.
{% endupdate %}

{% update date="2022-08-22" %}

## 5.7.6

🛠️ A tap in the terminal no longer hides the Termius keyboard.\
🛠️ Minor bug fixes and stability improvements.
{% endupdate %}

{% update date="2022-08-05" %}

## 5.8.0

🛠️ Fixed an issue causing the app to crash during SFTP file transfer.\
🛠️ Port knocking is no longer supported.
{% endupdate %}

{% update date="2022-08-03" %}

## 5.7.5

🛠️ Stability improvements.
{% endupdate %}

{% update date="2022-07-05" %}

## 5.7.4

✨ SSH certificates. Now a Pro user can attach an OpenSSH certificate to a key and use it for authentication.
{% endupdate %}

{% update date="2022-07-05" %}

## 5.7.3

🛠️ UI and stability improvements.
{% endupdate %}

{% update date="2022-06-27" %}

## 5.7.2

✨ Enterprise SSO. Termius supports more than 30 identity providers.

🛠️ UI and stability improvements.
{% endupdate %}

{% update date="2022-06-13" %}

## 5.7.1

✨ Updated the colors in the Termius Light and Termius Dark terminal themes.

🛠️ Stability improvements.
{% endupdate %}

{% update date="2022-05-30" %}

## 5.7.0

✨ Improved the UX of the Snippets screen.

🛠️ Fixed a UI issue occurring in the terminal when the Dark theme is on.
{% endupdate %}

{% update date="2022-05-17" %}

## 5.6.7

✨ Snippet Packages allows to organize snippets into one-level groups to put the same type snippets in one place and simplify snippets management in general.

🛠️ UI improvements.
{% endupdate %}

{% update date="2022-05-02" %}

## 5.6.6

🛠️ Fixed an issue preventing an inherited proxy from being used during connection.\
🛠️ Fixed an issue that could prevent connecting to a server using a key.\
🛠️ UI and stability improvements.
{% endupdate %}

{% update date="2022-04-19" %}

## 5.6.5

✨ Ability to generate a biometric key based on the Android Keystore and use it for SSH authentication.

🛠️ UI improvements.
{% endupdate %}

{% update date="2022-04-04" %}

## 5.6.4

🛠️ Stability improvements.
{% endupdate %}

{% update date="2022-03-23" %}

## 5.6.3

✨ Host chaining setting in groups for easier management of infrastructure involving advanced security. It’s now possible to specify a host chain consisting of jump or bastion host servers for many hosts at once – by specifying it in the group containing the hosts.

🛠️ Stability improvements.
{% endupdate %}

{% update date="2022-03-08" %}

## 5.6.2

🛠️ Minor visual improvements.
{% endupdate %}

{% update date="2022-02-21" %}

## 5.6.1

✨ Added new terminal color schemes: Dracula, Nord Light, Nord Dark, Monokai.\
✨ Added more fonts: Meslo (nerd font), JetBrains Mono (nerd font), Fira Code (nerd font), and Cascadia Code.\
✨ Teams can now confirm members' access to shared data from within the app.

🛠️ Stability improvements.
{% endupdate %}

{% update date="2022-02-08" %}

## 5.6.0

✨ When sharing data, teams can now choose to share credentials or not to share credentials, or to share access using Multi-Keys.

🛠️ Stability and UI improvements.
{% endupdate %}

{% update date="2022-01-24" %}

## 5.5.5

🛠️ Fixed the inability to use Ctrl + Space shortcuts in the terminal using an external keyboard.\
🛠️ Improved sign-up process.\
🛠️ Stability improvements.
{% endupdate %}
{% endupdates %}

## 2021

{% updates format="full" %}
{% update date="2021-12-30" %}

## 5.5.4

🛠️ Stability improvements.
{% endupdate %}

{% update date="2021-12-27" %}

## 5.5.3

🛠️ Fixed the issue when you had to manually refresh the SFTP list after connecting to devices with RouterOS.
{% endupdate %}

{% update date="2021-12-13" %}

## 5.5.2

✨ Support for serial connections on OTG-compatible Android devices.

🛠️ Stability improvements.
{% endupdate %}

{% update date="2021-12-02" %}

## 5.5.1

🛠️ Stability improvements.
{% endupdate %}

{% update date="2021-11-29" %}

## 5.5.0

✨ Added verbose connection logs to help troubleshoot connection issues.

🛠️ Fixed issues occurring after email verification.
{% endupdate %}

{% update date="2021-11-11" %}

## 5.4.5

✨ Added support for the new format of PuTTY keys (PPK3).
{% endupdate %}

{% update date="2021-10-20" %}

## 5.4.4

✨ Team editors can now share and unshare groups (like team admins can).
{% endupdate %}

{% update date="2021-09-28" %}

## 5.4.3

✨ Now you can see if your teammates are also using Termius at the moment.

🛠️ Fixed the links opening from the terminal on Android 11 devices.\
🛠️ Security improvements.
{% endupdate %}

{% update date="2021-09-06" %}

## 5.4.2

✨ Provided team owners with an option to require 2FA on their teams' accounts.

🛠️ Slightly improved the registration process.
{% endupdate %}

{% update date="2021-08-18" %}

## 5.4.1

✨ Introduced Multikey feature for Team users.

🛠️ Fixed local SFTP navigation for pre 11 Android versions.
{% endupdate %}

{% update date="2021-08-05" %}

## 5.4.0

✨ Enabled Snippet Sharing for Teams - now team owners and editors can share their snippets with the whole team.

🛠️ Solved the issue with running the Termius app using external intents.\
🛠️ Introduced some stability, security, and UX improvements.
{% endupdate %}

{% update date="2021-05-31" %}

## 5.2.9

**Changed:**

* Improved the appearance of the application for tablets and fixed some UI and UX shortcomings.
* Introduced minor security improvements.

**Fixed:**

* Crashes after a request for a master password change.
  {% endupdate %}

{% update date="2021-05-17" %}

## 5.2.8

**Changed:**

* Improved the Digital Ocean droplets import feature to import only public IP addresses.
* Improved the appearance of the application and fixed some UX shortcomings.

**Fixed:**

* Issues with connecting with Yubikey tokens.
  {% endupdate %}

{% update date="2021-05-03" %}

## 5.2.7

**Changed:**

* Increased the security of data on devices with root access even more.
* Improved the appearance of the application and fixed some UX shortcomings.
  {% endupdate %}

{% update date="2021-04-19" %}

## 5.2.6

**Changed:**

* UI improvements focused on the themes' colors and tablets' support.
* Security and stability improvements.

**Fixed:**

* Issue with closing active connections.
  {% endupdate %}

{% update date="2021-03-22" %}

## 5.2.4

**Changed:**

* Improved stability.
* Some screens have been adjusted to match color schemes.

**Fixed:**

* Several critical bugs leading to application crashes.
  {% endupdate %}

{% update date="2021-03-08" %}

## 5.2.3

**Changed:**

* Improved stability.

**Changed:**

* Interfaces issues for tables.
  {% endupdate %}

{% update date="2021-02-22" %}

## 5.2.2

**Changed:**

* Improved stability and ease of interaction.
  {% endupdate %}

{% update date="2021-02-08" %}

## 5.2.1

**Added:**

* Updated 'Help & Feedback' section for more convenient user interaction with the Termius team.
  {% endupdate %}

{% update date="2021-01-26" %}

## 5.2.0

**Fixed:**

* Issue affecting the synchronization of host data.
* Problem with the Sync keys and identities option.
* Stability issues.
  {% endupdate %}
  {% endupdates %}

## 2020

{% updates format="full" %}
{% update date="2020-12-28" %}

## 5.1.0

**Added:**

* Team members can save their own credentials for shared hosts and groups.
* A new Editor role is now available: editors can add, edit, and delete hosts inside shared groups.

**Fixed:**

* Conflict between Mosh and Proxy checkboxes on the host editor screen.
* Issue with ssh key creation for users using the new encryption schema.
* State and color fixes for the agent forwarding editor.
  {% endupdate %}

{% update date="2020-12-14" %}

## 5.0.1

**Added / changed:**

* Expanded settings of locking screen options.

**Fixed:**

* UI issues on the identity editor screen.
* Problem of displaying sensitive info in Mosh connections.
  {% endupdate %}

{% update date="2020-10-15" %}

## 5.0.0

**Changed:**

* Stability improvements.
  {% endupdate %}

{% update date="2020-08-21" %}

## 4.6.3

**Changed:**

* Stability improvements.
  {% endupdate %}

{% update date="2020-07-07" %}

## 4.6.2

**Changed:**

* Stability improvements.
  {% endupdate %}

{% update date="2020-06-15" %}

## 4.6.1

**Changed:**

* Stability improvements.
  {% endupdate %}

{% update date="2020-06-12" %}

## 4.6.0

**Added / changed:**

* Support for the 'linux' terminal type.
* Stability improvements.
  {% endupdate %}

{% update date="2020-04-28" %}

## 4.5.12

**Changed:**

* Stability improvements.
  {% endupdate %}

{% update date="2020-04-22" %}

## 4.5.1

**Added:**

* Termius for Teams: ability to share host chains.

**Fixed:**

* Problem with KDE Neon.
  {% endupdate %}

{% update date="2020-03-19" %}

## 4.5.6

**Changed:**

* Stability improvements.
  {% endupdate %}

{% update date="2020-03-18" %}

## 4.5.5

**Added:**

* GitHub Teachers Toolbox support.
* Stability improvements.
  {% endupdate %}

{% update date="2020-02-13" %}

## 4.5.0

**Fixed:**

* Problem auto-reconnecting to SFTP hosts.
* AWS regions issue.
* Issue with environment variables.
* Zooming in the terminal.
* Shared group incorrectly displayed when you create a group.
  {% endupdate %}
  {% endupdates %}

## 2019

{% updates format="full" %}
{% update date="2019-12-23" %}

## 4.4.16

**Changed:**

* Stability improvements.

**Fixed:**

* Issues with the bottom panel in the terminal.
* Crashes after the creation of an account.
* Issues with SFTP when the Internet is unavailable.
  {% endupdate %}

{% update date="2019-12-03" %}

## 4.1.14

**Fixed:**

* Duplicated characters in text editors.
* Synchronization of port forwarding rules.
* Crashes when the Terminals screen opens.
* Lock screen behavior.
* Crashes after activation of Drag & Drop.
* Incorrect info shown when a team subscription expired.
* Issues with filling in the address field on the Port Forwarding screen.
* Crashes during resizing of the terminal screen.
  {% endupdate %}

{% update date="2019-11-14" %}

## 4.4.9

**Added / changed:**

* True color support.
* Added mouse-clicking support to the terminal.
* Improved the format of indo-arabian numbers.
* Stability improvements.

**Fixed:**

* Issues with the ed25519 keygen round field.
* Crashes when setting a passphrase in SFTP.
* SFTP for S3 buckets.
* Incorrect colors in the white theme.
* Incorrect titles when the select mode is active.
* Crashes in the terminal.
  {% endupdate %}

{% update date="2019-10-10" %}

## 4.4.0

**Added:**

* Rounds option for generation of ED25519 keys.
* Multi-language tags.

**Fixed:**

* Issues with creating port forwarding rules.
* The problem with the additional keyboard on devices with cutout.
* Issues with RTL languages.
* The F13-F20 on the additional keyboard.
* The cursor speed option.
* The toggle logic of fingerprint unlock.
* A crash in SFTP after editing a file.
* The Bell sound not playing in some cases.
* Incorrect creation of hosts from History.
  {% endupdate %}

{% update date="2019-08-29" %}

## 4.2.16

**Changed:**

* Improved Mosh fail notifications.

**Fixed:**

* DNS Service Discovery not discovering SSH.
* Keyboard size issues.
* Crash during a test selection in the terminal.
* More bug fixes.
  {% endupdate %}

{% update date="2019-08-21" %}

## 4.2.13

**Changed:**

* Bug fixes and stability improvements.
  {% endupdate %}

{% update date="2019-08-13" %}

## 4.2.11

**Changed:**

* Bug fixes and stability improvements.
  {% endupdate %}

{% update date="2019-08-06" %}

## 4.2.5

**Fixed:**

* Data reloading.
* UserVoice colors when in the Dark mode.
* Stability issues and more fixes.
  {% endupdate %}

{% update date="2019-07-30" %}

## 4.2.3

**Changed:**

* Improvements to themes.
* Stability improvements.

**Fixed:**

* Incorrect removing of port knocking rules.
  {% endupdate %}

{% update date="2019-07-24" %}

## 4.2.2

**Added / changed:**

* Improvements to themes.
* Stability improvements.

**Fixed:**

* Removing port knocking rules.
  {% endupdate %}

{% update date="2019-07-08" %}

## 4.2.0

**Added / changed:**

* Theme support (White, Dark, Black).
* Stability and security improvements.

**Fixed:**

* Snippet running in an active terminal.
  {% endupdate %}

{% update date="2019-06-17" %}

## 4.1.10

**Changed:**

* Improved back navigation for terminals opened via notifications.

**Fixed:**

* Key importing.
* Telnet settings not saved.
* Freezes after disconnection.
  {% endupdate %}

{% update date="2019-05-22" %}

## 4.1.7

**Changed:**

* Stability improvements.
  {% endupdate %}

{% update date="2019-05-16" %}

## 4.1.4

**Changed:**

* Stability improvements.
  {% endupdate %}

{% update date="2019-04-29" %}

## 4.1.2

**Fixed:**

* Random interruptions for host chain connections.
* Crash fixes and performance issues.
  {% endupdate %}

{% update date="2019-03-27" %}

## 4.0.25

**Fixed:**

* Focus on the host editor screen.
* SFTP screens locking after creation of a directory.
* Group settings usage for SFTP connections.
* Incorrect color of the menu button on terminal tabs.
* Synchronization when done after you log out.
  {% endupdate %}

{% update date="2019-03-15" %}

## 4.0.24

**Fixed:**

* Minor issues.
  {% endupdate %}

{% update date="2019-03-15" %}

## 4.0.23

**Fixed:**

* Host chaining issues.
  {% endupdate %}

{% update date="2019-03-01" %}

## 4.0.21

**Fixed:**

* Stability issues on Pixelbooks.
* Crashes some users experienced.
  {% endupdate %}

{% update date="2019-02-20" %}

## 4.0.18

**Added:**

* Confirmation before you delete a host.

**Fixed:**

* Resizing terminal when using Mosh.
* Getting disconnected when using SSH.
* Group merging settings.
  {% endupdate %}

{% update date="2019-02-06" %}

## 4.0.16

**Fixed:**

* Double echo in Telnet.
* Telnet sending '\n' instead of '\r' for the Return key.
* Performance issues in SSH connections.
  {% endupdate %}

{% update date="2019-01-31" %}

## 4.0.13

**Fixed:**

* Being unable to connect with PuTTY keys.
  {% endupdate %}

{% update date="2019-01-30" %}

## 4.0.10

**Added / changed:**

* PAM authentication support for Yubikey.
* SSH and Telnet improvements.

**Fixed:**

* Minor issues with pattern/PIN lock.
  {% endupdate %}

{% update date="2019-01-10" %}

## 3.4.2

**Changed:**

* Minor stability improvements.

**Fixed:**

* Password dialog when you're changing e-mail.
* Terminal freezing after the ‘sleep’ command.
  {% endupdate %}
  {% endupdates %}

## 2018

{% updates format="full" %}
{% update date="2018-12-24" %}

## 3.4.0

**Fixed:**

* 'Forward delete' hardware key.
* Invisible @ character.
* Disabled scrolling after a text copy in the terminal.
  {% endupdate %}

{% update date="2018-12-12" %}

## 3.3.37

**Fixed:**

* Import from Digital Ocean.
  {% endupdate %}

{% update date="2018-11-20" %}

## 3.3.36

**Fixed:**

* 'Retry connecting' button.
* Problem with a password and telnet connections.
* Import from Digital Ocean.
  {% endupdate %}
  {% endupdates %}


# Welcome to Termius Help Center

<h2 align="center">We are here to help you</h2>

<p align="center">Browse the topics below or use the GitBook assistant to ask anything you need help with</p>

<p align="center"><button type="button" class="button primary" data-action="ask" data-icon="gitbook-assistant">Ask a question…</button></p>

<table data-view="cards"><thead><tr><th></th><th></th><th></th><th data-hidden data-card-cover data-type="image">Cover image</th><th data-hidden data-card-target data-type="content-ref"></th></tr></thead><tbody><tr><td><h4><i class="fa-monitor-waveform">:monitor-waveform:</i></h4></td><td><h4>System Status</h4></td><td>Check the current status of Termius services</td><td></td><td><a href="https://status.termius.com/">https://status.termius.com/</a></td></tr><tr><td><h4><i class="fa-comments-question">:comments-question:</i></h4></td><td><h4>FAQ</h4></td><td>Find answers about features, setup, and usage</td><td></td><td><a href="/pages/yJGXBOf13mwxbIk1AeIm">/pages/yJGXBOf13mwxbIk1AeIm</a></td></tr><tr><td><h4><i class="fa-seal-exclamation">:seal-exclamation:</i></h4></td><td><h4>Troubleshooting</h4></td><td>Get help resolving common issues and errors</td><td></td><td><a href="/pages/UpIRTIu5VH8NA3eG0I4S">/pages/UpIRTIu5VH8NA3eG0I4S</a></td></tr></tbody></table>

<br>

***

<h3 align="center">Can't find what you're looking for?</h3>

<p align="center"><a href="https://support.termius.com/hc/en-us/requests/new" class="button secondary">Contact support</a></p>

<p align="center"><br></p>

***


# Frequently Asked Questions

<h2 align="center">Frequently Asked Questions</h2>

<p align="center">Browse the topics below or use the GitBook assistant to ask anything you need help with.</p>

## Account & Billing

<table data-view="cards"><thead><tr><th align="center"></th><th data-hidden data-card-target data-type="content-ref"></th></tr></thead><tbody><tr><td align="center">Is it possible to reset the Encryption Password without losing the data?</td><td><a href="/pages/HOzCZjr1kFQD9di8OeLr">/pages/HOzCZjr1kFQD9di8OeLr</a></td></tr><tr><td align="center">What will happen when my Pro subscription expires?</td><td><a href="/pages/OjLKvW5FKHtZa7zEyJAO">/pages/OjLKvW5FKHtZa7zEyJAO</a></td></tr><tr><td align="center">Resellers FAQ</td><td><a href="/pages/y4XnZCiyNBZEfzsSxp2r">/pages/y4XnZCiyNBZEfzsSxp2r</a></td></tr><tr><td align="center">How can I cancel the trial?</td><td><a href="/pages/4qnJSbV5KAWGoUP9mWDn">/pages/4qnJSbV5KAWGoUP9mWDn</a></td></tr><tr><td align="center">How can I request a refund?</td><td><a href="/pages/RNerYUzqy97XtxfEdKkY">/pages/RNerYUzqy97XtxfEdKkY</a></td></tr><tr><td align="center">How can I get Termius for free with GitHub Student Developer Pack?</td><td><a href="/pages/BanVxUGbiqIzoy0hp2k7">/pages/BanVxUGbiqIzoy0hp2k7</a></td></tr></tbody></table>

## App usage

<table data-view="cards"><thead><tr><th align="center"></th><th data-hidden data-card-target data-type="content-ref"></th></tr></thead><tbody><tr><td align="center">How can I keep Termius sessions alive in the background on iOS/iPadOS?</td><td><a href="/pages/v0q4dfLsgWPh5RCuSfTS">/pages/v0q4dfLsgWPh5RCuSfTS</a></td></tr><tr><td align="center">How Termius detects a leaked Encryption Password?</td><td><a href="/pages/o8pAucg8x0C6pG4qaRES">/pages/o8pAucg8x0C6pG4qaRES</a></td></tr><tr><td align="center">How to set a default SFTP path?</td><td><a href="/pages/lrnQawqyXlno0ZIGAC8o">/pages/lrnQawqyXlno0ZIGAC8o</a></td></tr><tr><td align="center">How can I hide the AI widget?</td><td><a href="/pages/D5Wkpp54wuFxPnrkQXLj">/pages/D5Wkpp54wuFxPnrkQXLj</a></td></tr><tr><td align="center">Why am I required to create an account?</td><td><a href="/pages/HKeIABW3qxjZkbdRC2Jp">/pages/HKeIABW3qxjZkbdRC2Jp</a></td></tr><tr><td align="center">Can Termius be localized to other languages?</td><td><a href="/pages/B6wkn2Mwppvd8KcmU1pB">/pages/B6wkn2Mwppvd8KcmU1pB</a></td></tr></tbody></table>

***

<table data-view="cards"><thead><tr><th></th><th></th><th data-hidden data-card-target data-type="content-ref"></th></tr></thead><tbody><tr><td><i class="fa-arrow-left">:arrow-left:</i></td><td><strong>Back to main</strong></td><td><a href="/pages/njH9eu74kH4nq2PaW1uB">/pages/njH9eu74kH4nq2PaW1uB</a></td></tr><tr><td><i class="fa-monitor-waveform">:monitor-waveform:</i></td><td><strong>System Status</strong></td><td><a href="https://status.termius.com/">https://status.termius.com/</a></td></tr><tr><td><i class="fa-hexagon-exclamation">:hexagon-exclamation:</i></td><td><strong>Troubleshooting</strong></td><td><a href="/pages/UpIRTIu5VH8NA3eG0I4S">/pages/UpIRTIu5VH8NA3eG0I4S</a></td></tr></tbody></table>

***

<p align="center"></p>


# Is it possible to reset the Encryption Password without losing data?

Data recovery is not possible if you lose your Encryption Password. Termius stores all user data in an encrypted Vault. Your password acts as the encryption key for that Vault. If you lose it, you cannot open the Vault. Even the Termius staff cannot recover the data, because the system is designed this way.

The Vault is a core part of the product and it adds another layer of protection for your data. At the same time, passwords can be forgotten. We plan to add more safeguards to reduce that risk in more cases.

If you lost your Encryption Password, you can remove the existing Vault and create a new one in the [account management portal](https://account.termius.com/forgot-password).

To learn more about encryption in Termius, see [Encryption overview](/security/encryption-overview).


# How can I keep Termius sessions alive in the background on iOS/iPadOS?

This article explains why sessions disconnect and port forwarding stops after you send the app to the background on iOS or iPadOS. It also covers a few ways to reduce the impact.

Termius, like most other apps, cannot keep running in the background because of iOS and iPadOS restrictions. Recent versions stop background activity almost immediately, usually within 20 to 30 seconds. Older versions could allow it for 2 to 3 minutes.

These restrictions help preserve battery life and device performance. They can also interrupt SSH sessions and port forwarding. Here are a few ways to work around that.

### Location tracking

When you connect in Termius, the app logs the session. This log gives you an activity history and lets you add previous sessions as hosts.

If you enable location tracking, you can also see where a connection was made on a map. As a side effect, background connections are less likely to be interrupted.

### Split view on iPad

On iPad, you can use [Split View](https://support.apple.com/en-us/HT207582) to keep Termius open alongside another app.

### screen / tmux

[`screen`](https://en.wikipedia.org/wiki/GNU_Screen) or [`tmux`](https://en.wikipedia.org/wiki/Tmux) can preserve your terminal session if the connection drops. However, they do not help if the app goes to the background while port forwarding is active.

`tmux` and `screen` may not be available on some devices, especially routers and switches.

**Note:** You can use a startup snippet to launch `tmux` or `screen` automatically when you connect. To learn more, see [Snippets](/terminal/snippets).&#x20;


# What will happen when my Pro subscription expires?

When your Pro subscription expires, Pro features are disabled. This includes synchronization, so changes you make in the app are no longer synced to your Termius cloud vault. Those changes remain stored locally on your device.

{% hint style="danger" %}
If you log out with unsynced changes, those changes will be lost.
{% endhint %}


# How does Termius detect a leaked Encryption Password?

When you set a new Encryption Password for your account, Termius can check whether it appeared in known data breaches by using the [haveibeenpwned.com](https://haveibeenpwned.com/Privacy) service, or HIBP.

{% hint style="info" %}
Termius never sends the original password in plain text or enough information to reveal it.
{% endhint %}

The Termius app sends the first 5 characters of the SHA-1 hash of the user-provided password to the HIBP API, following [Cloudflare's k-anonymity model](https://blog.cloudflare.com/validating-leaked-passwords-with-k-anonymity/).

For example, take the password `pa$word`:

* The SHA-1 hash of the password is `617ADCC02712A40E76254BA1F3A26AF660F98EC7`.
* The first 5 characters of that hash are `617AD`.
* The remaining characters are `CC02712A40E76254BA1F3A26AF660F98EC7`.
* HIBP returns the possible matches for that prefix at <https://api.pwnedpasswords.com/range/617AD>.
* Then Termius checks whether the remainder listed above appears in the response.

```
...
CC02712A40E76254BA1F3A26AF660F98EC7:96
...
```

This means the password appeared in 96 known breaches.


# Resellers FAQ

Termius works with resellers regularly. Below are answers to common reseller questions.

<details>

<summary>What is the price for resellers' cost and is there a reseller discount?</summary>

We do not sell Pro, Team, or Business subscriptions through resellers. Resellers can offer the Enterprise plan with a minimum of 10 seats.

</details>

<details>

<summary>Can you provide a retail pricing?</summary>

Reseller pricing depends on the case and covers at least 10 seats on the Enterprise plan.

</details>

<details>

<summary>Is this product sold as a perpetual license or a subscription?</summary>

The product is sold as an annual subscription.

</details>

<details>

<summary>Is this product billed once upfront or via recurring billing?</summary>

It uses recurring annual billing.

</details>

<details>

<summary>How is the product delivered? Physical box/CD or download?</summary>

The end user, or team owner, must first create a Termius account and start a [Team Trial](https://account.termius.com/team). Once the team is activated, the team owner must notify us at <support@termius.com>. After the paperwork is complete, we send an invoice and activate the subscription. The team owner can then invite the rest of the team.

</details>

<details>

<summary>Are there any additional costs, such as required maintenance or support?</summary>

It depends on the complexity of the case. If additional support or administrative costs are required for a specific customer, they are negotiated under the Enterprise plan.

</details>

<details>

<summary>Do you require a contract to be signed?</summary>

No. A contract is not required.

</details>

<details>

<summary>Do you require an order form? If so, please provide it with your response.</summary>

No. An order form is not required.

</details>

<details>

<summary>Do you have terms and conditions to sign on your website? If so, please send me a link with your response.</summary>

No. The [Terms of Use](https://termius.com/terms-of-use) and [Privacy Policy](https://termius.com/privacy-policy) are available on the website.

</details>

<details>

<summary>Does your software Auto Renew? If yes, what steps can be taken at the time of order placement to cancel the auto-renewal?</summary>

Yes. Please let us know if auto-renewal should be disabled.

</details>


# How can I cancel the trial?

### Desktop — Windows, Linux, macOS <a href="#h_01hg9e4y9jxg4zkswt0vwmdv54" id="h_01hg9e4y9jxg4zkswt0vwmdv54"></a>

On desktop, the trial starts automatically when you create an account or activate any team feature. The trial is free and does not renew automatically, so you do not need to cancel it in advance. When the trial ends, you can switch to the Starter plan, stay on your previous plan, or upgrade to a team subscription.

### iOS <a href="#h_01hg9e63gf59qpxzn83tkrjhxp" id="h_01hg9e63gf59qpxzn83tkrjhxp"></a>

On iOS, the trial is managed by Apple through your Apple ID account.

{% hint style="warning" %}
You will be charged automatically when the trial ends.
{% endhint %}

You can cancel your trial or subscription in the App Store on your iPhone or iPad.

For step-by-step instructions, see the Apple guide: <https://support.apple.com/en-us/HT202039>

### Android <a href="#h_01hg9er3fmqe7kcm6r16er7bzf" id="h_01hg9er3fmqe7kcm6r16er7bzf"></a>

On Android, the trial is managed by Google through your Google account.

{% hint style="warning" %}
You will be charged automatically when the trial ends.
{% endhint %}

You can cancel your trial or subscription in the Google Play app on your Android device.

For step-by-step instructions, see the Google Play guide: <https://support.google.com/googleplay/answer/7018481>


# How can I request a refund?

Refund requests are reviewed on a case-by-case basis under the company Terms of Use.

If you forgot to cancel a subscription purchased on our website, you can request a refund using [this form](https://support.termius.com/hc/en-us/requests/new).

If you purchased through the App Store, Google Play, or Microsoft Store, follow the relevant instructions:

* [App Store](https://support.apple.com/en-us/HT204084)
* [Google Play](https://support.google.com/googleplay/workflow/9813244?hl=en)
* [Microsoft Store](https://support.microsoft.com/en-us/account-billing/returning-items-you-bought-from-microsoft-store-for-exchange-or-refund-81629012-aa4f-f48b-2394-8596f415072b)

{% hint style="info" %}
Unfortunately, Termius cannot issue refunds for subscriptions purchased through a third-party store. Store policies require refunds to be handled by the store directly.
{% endhint %}


# How can I get Termius for free with GitHub Student Developer Pack?

### Get Termius for free as a student

Termius offers free access to students and educators through the GitHub Student Developer Pack. To claim your benefits, follow these steps:

#### 1. Verify Your GitHub Status

First, you need a verified GitHub Education account. If you have not done this yet, follow the [official GitHub Student Developer Pack guide](https://education.github.com/pack) to get started.

#### 2. Wait for Activation

There is a difference between **Verified** and **Activated**. GitHub may approve your application first, but partner offers like Termius are only available after your status is fully activated. This can take a few days.

#### 3. Link to Termius

Once your GitHub Education access is active, you can link it to your Termius account:

* Log in to your [Termius Account Dashboard](https://account.termius.com/).
* Open the **Students** page.
* Select the option to connect your GitHub account.


# How to set a default SFTP path?

Termius does not support this directly yet, but you can apply a server-side workaround to get the same result.

1. Open the `sshd_config` file on the server you connect to.
2. Add `-d "<path>"` to the end of the line that starts with `Subsystem sftp`.

{% hint style="success" %}
Example: `Subsystem sftp /usr/libexec/sftp-server -d "/home/"`
{% endhint %}


# How can I hide the AI widget?

Termius can generate commands from plain-language descriptions. On iOS, this happens through the AI widget above the keyboard in the terminal. On desktop, it is part of shell integration and Autocomplete. See [Shell Integration and Autocomplete](/terminal/autocomplete-and-shell-integration).

{% tabs %}
{% tab title="iOS/iPadOS" %}
To hide the AI widget on iOS or iPadOS:

1. Open `Termius > Profile > Settings`.
2. Turn on `Hide the AI widget` in the `Terminal` section.
   {% endtab %}

{% tab title="Desktop" %}
To disable AI suggestions that convert text into commands, you need to disable Autocomplete completely.

1. Open `Termius > Settings > Terminal`.
2. Turn off `Autocomplete`.
   {% endtab %}
   {% endtabs %}


# Why am I required to create an account?

Some versions of Termius allowed users to skip account creation. However, account creation has been part of Termius from day one.

Can you use Termius without an account? Yes. You can log out and use Termius locally without one.

On a new installation, you can sign in with an existing account or create a new one. New accounts start a trial, so you can evaluate Pro, Team, and Business features. Not all features are available on the free plan.

{% hint style="success" %}
To encrypt and sync your data with your cloud vault, you need an account and a subscription.
{% endhint %}


# Can Termius be localized to other languages?

The app interface currently supports English only. Termius is considering localization for other languages, but there is no confirmed timeline yet.


# Troubleshooting

<h2 align="center">Troubleshooting</h2>

<p align="center">Browse the topics below or use the GitBook assistant to ask anything you need help with.</p>

<table data-view="cards"><thead><tr><th align="center"></th><th data-hidden data-card-target data-type="content-ref"></th></tr></thead><tbody><tr><td align="center">Port Forwarding or SSH connections stop working when switching apps on Android</td><td><a href="/pages/tKtKRVKPRK5gxo24OWUS">/pages/tKtKRVKPRK5gxo24OWUS</a></td></tr><tr><td align="center">My App Store subscription is not active</td><td><a href="/pages/EPLDdFCO2OxHDE96RLxf">/pages/EPLDdFCO2OxHDE96RLxf</a></td></tr><tr><td align="center">I can't log in or synchronize data</td><td><a href="/pages/QD4KSRZmSWHhBur7hS7H">/pages/QD4KSRZmSWHhBur7hS7H</a></td></tr><tr><td align="center">I can't enter some characters (pipe, backslash, etc.) in the terminal</td><td><a href="/pages/Bd9mEYill8Rz84vgUSXB">/pages/Bd9mEYill8Rz84vgUSXB</a></td></tr><tr><td align="center">I can't connect to a local device on iOS or macOS</td><td><a href="/pages/Q2vILVR58rMyrVjSdZnE">/pages/Q2vILVR58rMyrVjSdZnE</a></td></tr><tr><td align="center">I get a 'host is unreachable' error on iOS</td><td><a href="/pages/phnjZsGINfHWXE22Kz6X">/pages/phnjZsGINfHWXE22Kz6X</a></td></tr><tr><td align="center">I can't find the local terminal option in the desktop app</td><td><a href="/pages/MnJNWO2VZWdA5D4lIMNA">/pages/MnJNWO2VZWdA5D4lIMNA</a></td></tr><tr><td align="center">Connection drops after a successful authentication</td><td><a href="/pages/sShbdV4KiMWQ7OKIGh51">/pages/sShbdV4KiMWQ7OKIGh51</a></td></tr><tr><td align="center">Serial connections don't work on Microsoft Windows Store builds</td><td><a href="/pages/xS8PBxHJcLeEF7GZVPM3">/pages/xS8PBxHJcLeEF7GZVPM3</a></td></tr><tr><td align="center">I'm unable to link my GitHub account</td><td><a href="/pages/aex9EQ5QIKDFcWsGQn7T">/pages/aex9EQ5QIKDFcWsGQn7T</a></td></tr><tr><td align="center">I can't connect to a host</td><td><a href="/pages/azVoQ5N8wVPbPlwXbdJB">/pages/azVoQ5N8wVPbPlwXbdJB</a></td></tr></tbody></table>

***

<table data-view="cards"><thead><tr><th></th><th></th><th data-hidden data-card-target data-type="content-ref"></th></tr></thead><tbody><tr><td><i class="fa-arrow-left">:arrow-left:</i> </td><td><strong>Back to main</strong></td><td><a href="/pages/njH9eu74kH4nq2PaW1uB">/pages/njH9eu74kH4nq2PaW1uB</a></td></tr><tr><td><i class="fa-monitor-waveform">:monitor-waveform:</i></td><td><strong>System Status</strong></td><td><a href="https://status.termius.com/">https://status.termius.com/</a></td></tr><tr><td><i class="fa-messages-question">:messages-question:</i></td><td><strong>FAQ</strong></td><td><a href="/pages/BB1xVXrYwUM1XcR9cNyq">/pages/BB1xVXrYwUM1XcR9cNyq</a></td></tr></tbody></table>

<p align="center"></p>

***


# Port Forwarding or SSH connections stop working when switching apps on Android

This can happen when battery optimization is enabled for Termius. In that mode, Android may restrict background activity and stop SSH sessions or port forwarding after you switch apps.

To keep SSH sessions and port forwarding active in the background, disable battery optimization for Termius. Open your Android app settings, find **Termius**, turn off **battery optimization**, and allow **unrestricted** background usage.


# My App Store subscription is not active

If you purchased a Termius subscription in the App Store but cannot access Pro features, follow these steps to link the subscription to your Termius account.

### Ensure the proper Apple ID is used <a href="#h_01k43nrwdd59yt69348jgyafqw" id="h_01k43nrwdd59yt69348jgyafqw"></a>

Some people use multiple Apple IDs. App Store subscriptions only work with apps downloaded using the same Apple ID.

This often happens when the app is installed with one Apple ID and the subscription is purchased with another. If that happened, follow the steps below.

#### Ensure sync is working for your account <a href="#h_01k43q0keqg72yz8qyadvm256g" id="h_01k43q0keqg72yz8qyadvm256g"></a>

Make sure you have an active Pro trial so your data syncs again after reinstalling the app.

If you do not have an active Pro trial and want to avoid losing not synced data, please [contact the support team](https://support.termius.com/hc/en-us/requests/new?ticket_form_id=900001336483).

#### Reinstall the app <a href="#h_01k43q23b98dmswmp9f0agfng4" id="h_01k43q23b98dmswmp9f0agfng4"></a>

* Remove the app from your device.
* In the App Store, sign in with the Apple ID used to purchase the subscription.
* Reinstall Termius. Once the Apple IDs match, you can restore the subscription.

{% hint style="warning" %}
If you are using Termius beta from **Testflight**, the re-installation step must be done. Subscription purchasing and restoration don't work with Testflight.&#x20;
{% endhint %}

### Restoring subscription <a href="#h_01k43nf1yd83n3cv6f84770ays" id="h_01k43nf1yd83n3cv6f84770ays"></a>

Once the app is installed with the same Apple ID used for the subscription purchase, restore the subscription.

* Open **Settings** in Termius.
* Make sure you are signed in to your Termius account.
* Go to **Account** and tap **Restore Subscription**. This fetches the subscription details again and tries to link them to your account.
* If restoration still does not work, please [contact the support team](https://support.termius.com/hc/en-us/requests/new?ticket_form_id=900001336483).

\ <br>


# I can't log in or synchronize data

If you cannot log in to Termius or synchronize your data, and you see a spinner or an error message, check the following:

1. Make sure your firewall allows incoming and outgoing traffic for these domains: **api.termius.com**, **grpc.termius.com**, **account.termius.com**, **termius.com**, and **termi.us**. Also make sure these domains are reachable from your network.
2. Check whether your network performs TLS interception. This can break the **WebSocket** connection. If needed, add an exception for Termius domains.
3. Make sure the connection to **grpc.termius.com** uses HTTP/2. Termius requires it to work correctly.

If the issue persists, please [submit a support request](https://support.termius.com/hc/en-us/requests/new).


# I can't enter some characters (pipe, backslash, etc.) in the terminal

If characters like `|` or `\` do not work in the terminal, the **Option** key is usually mapped as **Meta**. When this setting is enabled, some special characters may not be sent as expected.

Disable **Use Option as Meta key** for your platform:

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

1. Open **Termius** → **Settings**.
2. In the Terminal section, disable **Use Option as Meta key**.
   {% endtab %}

{% tab title="iOS/iPadOS" %}

1. Open the system **Settings**.
2. In the **Keyboard** section, turn off **Use Option as Meta key**.
   {% endtab %}
   {% endtabs %}

After you disable this setting, try entering the character again in the terminal.


# I can't connect to a local device on iOS or macOS

If you cannot connect to a host on your local network from iOS, iPadOS, or macOS, make sure Termius has the `Local Network` permission:

1. Open the system **Settings**.
2. Find **Termius** in the list of apps.
3. Make sure **Local Network** is enabled for Termius.

If this permission is disabled, Termius cannot connect to devices on your local network.

For more details about the `Local Network` permission, see [Apple's documentation](https://support.apple.com/en-us/HT211870).


# I get a 'host is unreachable' error on iOS

There are two possible workarounds for this issue.

{% stepper %}
{% step %}

#### Check if the Local Network permission is granted

Open the system **Settings**, find **Termius**, and make sure `Local Network` is enabled. For more details, see [I can't connect to a local device on iOS or macOS](/help-center/troubleshooting/i-cant-connect-to-a-local-device-on-ios-or-macos).

Try connecting again. If you still get the same error, continue to the next step.
{% endstep %}

{% step %}

#### Switch to the Experimental Connection Process

Open **Termius** → **Profile** → **Settings**. In the **Sessions** section, enable **Experimental Connection Process**.

This uses a different hostname resolution process, which may resolve the issue.
{% endstep %}
{% endstepper %}


# I can't find the local terminal option in the desktop app

If you installed Termius from the Mac App Store or via Snap, the app runs in a sandbox. Because of that restriction, it cannot access your local drive. As a result, the local terminal option is unavailable, and you also cannot browse your local system over SFTP.

To use these features, download Termius [from our website](https://termius.com/download) instead.

{% hint style="info" %}
**Quick tip:** The shortcut to open the local terminal is `Cmd+L` on macOS and `Ctrl+L` on Windows and Linux.
{% endhint %}


# Connection drops after a successful authentication

In some cases, the session may disconnect immediately after authentication or a few seconds later.

One possible cause is how the SSH server handles OS detection or shell history fetching for terminal autocomplete.

Some Termius features use SSH `exec` channels by running commands right after the connection is established. You can confirm this in the connection log by looking for the `⚙️ Executing command` entry near the end.

If that is the cause, disable the features that rely on SSH `exec` channels.

{% tabs %}
{% tab title="Desktop" %}
Open **Termius** → **Settings** → **Terminal** and disable:

* Autocomplete
* Import shell history
* Detect OS
  {% endtab %}

{% tab title="Mobile" %}
Open **Termius** → **Profile** → **Settings** and disable:

* Import command history
* Detect Host Operating System
  {% endtab %}
  {% endtabs %}


# Serial connections don't work on Microsoft Windows Store builds

In some cases, you may see a blank terminal screen when you try to open a serial connection in the Microsoft Windows Store version of Termius.

At the moment, there are two workarounds:

* Reinstall Termius from our website: [termius.com/download](https://termius.com/download)
* Install Termius Beta alongside the main app: [termius.com/beta-program](https://termius.com/beta-program)


# I'm unable to link my GitHub account

Students can use Termius for free through the [GitHub Student Developer Pack](https://termius.com/education).

### GitHub Student Developer Pack Activation

Termius uses GitHub’s verification system to grant student access. If you have been approved by GitHub but still cannot access your benefits, please keep the following in mind:

* **Status requirement:** GitHub uses two states for student accounts: **Approved** and **Activated**. Termius benefits apply only after your status changes to **Activated**.
* **Sync delay:** There may be a delay between systems. It can take up to a few days for GitHub to send the updated status to Termius.

#### Troubleshooting Steps

1. Sign in to your [GitHub Student Developer Pack](https://education.github.com/pack) dashboard and confirm that your status is **Activated**.
2. If your status changed recently, wait up to 72 hours before trying to link your account with Termius again.


# I can't connect to a host

This page covers common reasons host connections fail and the steps to troubleshoot them.

## Host is unreachable

### Double-check the IP address and port

Sometimes the issue is just a typo in the host address or a missing custom SSH port. Open the host details and make sure the address and port are correct.

### Check the Local Network permissions on iOS and macOS

If you cannot connect to a host on your local network from iOS, iPadOS, or macOS, make sure Termius has the `Local Network` permission:

1. Open the system **Settings**.
2. Find **Termius** in the list of apps.
3. Make sure **Local Network** is enabled for Termius.

If this permission is disabled, Termius cannot connect to devices on your local network.

For more details about the `Local Network` permission, see [Apple's documentation](https://support.apple.com/en-us/HT211870).

### Try switching to the Experimental Connection Process on iOS

If `Local Network` is already enabled and the issue persists:

1. Open **Termius** → **Profile** → **Settings**.
2. In the **Sessions** section, enable **Experimental Connection Process**.

This uses a different hostname resolution process, which may resolve the issue.

## Can't establish SSH connection

SSH connections can fail at several stages during the connection process.

### Issues with Key Exchange

In some cases, the connection drops right after the `Starting SSH session` step. In others, it gets a bit further but fails during key exchange and never reaches authentication.

**Why this might happen?**

Termius supports [post-quantum cryptography](/security/post-quantum-cryptography).

This increases the amount of data sent during the initial handshake. Depending on the network, it may slightly increase connection setup time.

{% hint style="warning" %}
On some older systems, the larger initial handshake can fail and cause a premature disconnection.
{% endhint %}

**How to fix it?**

Try disabling post-quantum key exchange during connection.

1. Open **Termius** → **Settings**.
2. In the **Terminal** section, disable **Post-Quantum Key Exchange**.

### Authentication by public key fails

If you are sure the correct key is configured, the public key is present in the server's `authorized_keys` file, and authentication still fails with `Private key is empty` or a similar error, check how the key is configured in Termius.

**Make sure you imported the key into Termius and linked it to the correct host** — [SSH with an SSH key](/organize-and-connect-to-hosts/connecting-to-a-server#ssh-with-an-ssh-key).

It is easy to assume you can enter a local file path to the private key, or leave the key unlinked and let the app try all available keys automatically. Termius does not work that way.

Termius provides a consistent experience across desktop and mobile, especially when sync is enabled. That requires connection data to be stored in your Termius vault. For public key authentication to work, the key must be imported into the app and linked with the corresponding hosts.

## Connection drops immediately after a successful authentication

In some cases, the session may disconnect immediately after authentication or a few seconds later.

One possible cause is how the SSH server handles how Termius performs the host's OS detection or shell history fetching for terminal autocomplete.

Some Termius features use SSH `exec` channels to run commands right after the connection is established. You can confirm this by looking for the `⚙️ Executing command` entry near the end of the connection log.&#x20;

It's a common problem when you use Termius to connect to routers and switches, affecting Cisco, Ruckus, SonicWall, and other devices.&#x20;

Not all devices support SSH exec channels. In other cases, the ssh server may be setup in a way allowing only one channel to be opened per session.&#x20;

If this issue looks similar to yours, disable the features that rely on SSH `exec` channels.

{% tabs %}
{% tab title="Desktop" %}
Open **Termius** → **Settings** → **Terminal** and disable:

* Autocomplete
* Import shell history
* Detect OS
  {% endtab %}

{% tab title="Mobile" %}
Open **Termius** → **Profile** → **Settings** and disable:

* Import command history
* Detect Host Operating System
  {% endtab %}
  {% endtabs %}

## Invalid user on Palo Alto Networks devices

There are cases when, after a successful authentication on Palo Alto devices, you immediately see an error in the terminal: `Invalid user. Please login using a valid account`.&#x20;

The reason you see it is similar to the one described above in [Connection drops after a successful authentication](/help-center/troubleshooting/connection-drops-after-a-successful-authentication), and the solution is the same: disable the features that rely on `exec` channels (Autocomplete, Import shell history, and Detect OS).&#x20;

## I can't connect using SFTP, but SSH connections work

{% hint style="info" %}
Sometimes **SFTP** is confused with **FTP** or **SCP**. They are different protocols, even if some apps present them in a similar way.
{% endhint %}

The main troubleshooting step is to make sure SFTP is enabled in the `sshd_config` file on your server.


