MSL Wiki
MSL on GitHub

Publishing and stopping

One command or one button, and the same to undo it.

Chapter 14 of 201 min read
On this page 5 sections

In the app#

Select the instance, and look for Reach this from anywhere under the SSH card. Press Publish…, confirm, and the address appears. Stop puts everything back.

From the command line#

CommandWhat it does
msl public expose <instance>Publishes it, and prints the address
msl public status <instance>Shows the current address
msl public revoke <instance>Stops publishing, and undoes the changes
msl public keys <instance>Lists the computers allowed in
msl public authorize <instance> <key.pub>Lets another computer in

msl public expose asks for confirmation first. Add --yes in a script.

It stays published#

Publishing survives restarts. If you shut the Mac down with an instance published, MSL starts that instance and publishes it again when it comes back — because a machine you are using as a server should come back as a server, without you being there.

With the free relay the address will be a different one, so check msl public status after a restart.

It repairs itself#

A free relay ends each session after about an hour. MSL notices and opens a new one, so the instance stays published — at a new address each time. The app shows Published, but not reachable this moment during the handover rather than showing you an address that no longer works.

Stopping#

msl public revoke closes the tunnel, deletes the drop-in MSL added to the SSH server, and removes the key MSL made for your Mac. Keys you authorized stay, because those are the list of people allowed into that instance, and losing them because a tunnel closed would be the wrong thing to do. Remove them with msl public deauthorize.