Importing from ~/.ssh/config Importing from ~/.ssh/config

Importing from ~/.ssh/config

Dmitry Machulo Dmitry Machulo

By importing sshconfig, you can instantly add a lot of hosts and related data.

Note: SSH config import is currently available in the desktop app only.

To import from ~/.ssh/config:

  1. On the Hosts screen, click Add > Import.
  2. Click SSH config file and select the config file.
  3. To select a group, where you want to place the data, click root group.
  4. Click Save and Done.ezgif-5-b3b1752008.gif

Notes

  • The ProxyCommand command will be ignored.
  • JumpHost will be converted to an item in a host chain.
  • IdentityFile will be ignored by the sandboxed Termius apps (Apple, Snap, Windows stores).

Current limitations

At the moment the SSH config import works well with around 500 hosts per file. If your SSH config is larger than that, you can split it into several files using the scripts provided below.

Before running one of the scripts provided below, replace ssh_config in the script you've chosen with the name of your config file.

awk '/^Host / { ++hosts; if (hosts % limit == 0) print "# import limit"} {print $0 }' \
hosts=0 limit=500 ssh_config \
| split -p '# import limit' - ssh_config-
$PSDefaultParameterValues['Out-File:Encoding'] = 'utf8'
$host_count=0; $filename=0;
Get-Content .\ssh_config | %{
if ($_ -match 'Host ') {[int]$host_count+=1};
if ($host_count % 500 -eq 0 -and $_ -match 'Host ') { [int]$filename+=1 };
echo $_ >> "ssh_config-$filename"
};

That script generates multiple files using the ssh_config-xx pattern. E.g. ssh_config_aa, ssh_config_ab.

If you're having difficulty importing data, please, contact us.

Add comment

Please sign in to leave a comment.