Repository navigation
OwnTransit 1.0.2
OwnTransit 1.0.2
Your SSH. Your keys. Untrusted transit.
This patch shortens setup when the Relay is already running. Create a tunnel on the Target, keep its screen and private code available, then choose New tunnel on the Relay and enter the Target's public Target ID. The Relay creates and approves that tunnel in the same visit. Continue directly to the Client and paste the private otpair2. code into its hidden prompt. The Relay never issues or needs that private code.
If the Target does not yet exist, pressing Enter at the Relay's new public-ID prompt saves a draft. Create the Target, then choose Continue a tunnel on the Relay to approve the saved draft. Returning to the Target to retrieve its unused private code is only a recovery step if the original code was lost. A bound Relay entry cannot be silently rebound to another Target.
What changed
- New Relay tunnels can approve an already-created public Target ID without a second Relay menu visit. The Target, Relay and Client handoffs now explain the direct path and the lost-code recovery path.
- The public-ID prompt rejects malformed IDs and private-code input without approving or reflecting the input. Relay approval remains UNDER CONSTRUCTION until the Client completes its live authenticated carrier check; it is not an SSH login or a readiness claim.
- Linux and macOS installers and release capsules identify 1.0.2. Upgrades from the recognized 1.0.1 installation retain pairing identities, pending codes and operator-owned SSH settings. The existing signer, signature namespace, fixed Target SSH destination and authenticated wire profiles remain in use.
Install or upgrade
Supported platforms are Linux amd64/arm64 and the Apple-silicon macOS Client. Canonical 0.7, 0.8, 1.0.0 and 1.0.1 installations are recognized upgrade predecessors.
Run only the command for the machine's role. Existing users should choose Start or update this relay on the Relay and Continue tunnel on each Target and Client. Do not choose New or replace identities just to update software. Restarting a Target can interrupt existing SSH sessions; keep an independent maintenance path available.
Public Linux VPS — Relay:
curl -fsSL https://github.com/sentrybottale/OwnTransit/releases/download/v1.0.2/install-linux.sh | sudo sh -s -- relay
sudo owntransit-relay setupPrivate Linux SSH machine — Target:
curl -fsSL https://github.com/sentrybottale/OwnTransit/releases/download/v1.0.2/install-linux.sh | sudo sh -s -- target
sudo owntransit-target setupLinux Client:
curl -fsSL https://github.com/sentrybottale/OwnTransit/releases/download/v1.0.2/install-linux.sh | sudo sh -s -- client
owntransit-client setupApple-silicon Mac Client, without sudo:
curl -fsSL https://github.com/sentrybottale/OwnTransit/releases/download/v1.0.2/install-macos.sh | sh -s -- client
"$HOME/.local/bin/owntransit-client" setupThe download step initially trusts GitHub HTTPS. The installers then check the pinned distribution public key, detached inventory signature and selected archive digest before extraction or execution. The nine assets are the two installers; Linux amd64, Linux arm64 and macOS arm64 capsules; DEVELOPMENT.txt; DEVELOPMENT-SHA256SUMS; its .sig; and distribution-public.key.
Verification and scope
The source passed both Go race and vet profiles, security and complete-history publication checks, native platform CI, isolated macOS installer and Linux container installer/service fixtures, and release/signature helper checks. CI fixture timing was corrected for race-instrumented hosts without changing production behavior. The release assets were built twice with pinned Go 1.26.7 and compared byte for byte. The signed published inventory is the authority for the exact nine assets.
This release changes setup handoffs, not SSH ownership or the inner authentication boundary. It does not claim an independent security assessment, pristine-host qualification, extended soak or a live upgrade of any particular installation. A broken SSH stream still needs a new SSH command after connectivity returns, and a malicious or unavailable Relay can deny service.
Quickstart · SSH/SCP and recovery guide
Changes: setup handoffs (#35) · qualification fixtures (#36) · full comparison