Skip to content
C.W.K.
Stream
Lesson 03 of 04 · published

Direct SSH Is the Product — Later

~12 min · m3, ssh, destination, tense

Level 0Spark
0 XP0/36 lessons0/12 achievements
0/100 XP to next level100 XP to go0% complete

The Mac's ssh Is Not the Phone's ssh

Today you can open an SSH session from the phone by asking the host Mac to run ssh with its own config and keys. The bytes arrive on Linux. The owner is still the Mac. The keys never left the Mac. The gateway is still in the path. That is continue-host-work, and it is honest. It is not direct iOS SSH. Counting it as the destination is the tense error this track exists to catch — a later session will otherwise tick the milestone because "we already SSH from the phone."

Direct iOS SSH is a phone-owned transport. Host profiles live on the glass. Host-key verification and changed-key refusal live on the glass. Password and keyboard-interactive authentication, when they exist, live on the glass. The office gateway is not required. A Linux server, a NAS, another Mac, any compatible SSH host. Session lifecycle and recovery have to be said out loud for that transport, because the daemon on the office Mac is no longer the owner of that particular fire.

Authorized, Not Invented

Dad authorized this direction. It is not a plugin wishlist. It is also not shipped. A quest that describes host-key dialogs in the present tense will fail a review that opens the iOS project and finds none. Write the destination as a destination. Keep today's ssh-through-the-Mac in the present, in a different paragraph, so they cannot be added together into a false complete.

Owner, keys, gateway: if any of those still belong to the Mac, it is not direct iOS SSH. Arrival of bytes on the far host is not the test. Ownership is.

Code

Two SSHs that must not share a name·text
PRESENT — SSH through the host
  phone  ->  gateway  ->  Mac daemon  ->  Mac's ssh  ->  far host
  keys:     Mac Keychain / ssh-agent
  owner:    Mac daemon's PTY
  gateway:  required

DESTINATION — direct iOS SSH
  phone  ->  far host
  keys:     phone (later milestone, Keychain-backed)
  owner:    phone-owned session (lifecycle named explicitly)
  gateway:  not required
  host keys: verified on the glass, changed-key refused

# Same far host. Different owner.
# A test that only pings the far host cannot tell them apart.
# The architecture can.

External links

Exercise

A review says "SSH from the phone works, mark direct SSH done" after a session that used the Mac's ssh. Write the three-part reply: owner, keys, gateway. Then write the one present-tense sentence that remains true ("the phone can ask the Mac to ssh") and the one future-tense sentence ("the phone will ssh itself").
Hint
If your reply only mentions that Linux answered, you used the wrong test. Linux answers both designs.

Progress

Progress is local-only — sign in to sync across devices.
Spotted a bug or have feedback on this page?Report an Issue

Comments 0

🔔 Reply notifications (sign in)
Sign inPlease sign in to comment.

No comments yet — be the first.