Skip to main content
Home
iOS 17+ · iPadOS 17+

A real SSH client for iPhone and iPad

xterm-256color terminal, Ed25519 keys with passphrase, Touch ID Keychain, broadcast, tunnels, the full SSH workflow, native on iOS and iPadOS.

Apple never shipped an SSH client. If the prod alert hits at 2am while you are nowhere near a laptop, the default iPhone gives you nothing, no `ssh user@host`, no terminal, no SFTP. SSHive fills that gap with a native iPhone and iPad app: a real xterm-256color terminal built on SwiftTerm, Ed25519 + ECDSA P-256 private-key auth with bcrypt-pbkdf passphrase encryption, jump-host support, broadcast across multiple sessions, and credentials stored in the iOS Keychain behind Face ID or Touch ID, all in a SwiftUI interface that adapts to iPhone TabView and iPad NavigationSplitView. The model is intentionally simple: no subscription, no data sent off your device, one-time Pro purchase, yours for life. The Free tier covers 2 concurrent sessions, 5 saved profiles, 1 local tunnel, 3 snippets and 10 MB-per-file SFTP. Pro is $9.99 one-time on the App Store (Universal Purchase: pay once, use on iPhone, iPad, and Mac). If something feels off or could be better, we are listening, write to us.

What works on iPhone and iPad

xterm-256color terminal

Powered by SwiftTerm, full xterm-256color emulation, 8 built-in themes (Tokyo Night, Dracula, Solarized Dark/Light, Monokai, Nord, Gruvbox, One Dark), pinch-to-zoom font sizing, configurable scrollback from 1,000 to 50,000 lines, and a special-keys bar (Esc, Tab, Ctrl, Alt, arrows, pipe, slash, tilde, dash, underscore).

Ed25519 + ECDSA private-key auth

Import your existing OpenSSH-format private keys (Ed25519 and ECDSA P-256). Passphrase-protected keys are decrypted on-device with bcrypt-pbkdf + AES-256-CTR. Two modes: "remember passphrase behind Face ID / Touch ID" or "ask every connection". Known-hosts (TOFU) verification with SHA-256 fingerprints catches MITM attempts.

Multiple concurrent sessions

Free covers 2 SSH sessions at once; Pro unlimited. Swipe between them on iPhone or split-view on iPad. Sessions survive backgrounding when iOS allows it; auto-reconnect kicks in on network changes, configurable keep-alive (5 to 120 s) keeps idle sessions alive.

Broadcast multi-session

Type once, run on N servers. Select multiple connected sessions and the keyboard input is mirrored to all of them, perfect for fleet updates (`apt update && apt upgrade -y` on 8 hosts at the same time) or quick health checks across a tier. Pro feature.

SSH tunnels (-L, -R, -D)

Local tunnels (-L) to reach a remote port through SSH, reverse tunnels (-R) to expose a local service, dynamic SOCKS5 (-D) for per-app proxying. Free includes 1 local tunnel; Pro unlimited including reverse and SOCKS5.

Jump Host / ProxyJump

Chain through a bastion in one click. Configure a jump host per profile, SSHive opens the bastion SSH session and tunnels the final connection through it transparently. Pro feature. Works the same way it does on macOS, with the same credential model.

Why use SSHive on iPhone instead of...

No subscription, no data sent

SSHive Pro is a single $9.99 one-time purchase, Universal across iPhone, iPad and Mac, with lifetime updates. The Free tier is usable without paying anything. Nothing about your sessions or credentials is sent off your device, there is no telemetry to collect and no cloud account to create.

Real SwiftUI iOS 17+ UI

Built natively in SwiftUI on iOS 17+: TabView on iPhone, NavigationSplitView on iPad, haptic feedback, dark/light/system mode, iPhone Pro Max landscape optimized, Magic Keyboard friendly on iPad. Not a web view, not a cross-platform wrapper.

Local-only credentials

Credentials live in the iOS Keychain with biometric `SecAccessControl` and the `kSecAttrAccessibleWhenUnlockedThisDeviceOnly` flag, no iCloud sync of secrets, no telemetry, no data collection. If your phone is wiped, the credentials are gone. If a cloud provider gets breached, your SSH keys are not in their database.

Universal Purchase with macOS

Buy Pro once on the App Store, use it on iPhone, iPad and Mac. The macOS version adds RDP/VNC convenience features, SSH tunnels UI, broadcast, an MCP server for Claude Code / Cursor / Claude Desktop, snippet library, and the Universal SSH config import from `~/.ssh/config`. The iOS app already ships RDP, VNC, VPN, tunnels, broadcast, network tools and snippets, MCP is the only macOS-exclusive feature.

How SSHive compares on iOS

Termius

Free tier + subscription

Cross-platform client with cloud sync between Mac, iOS, Windows and Linux. Strong polish and a generous free tier. Advanced features and team sync are part of the paid subscription, a good fit if you want everything in the cloud.

Detailed SSHive vs Termius comparison

Prompt 3 (Panic)

$24.99 one-time (iOS only)

A long-loved premium iOS SSH client by Panic, with a beautiful UI. SSH + SFTP only on iOS, no RDP, VNC or VPN. A great pick if you want the absolute best terminal experience and nothing else.

Blink Shell

Free / paid version on App Store

Power-user SSH/Mosh client with a Vim-style command palette. Open source. A great pick if you live in a keyboard-driven workflow and want maximum customization.

ServerCat

Free / Pro paid

A different angle: it watches servers via Netdata/Prometheus and adds SSH on top. Ideal if monitoring is your primary use case and remote shell is the bonus.

How SSH on iPhone actually works

SSHive on iOS is a real SwiftUI app, not a web view, not a cross-platform JavaScript wrapper. The terminal emulation comes from SwiftTerm, a mature open-source xterm-256color implementation in Swift, which handles VT100/xterm escape sequences, ANSI colors, alternate-screen buffers (for `less`, `vim`, `htop`), bracketed paste, and mouse reporting. The SSH transport runs on libssh2 with custom patches for jump-host chaining and known-hosts verification. Keys live in the iOS Keychain with `SecAccessControl` set to `BiometryCurrentSet`, meaning Face ID or Touch ID is required to read them, and they invalidate if you change your biometric enrollment. The encrypted SSH passphrase is wrapped with bcrypt-pbkdf (the OpenSSH-standard KDF) and decrypted on-device into a transient memory buffer that is zeroed after use. Nothing about your key material ever leaves the device, ever touches iCloud, ever hits a server we control. The network model handles iOS realities: background time limits, network changes between Wi-Fi and 5G, App Refresh restrictions. Sessions reconnect automatically when the network comes back, configurable SSH keep-alive (`ServerAliveInterval`) prevents idle disconnects, and the integrated NetworkExtension VPN can auto-connect before opening an SSH session for protected fleets. On iPad with a Magic Keyboard, the experience is close to a laptop, physical keyboard with Cmd, Ctrl, Esc working as expected, terminal panes resizable via the NavigationSplitView, and Stage Manager keeping SSHive alongside a browser or Notes. On iPhone, the on-screen modifier strip exposes the keys a touch screen normally cannot send (Esc, Tab, Ctrl, Alt, arrows, pipe, slash, tilde) so `Ctrl+C`, `Ctrl+R`, navigating `less`, scrolling logs all work without an external keyboard.

Frequently asked questions

Does SSHive on iOS support SSH keys with passphrase?+
Yes. Ed25519 and ECDSA P-256 private keys in OpenSSH format are supported, including passphrase-encrypted keys (bcrypt-pbkdf + AES-256-CTR). You choose between "remember passphrase behind Face ID / Touch ID" or "ask every connection" per key.
Can I use SSHive on iPhone without an iCloud account?+
Yes. SSHive does not sync anything to iCloud. All credentials live in the local iOS Keychain with `kSecAttrAccessibleWhenUnlockedThisDeviceOnly`. You can transfer profiles between iOS and macOS manually via the `.sshive` export/import (JSON), but nothing leaves your device automatically.
Does SSHive on iOS work with Tailscale or WireGuard?+
Yes. Tailscale and WireGuard run on iOS as system-level VPN providers via NetworkExtension; once a tunnel is active, SSHive sees the tailnet/WireGuard IPs transparently. SSHive also ships its own NetworkExtension VPN client for IKEv2, IPSec/Xauth and OpenVPN if you do not already have Tailscale or WireGuard.
What iPhones and iPads are supported?+
iOS 17.0 minimum. iPhone 15, 16, 17 (all Pro/Pro Max/Plus variants), iPhone SE 3. iPad Pro M1/M2/M4, iPad Air M1/M2/M3. arm64 / arm64e architectures.
Does the iPhone version include MCP?+
No, MCP (Model Context Protocol server for Claude Code, Cursor and Claude Desktop) is macOS-only because it needs an always-on local HTTP server that iOS background restrictions prevent. Everything else, SSH, SFTP, RDP, VNC, VPN, tunnels, broadcast, snippets, network tools, runs on iPhone and iPad.

Try SSHive Free for macOS

Get the all-in-one SSH, SFTP, RDP and VNC client for Mac. Free download, no signup required.

Download SSHive Free