Table of Contents
Getting Started
Get up and running with NetShell in minutes. Download from the App Store, launch the app, and create your first SSH connection.
Download & Install
Open the App Store on your iPhone or iPad (requires iOS 17+).
Search for "NetShell" or use the direct App Store link from our homepage.
Tap Get to download. NetShell is 100% free with all features unlocked.
Launch the app and complete the brief onboarding walkthrough.
Creating Your First Connection
Tap the + button on the home screen to add a new connection.
Enter a name for the connection (e.g., "Production Server" or "Raspberry Pi").
Enter the hostname or IP address (e.g., 192.168.1.100 or myserver.example.com).
Set the port (default is 22 for SSH).
Enter your username and choose an authentication method: Password or SSH Key.
Tap Save, then tap the connection to open a terminal session.
Your password is stored securely in the iOS Keychain, never in plain text. NetShell supports any standard SSH server: Linux, macOS, BSD, cloud VMs (AWS, GCP, Azure, DigitalOcean), Raspberry Pi, and network equipment.
Getting Started
Get up and running with NetShell in minutes. Download from the App Store, launch the app, and create your first SSH connection.
Download & Install
Open the App Store on your iPhone or iPad (requires iOS 17+).
Search for "NetShell" or use the direct App Store link from our homepage.
Tap Get to download. NetShell is 100% free with all features unlocked.
Launch the app and complete the brief onboarding walkthrough.
Creating Your First Connection
Tap the + button on the home screen to add a new connection.
Enter a name for the connection (e.g., "Production Server" or "Raspberry Pi").
Enter the hostname or IP address (e.g., 192.168.1.100 or myserver.example.com).
Set the port (default is 22 for SSH).
Enter your username and choose an authentication method: Password or SSH Key.
Tap Save, then tap the connection to open a terminal session.
Your password is stored securely in the iOS Keychain, never in plain text. NetShell supports any standard SSH server: Linux, macOS, BSD, cloud VMs (AWS, GCP, Azure, DigitalOcean), Raspberry Pi, and network equipment.
SSH Terminal
NetShell provides a full-featured SSH terminal with 256-color support, optimized for both portrait and landscape on iPhone and iPad.
Connecting to a Server
Tap a saved connection on the home screen, or tap + to create a new one.
On first connect, you will be asked to verify the server's host key (Trust On First Use). Tap Accept if the fingerprint matches your server.
The terminal session opens with the server's MOTD (Message of the Day) and your shell prompt.
Terminal Features
- 256-color support — full ANSI color rendering for tools like htop, vim, and tmux
- Landscape mode — rotate your device for a wider terminal view with more columns
- Copy & paste — long-press to select text, use the iOS share sheet to copy
- Special keys toolbar — quick access to Ctrl, Tab, Escape, arrow keys, and other keys missing from the iOS keyboard
- Command snippets — save frequently used commands and insert them with one tap
Multiple Sessions
You can open multiple SSH sessions at the same time. Each session runs independently. Switch between sessions from the home screen session list or the tab bar within the terminal view.
SSH Terminal
NetShell provides a full-featured SSH terminal with 256-color support, optimized for both portrait and landscape on iPhone and iPad.
Connecting to a Server
Tap a saved connection on the home screen, or tap + to create a new one.
On first connect, you will be asked to verify the server's host key (Trust On First Use). Tap Accept if the fingerprint matches your server.
The terminal session opens with the server's MOTD (Message of the Day) and your shell prompt.
Terminal Features
- 256-color support — full ANSI color rendering for tools like htop, vim, and tmux
- Landscape mode — rotate your device for a wider terminal view with more columns
- Copy & paste — long-press to select text, use the iOS share sheet to copy
- Special keys toolbar — quick access to Ctrl, Tab, Escape, arrow keys, and other keys missing from the iOS keyboard
- Command snippets — save frequently used commands and insert them with one tap
Multiple Sessions
You can open multiple SSH sessions at the same time. Each session runs independently. Switch between sessions from the home screen session list or the tab bar within the terminal view.
SFTP File Transfer
Transfer files securely between your device and remote servers using the built-in SFTP client. Browse, download, upload, and manage files with a familiar file-browser interface.
Browsing Remote Files
Connect to a server, then tap the SFTP tab to open the file browser.
Navigate folders by tapping directory names. Use the path bar at the top to jump to any parent directory.
Tap a file to preview its contents (text files, images, and common formats are supported).
Download & Upload
- Download — long-press a file and select Download, or use the action menu. Files are saved to the iOS Files app.
- Upload — tap the upload button, pick a file from the iOS file picker, and choose the destination directory on the server.
- Multi-tab — open up to 8 SFTP sessions simultaneously across different servers or directories.
SFTP File Transfer
Transfer files securely between your device and remote servers using the built-in SFTP client. Browse, download, upload, and manage files with a familiar file-browser interface.
Browsing Remote Files
Connect to a server, then tap the SFTP tab to open the file browser.
Navigate folders by tapping directory names. Use the path bar at the top to jump to any parent directory.
Tap a file to preview its contents (text files, images, and common formats are supported).
Download & Upload
- Download — long-press a file and select Download, or use the action menu. Files are saved to the iOS Files app.
- Upload — tap the upload button, pick a file from the iOS file picker, and choose the destination directory on the server.
- Multi-tab — open up to 8 SFTP sessions simultaneously across different servers or directories.
SSH Keys
SSH keys provide a more secure and convenient alternative to password-based authentication. NetShell supports generating and importing Ed25519 keys.
Generating a New Key
Go to Settings → SSH Keys → Generate New Key.
NetShell generates an Ed25519 key pair (the most secure and modern key type).
The private key is stored securely in the iOS Keychain. The public key is displayed for you to copy.
Importing an Existing Key
Go to Settings → SSH Keys → Import Key.
Select the private key file from the Files app (supports Ed25519, RSA, and ECDSA formats).
The key is imported into the iOS Keychain. You can now assign it to any connection.
Adding Your Public Key to a Server
Copy your public key from NetShell (tap the copy icon next to the key).
Connect to the server using password authentication.
Run: mkdir -p ~/.ssh && chmod 700 ~/.ssh
Paste the public key: echo "YOUR_PUBLIC_KEY" >> ~/.ssh/authorized_keys
Set permissions: chmod 600 ~/.ssh/authorized_keys
Update the connection in NetShell to use key-based authentication. Future connections will use your key.
SSH Keys
SSH keys provide a more secure and convenient alternative to password-based authentication. NetShell supports generating and importing Ed25519 keys.
Generating a New Key
Go to Settings → SSH Keys → Generate New Key.
NetShell generates an Ed25519 key pair (the most secure and modern key type).
The private key is stored securely in the iOS Keychain. The public key is displayed for you to copy.
Importing an Existing Key
Go to Settings → SSH Keys → Import Key.
Select the private key file from the Files app (supports Ed25519, RSA, and ECDSA formats).
The key is imported into the iOS Keychain. You can now assign it to any connection.
Adding Your Public Key to a Server
Copy your public key from NetShell (tap the copy icon next to the key).
Connect to the server using password authentication.
Run: mkdir -p ~/.ssh && chmod 700 ~/.ssh
Paste the public key: echo "YOUR_PUBLIC_KEY" >> ~/.ssh/authorized_keys
Set permissions: chmod 600 ~/.ssh/authorized_keys
Update the connection in NetShell to use key-based authentication. Future connections will use your key.
Network Scanner
Discover devices on your local network, identify open ports, and detect services. Perfect for finding new servers, troubleshooting connectivity, and auditing your network.
Scanning Your Network
Navigate to the Network tab from the home screen.
Tap Scan to start. NetShell uses Bonjour discovery and port scanning to find devices.
Discovered devices are listed with their IP address, hostname, MAC address, and detected services.
Tap a device to view open ports and available services (SSH, HTTP, HTTPS, FTP, and 50+ common ports).
Permissions required: Network scanning requires Wi-Fi connectivity and the Local Network permission in iOS Settings. When prompted, tap Allow to enable device discovery on your network.
Network Scanner
Discover devices on your local network, identify open ports, and detect services. Perfect for finding new servers, troubleshooting connectivity, and auditing your network.
Scanning Your Network
Navigate to the Network tab from the home screen.
Tap Scan to start. NetShell uses Bonjour discovery and port scanning to find devices.
Discovered devices are listed with their IP address, hostname, MAC address, and detected services.
Tap a device to view open ports and available services (SSH, HTTP, HTTPS, FTP, and 50+ common ports).
Permissions required: Network scanning requires Wi-Fi connectivity and the Local Network permission in iOS Settings. When prompted, tap Allow to enable device discovery on your network.
Docker Management
Monitor and manage Docker containers on your remote servers directly from your iPhone. View status, start/stop containers, read logs, and track resource usage.
Container Overview
Connect to a server that has Docker installed.
Navigate to the Docker tab to see a list of all containers with their status (running, stopped, paused).
Tap a container to view detailed information: image, ports, volumes, environment variables, and uptime.
Managing Containers
- Start / Stop / Restart — use the action buttons on any container to control its lifecycle
- View logs — tap Logs on a container to see real-time output, useful for debugging
- Resource usage — monitor CPU and memory consumption per container
Prerequisite: Docker must be installed and running on the remote server. Your SSH user must have permission to access Docker (either root or a member of the docker group).
Docker Management
Monitor and manage Docker containers on your remote servers directly from your iPhone. View status, start/stop containers, read logs, and track resource usage.
Container Overview
Connect to a server that has Docker installed.
Navigate to the Docker tab to see a list of all containers with their status (running, stopped, paused).
Tap a container to view detailed information: image, ports, volumes, environment variables, and uptime.
Managing Containers
- Start / Stop / Restart — use the action buttons on any container to control its lifecycle
- View logs — tap Logs on a container to see real-time output, useful for debugging
- Resource usage — monitor CPU and memory consumption per container
Prerequisite: Docker must be installed and running on the remote server. Your SSH user must have permission to access Docker (either root or a member of the docker group).
AI Assistant
Get intelligent help with server administration, command generation, error diagnosis, and scripting. The AI assistant understands your server context and provides tailored suggestions.
Configuring Your AI Provider
Go to Settings → AI Assistant.
Choose a provider: Anthropic Claude, OpenAI, or Ollama (for local/self-hosted models).
Enter your API key (for Anthropic or OpenAI) or your Ollama server URL.
The AI assistant is now available from the AI tab on any active session.
What Context Is Shared
When you ask the AI for help, it receives context about your connected server: OS type, shell environment, recent terminal output, and the current working directory. Your passwords and private keys are never sent to the AI provider.
Example Use Cases
- Explain errors — paste an error message and get a plain-language explanation with fix suggestions
- Generate commands — describe what you want to do ("find all log files larger than 100MB") and get the exact command
- Diagnose issues — share system output and get help identifying the root cause
- Write scripts — ask for Bash scripts to automate repetitive tasks
AI Assistant
Get intelligent help with server administration, command generation, error diagnosis, and scripting. The AI assistant understands your server context and provides tailored suggestions.
Configuring Your AI Provider
Go to Settings → AI Assistant.
Choose a provider: Anthropic Claude, OpenAI, or Ollama (for local/self-hosted models).
Enter your API key (for Anthropic or OpenAI) or your Ollama server URL.
The AI assistant is now available from the AI tab on any active session.
What Context Is Shared
When you ask the AI for help, it receives context about your connected server: OS type, shell environment, recent terminal output, and the current working directory. Your passwords and private keys are never sent to the AI provider.
Example Use Cases
- Explain errors — paste an error message and get a plain-language explanation with fix suggestions
- Generate commands — describe what you want to do ("find all log files larger than 100MB") and get the exact command
- Diagnose issues — share system output and get help identifying the root cause
- Write scripts — ask for Bash scripts to automate repetitive tasks
Siri Shortcuts
Control NetShell with your voice or build automations using Siri Shortcuts. Five built-in intents let you connect to servers, scan networks, and check status hands-free.
Available Commands
- Quick Connect — connect to a saved server by name ("Hey Siri, connect to my production server with NetShell")
- Scan Network — start a network scan from Siri or the Shortcuts app
- Get Network Status — get a summary of your network: connected devices, active services
- Check Unknown Devices — see if any unfamiliar devices have appeared on your network
Setting Up in iOS Shortcuts
Open the Shortcuts app on your iPhone.
Tap + to create a new shortcut, then tap Add Action.
Search for "NetShell" to see all available actions.
Select an action, configure its parameters (e.g., choose which server for Quick Connect), and save.
You can now trigger the shortcut via Siri, the Shortcuts app, a home screen widget, or an automation trigger.
Siri Shortcuts
Control NetShell with your voice or build automations using Siri Shortcuts. Five built-in intents let you connect to servers, scan networks, and check status hands-free.
Available Commands
- Quick Connect — connect to a saved server by name ("Hey Siri, connect to my production server with NetShell")
- Scan Network — start a network scan from Siri or the Shortcuts app
- Get Network Status — get a summary of your network: connected devices, active services
- Check Unknown Devices — see if any unfamiliar devices have appeared on your network
Setting Up in iOS Shortcuts
Open the Shortcuts app on your iPhone.
Tap + to create a new shortcut, then tap Add Action.
Search for "NetShell" to see all available actions.
Select an action, configure its parameters (e.g., choose which server for Quick Connect), and save.
You can now trigger the shortcut via Siri, the Shortcuts app, a home screen widget, or an automation trigger.
Home Screen Widgets
Monitor your servers at a glance without opening the app. NetShell provides two widget types in three sizes each.
Server Status Widget
- Small — a single server gauge showing online/offline status and key metric
- Medium — metric bars displaying CPU, memory, and disk for one server
- Large — a 4-server grid with status indicators for monitoring multiple servers at once
Docker Status Widget
- Small — a ring chart showing running vs. stopped containers
- Medium — container counts with status breakdown
- Large — a scrollable container list with individual status
Adding Widgets
Long-press your iPhone home screen and tap the + button in the top-left corner.
Search for "NetShell" in the widget gallery.
Choose a widget type and size, then tap Add Widget.
Widgets refresh automatically every 15 minutes and update instantly when NetShell fetches new server data in the app.
Home Screen Widgets
Monitor your servers at a glance without opening the app. NetShell provides two widget types in three sizes each.
Server Status Widget
- Small — a single server gauge showing online/offline status and key metric
- Medium — metric bars displaying CPU, memory, and disk for one server
- Large — a 4-server grid with status indicators for monitoring multiple servers at once
Docker Status Widget
- Small — a ring chart showing running vs. stopped containers
- Medium — container counts with status breakdown
- Large — a scrollable container list with individual status
Adding Widgets
Long-press your iPhone home screen and tap the + button in the top-left corner.
Search for "NetShell" in the widget gallery.
Choose a widget type and size, then tap Add Widget.
Widgets refresh automatically every 15 minutes and update instantly when NetShell fetches new server data in the app.
iCloud Sync
Keep your connections and settings synchronized across all your Apple devices. iCloud Sync works automatically in the background.
What Syncs
- Connections — server name, hostname, port, username, and all connection settings
- Snippets — all saved command snippets and snippet folders
- Groups — connection groups and organizational tags
- Tags — custom labels applied to connections
What Does NOT Sync
- Passwords — stored locally in the iOS Keychain only, never sent to iCloud
- Private keys — stored locally in the iOS Keychain only
- Terminal session data — session output and history remain on-device
Enabling iCloud Sync
Sign into iCloud on your device via Settings → [Your Name] → iCloud.
Open NetShell. Sync activates automatically when iCloud is available.
Changes sync within seconds, with a 3-second debounce to batch rapid edits. Data is compressed with LZFSE for efficiency.
iCloud Sync
Keep your connections and settings synchronized across all your Apple devices. iCloud Sync works automatically in the background.
What Syncs
- Connections — server name, hostname, port, username, and all connection settings
- Snippets — all saved command snippets and snippet folders
- Groups — connection groups and organizational tags
- Tags — custom labels applied to connections
What Does NOT Sync
- Passwords — stored locally in the iOS Keychain only, never sent to iCloud
- Private keys — stored locally in the iOS Keychain only
- Terminal session data — session output and history remain on-device
Enabling iCloud Sync
Sign into iCloud on your device via Settings → [Your Name] → iCloud.
Open NetShell. Sync activates automatically when iCloud is available.
Changes sync within seconds, with a 3-second debounce to batch rapid edits. Data is compressed with LZFSE for efficiency.
Security
NetShell is built with security as a core principle. Your credentials and server data are protected with enterprise-grade measures at every layer.
Credential Storage
- iOS Keychain — all passwords and private keys are stored in the hardware-backed iOS Keychain, the most secure storage on the device
- Never in plain text — credentials are never stored in UserDefaults, files, or any readable format
- Never synced to iCloud — passwords and keys remain on-device, period
Biometric Authentication
Enable Face ID or Touch ID to protect the app. When enabled, NetShell requires biometric verification each time you open the app or return from the background.
Host Key Verification (TOFU)
On the first connection to any server, NetShell saves the server's host key fingerprint. On subsequent connections, it verifies the key matches. If the key changes unexpectedly, you are warned immediately, protecting against man-in-the-middle attacks.
Rate Limiting & Privacy
- Auth rate limiting — failed login attempts are throttled (5 attempts per 5 minutes) to prevent brute-force attacks
- No telemetry — NetShell collects no analytics, no usage data, and sends no information to our servers
- No tracking — no third-party SDKs, no ad networks, no data sharing
Security
NetShell is built with security as a core principle. Your credentials and server data are protected with enterprise-grade measures at every layer.
Credential Storage
- iOS Keychain — all passwords and private keys are stored in the hardware-backed iOS Keychain, the most secure storage on the device
- Never in plain text — credentials are never stored in UserDefaults, files, or any readable format
- Never synced to iCloud — passwords and keys remain on-device, period
Biometric Authentication
Enable Face ID or Touch ID to protect the app. When enabled, NetShell requires biometric verification each time you open the app or return from the background.
Host Key Verification (TOFU)
On the first connection to any server, NetShell saves the server's host key fingerprint. On subsequent connections, it verifies the key matches. If the key changes unexpectedly, you are warned immediately, protecting against man-in-the-middle attacks.
Rate Limiting & Privacy
- Auth rate limiting — failed login attempts are throttled (5 attempts per 5 minutes) to prevent brute-force attacks
- No telemetry — NetShell collects no analytics, no usage data, and sends no information to our servers
- No tracking — no third-party SDKs, no ad networks, no data sharing
Terminal Themes
Personalize your terminal with 16+ built-in themes. Each theme provides a carefully designed color palette for background, text, cursor, and ANSI colors.
Switching Themes
Go to Settings → Terminal → Theme.
Browse the theme gallery with live previews showing how your terminal will look.
Tap a theme to apply it. The change takes effect immediately on all sessions.
Available Themes
NetShell includes themes for every preference: dark themes like Dracula, One Dark, Nord, and Monokai; light themes for outdoor readability; and high-contrast themes for accessibility. Each theme is optimized for the full 256-color ANSI palette.
Themes affect only the terminal appearance. Your connection settings, behavior, and data remain unchanged when switching themes.
Terminal Themes
Personalize your terminal with 16+ built-in themes. Each theme provides a carefully designed color palette for background, text, cursor, and ANSI colors.
Switching Themes
Go to Settings → Terminal → Theme.
Browse the theme gallery with live previews showing how your terminal will look.
Tap a theme to apply it. The change takes effect immediately on all sessions.
Available Themes
NetShell includes themes for every preference: dark themes like Dracula, One Dark, Nord, and Monokai; light themes for outdoor readability; and high-contrast themes for accessibility. Each theme is optimized for the full 256-color ANSI palette.
Themes affect only the terminal appearance. Your connection settings, behavior, and data remain unchanged when switching themes.