Repository navigation
Releases: Vallic/MorphGate
Releases · Vallic/MorphGate
Release list
MorphGate Dev 0.2.1-63
Development build 0.2.1-63 from develop at e05f0aa.
- The first screen offers New vault, New account and Sign in. New account creates your vault and
your sync account in one go. - An invite to a team opened before you've set MorphGate up shows on its first screen, with your
address filled in, and once your account exists Teams opens with the invite. You can also paste
an invite there (Joining a team?). An invite opened while sync is off opens as soon as you turn
sync on: no need to open the link again. - A new vault no longer asks at once whether to turn on sync (the first screen offers New account
and Sign in). If sync is still off a week later, MorphGate asks once. - MorphGate can suggest a strong master password: five random words, wherever you set one.
- With saved hosts, MorphGate opens on your Hosts page, with Quick connect beside New host.
- Hosts, groups, keys, snippets, tunnels and VPNs are tables you can search and filter, each row's
actions shown as you point at it. Hosts show whether they're connected instead of a letter, each
group says what it gives its hosts (which sit indented under it), and the sidebar lists your
open sessions first. Keys, identities and host CAs are tabs of the Keys page. Session logs can
be searched and narrowed to a vault, group or host. - A team's page starts with what needs you (a member to confirm, a device to approve, a key to
rotate), then has tabs for its members, vaults, your SSH keys, settings and activity. New vault
and the plan sit beside Invite people, and you can invite several people at once. Teams says
per team what's waiting for you. - When a team requires two-step verification and your account doesn't have it, MorphGate says so
and takes you to turning it on, instead of the team's vaults silently not appearing. - Sync: every change now carries a version inside its signed envelope, and deletions are signed,
so a sync server can't give a device an older copy of an item than one it has seen. Older
versions of the app keep syncing alongside this one. - Install and restart waits for an update check that's still running, so it installs the update
that check found. - Feeds: hosts and snippets from an address your team publishes (Hosts → Add from… → Feed URL…),
read with a token. They stay in step with it on their own, every 15 minutes; your renames, keys,
tags and notes stay yours. A feed can list each server's host key, so new servers connect
without asking you to trust them, and a server with another key is refused. Its snippets are
read-only, and when the feed changes one, Run and Paste show you the new commands first. - Two devices refreshing the same cloud source at once no longer make duplicate hosts or
"(conflict)" copies. - About links to the documentation (morphgate.com/docs) and the source code on GitHub.
- A vault saved by a newer MorphGate (after going back to an older version) no longer stops the app
from opening: its window says to install the latest version, and the vault is left as it is. - Copy buttons (a public key, the recovery key, an invite code, host key details) fall back to
another way of copying when the system refuses the first, and say "Couldn't copy" instead of
doing nothing when neither works.
MorphGate 0.2.1
- The first screen offers New vault, New account and Sign in. New account creates your vault and
your sync account in one go. - An invite to a team opened before you've set MorphGate up shows on its first screen, with your
address filled in, and once your account exists Teams opens with the invite. You can also paste
an invite there (Joining a team?). An invite opened while sync is off opens as soon as you turn
sync on: no need to open the link again. - A new vault no longer asks at once whether to turn on sync (the first screen offers New account
and Sign in). If sync is still off a week later, MorphGate asks once. - MorphGate can suggest a strong master password: five random words, wherever you set one.
- With saved hosts, MorphGate opens on your Hosts page, with Quick connect beside New host.
- Hosts, groups, keys, snippets, tunnels and VPNs are tables you can search and filter, each row's
actions shown as you point at it. Hosts show whether they're connected instead of a letter, each
group says what it gives its hosts (which sit indented under it), and the sidebar lists your
open sessions first. Keys, identities and host CAs are tabs of the Keys page. Session logs can
be searched and narrowed to a vault, group or host. - A team's page starts with what needs you (a member to confirm, a device to approve, a key to
rotate), then has tabs for its members, vaults, your SSH keys, settings and activity. New vault
and the plan sit beside Invite people, and you can invite several people at once. Teams says
per team what's waiting for you. - When a team requires two-step verification and your account doesn't have it, MorphGate says so
and takes you to turning it on, instead of the team's vaults silently not appearing. - Sync: every change now carries a version inside its signed envelope, and deletions are signed,
so a sync server can't give a device an older copy of an item than one it has seen. Older
versions of the app keep syncing alongside this one. - Install and restart waits for an update check that's still running, so it installs the update
that check found. - Feeds: hosts and snippets from an address your team publishes (Hosts → Add from… → Feed URL…),
read with a token. They stay in step with it on their own, every 15 minutes; your renames, keys,
tags and notes stay yours. A feed can list each server's host key, so new servers connect
without asking you to trust them, and a server with another key is refused. Its snippets are
read-only, and when the feed changes one, Run and Paste show you the new commands first. - Two devices refreshing the same cloud source at once no longer make duplicate hosts or
"(conflict)" copies. - About links to the documentation (morphgate.com/docs) and the source code on GitHub.
- Copy buttons (a public key, the recovery key, an invite code, host key details) fall back to
another way of copying when the system refuses the first, and say "Couldn't copy" instead of
doing nothing when neither works.
MorphGate 0.2.0
First release.
- Signing a device out from another one (Sync → Devices → Sign out) now clears it: the next time
it connects, MorphGate removes its vaults, keys and settings there and goes back to its first
screen, saying why. Signing in again brings everything back from the account. Disconnecting a
device from itself asks whether to remove everything or keep a copy that no longer syncs. - About → Open-source licenses lists the components each build includes, with their license
texts. - When you're no longer in a team (you left on another device, an admin removed you, or it was
deleted), your devices say so once as its vaults leave them. Moving a host into a team's vault
says it is the team's from then on. - Deleting your sync account on one device (or the website) turns sync off on the others the next
time they connect: they keep your own vault, let go of team vaults, and say why. - If a team seat was what kept your own vault syncing and you leave the team (or it ends), your
vault keeps syncing for a grace period; Sync shows until when. A plan's grace period shows its
end date too. - SSH terminals with saved hosts, keys (generated or imported) and snippets; jump hosts; local,
remote and SOCKS port forwarding. - Import hosts from OpenSSH's configuration (Hosts → Import…): every
Hostin~/.ssh/config
(and the files it includes) becomes a host, with the private keys itsIdentityFiles name
copied into the vault (or the vault's copy reused) andProxyJumpas its jump hosts. A
preview shows what comes in, what the vault has already, and whatsshdoes that isn't
imported (ProxyCommand, forwards,Matchblocks). The file isn't changed.IdentityAgent
picks the host's agent, a public key asIdentityFilethe one agent key it offers, and
ForwardAgentturns on forwarding. - Import from other SSH clients too (Hosts → Import…): PuTTY's saved sessions (from the registry
on Windows,~/.putty/sessionselsewhere, or a.regfile exported from PuTTY), a CSV file
(Termius' import template, or another manager's export: columns are found by their headers)
and Royal TS documents (.rtsz,.rtsx). Groups, tags and notes come along; a PuTTY SSH proxy
or a Royal TS credential's user and key too. Royal TS keeps its passwords encrypted, so those
hosts ask for theirs. - Snippets from a CSV file (Snippets → Import…): a Name, a Command and Tags column, in any order;
a command of several lines stays one. "Download an example" saves one to start from. A snippet
the vault already has by that name starts unticked; ticked, the file's replaces it. - Importing a key or a certificate takes the file from a "Choose file…" dialog instead of a typed
path, so it works on phones too; so does a VPN's .conf or .ovpn (with the files it refers to,
chosen together with it). - Sync's device list shows each device as it is now: phones as Android or iOS with their model,
and the version each one runs, updated as it syncs rather than only when it signed in. - Android: the keyboard no longer covers the extra-key row and the bottom of the terminal (the
page ends where the keyboard begins), and the extra keys leave the keyboard as it is instead of
bringing it up. - A snippet sent right after the Esc key runs as written: the shell no longer takes its first
characters for the key Esc modifies ([200~df -h~). - Vallic Cloud (Hosts → Vallic Cloud…): sign in with your Vallic account (a code you approve in
the browser), and its environments become hosts, one per environment, machine and worker,
grouped by project, signing in the wayvallic sshdoes. A refresh keeps them in step: what
the platform decides follows it, your renames, keys, schemes, tags and notes stay, and a host
it no longer lists is marked in red, not deleted. Choose the key its hosts use and add it to
your Vallic account from the same page. Each device signs in itself; the hosts sync like any
other. A Vallic Cloud session is a shell in your app's container, not root on a machine, with
no SFTP or forwarding: these hosts offer no Files, tunnels or agent forwarding. Who gets in is
decided by Vallic accounts, so offboarding and key replacement leave these hosts to the Vallic
console and say so. - AWS, Google Cloud, Azure, Hetzner Cloud and DigitalOcean (Hosts → Clouds…): their virtual
machines as hosts, kept in step like Vallic Cloud's, listed with the provider's own CLI (aws,
gcloud,az,hcloud,doctl) as this
computer has it signed in: MorphGate keeps no cloud credentials. Choose the regions, projects
or subscriptions, public addresses or private ones through a jump host, who to log in as where a
machine doesn't say (Azure does; amorphgate:usertag ormorphgate-userlabel does too),
and a tag to group by. An EC2 key pair's name picks the vault's key of that name. A stopped
machine keeps its last address and says it's stopped. Desktop only: phones have no CLIs.
Machines without an address can be reached through AWS Session Manager, an EC2 Instance
Connect Endpoint or Google's IAP: the source's choice, and MorphGate runs the CLI for each
connection. The command is built on the device from the machine's ids (checked to be ids),
never taken from the vault. - Phones mark hosts they can't connect to as desktop only, and their sheet says why: ones that
connect through a command on the computer (a proxy command, or a cloud's CLI for Session
Manager, Instance Connect or IAP), or sign in with an SSH agent (phones have none). - Saving a VPN closes its editor, back to the list that shows it.
- Select several hosts, groups, keys and identities, snippets, tunnels or VPNs on their page
(Select) to delete them at once, put hosts in a group, or move them to another vault. A jump
host goes with the hosts behind it; anything something else still uses is kept, and said why. - A host can have a login command, run with a terminal instead of the login shell (as
ssh -t host <command>), and be reached through its jump host by a command the jump host runs
(nc %h %p, or a platform's own), for jump hosts that hand a connection on instead of
forwarding it. Where that command refuses, the error shows what it said. - A host can be reached by a command on this computer (Connect via → A command on this
computer), as ssh'sProxyCommand: AWS Session Manager, EC2 Instance Connect Endpoints,
Google's IAP tunnel,ncthrough a proxy.~/.ssh/configimports bringProxyCommandalong.
A vault syncs and is shared, so a command runs only on devices that allowed it: one typed or
imported on a device is allowed there; one that came with the vault waits for "Allow on this
device" in the host's editor, which shows it first. Host names and users given to a command
(%h,%r) must be plain words. - A key's certificate can renew itself (the key's page → Certificate → Renew with a command…):
a command run on this computer before connecting when the certificate is missing or runs out
within 5 minutes, and on "Renew now". It gets the public key (on its input, or as a file:%k)
and prints the certificate, or leaves it in a file:vault write -field=signed_key ssh/sign/<role> public_key=-,step ssh certificate --sign,ssh-keygen -s. Like a proxy
command, one that came with the vault runs only once this device allowed it. - Host CAs (Keys → New host CA): hosts whose keys a certificate authority signed are trusted
without the first-connect prompt, instead of each key being pinned: what step-ca, HashiCorp
Vault or Teleport issue, orssh-keygen -h -s. Paste the CA's key (or an@cert-authority
line) and the hosts it vouches for (*.example.com); in a team's vault it covers every member.
@cert-authoritylines in~/.ssh/known_hostsare trusted too. A certificate that doesn't
hold up (another CA, another host, expired) is refused; the route bar says which CA vouched. - OpenSSH certificates: a key can have a certificate from a certificate authority (step-ca,
HashiCorp Vault, Teleport, or your ownssh-keygen -s), added from its-cert.pubfile or
pasted. Signing in presents it, so servers that trust the CA take the key without it being in
authorized_keys. The key's page shows who it signs in as, the CA, and how long it's valid,
with a warning in its last day and once it has expired. Certificates an SSH agent holds are
presented too (step ssh login,tsh loginput one there), and imports bring a key's
certificate along (CertificateFile,<key>-cert.pub, PuTTY's and Royal TS's detached
certificate). - PuTTY keys (
.ppk, versions 2 and 3, encrypted or not) can be imported (Keys, and with PuTTY
sessions); the vault keeps them as OpenSSH keys. - Keys in an SSH agent, per host or identity: the system's, 1Password, Bitwarden, Secretive
(macOS), Pageant (Windows) or any socket or pipe. The editor shows which agents run here and
the keys they hold; pick one key so only that one is offered. The vault keeps the agent's name
and the key's fingerprint, never a path or a secret, so a team's identity can say "the deploy
key in 1Password". Security keys (FIDO2,sk-) held by an agent ask for a touch.
Windows signs in through OpenSSH's agent pipe (where 1Password and Bitwarden also listen). morphgate://links ("Open in MorphGate" on the website and in consoles) open an invite
ready to join, Sync, Teams or a team's page, or quick connect filled in. A link never joins or
connects by itself, and ignores passwords; links wait while the vault is locked. See
docs/features/deep-links.md.- Split panes: Split (above a session) opens this host again, or another, beside or below it in
the same tab; drag the borders to resize, close a pane from its header. Broadcast sends what
you type, and the snippets you run, to eve...