SSHDog SSH server for TrollStore on iOS 15
When you will jailbreak your device, all popular tools allow you to install OpenSSH server running in the background. Unfortunately, OpenSSH will not work on non-jailbroken devices, but there is an alternative fast SSH server released for TrollStore and iOS 15.
What is SSHDog?
SSHDog is a lightweight SSH server allowing you to run on non-jailbroken device compatible with TrollStore installed on A12+ iOS 15 devices. NyaMisty adapted a dropbear-like small SSH server to support posix_spawn replacement for fork() to make it run with TrollStore.
It aims to be a portable SSH server that you can drop on iOS and use for remote access without any additional configuration. SSHDog features configure port, host key, authorized keys, pubkey authentication (no passwords), port forwarding, and SCP support (but without SFTP).
SSHDog SSH server for TrollStore was forked from SSHDog created by David Tomaschik. You can use this server for tech support, backup SSHD, or authenticated remote bind shells. It offers only basic features, but someone may find it useful.
SSHDog SSH server was released as an open source project under Apache-2.0 license, with all files published through GitHub Repository. This small portable SSH server was written 100% in Go language. Feel free to fork the project and modify the code or participate in development.
How to run sshdog on iOS
SSHDog was released as an iOS executable that compiled by the developer. To run the SSHDog SSH server on your iPhone, it's required to use Filza File Manager's terminal with some additional commands. Once done, you will be able to connect to the device from your PC.
- Install Filza for TrollStore on iOS 15.
- Open Filza app from the Home Screen.
- Create an empty file by taping Edit → More → New file.
- Name the file terminal.sh.
- Download sshdog executable and save it on iCloud.
- Share the sshdog file with Filza and save it to Documents.
- Set the file permission to 0777 for both files (Info icon → Access permission → Owner).
- Open the terminal.sh file to access Filza fish shell.
Compatibility: iOS 15.0 – iOS 15.4.1, iOS 15.5 beta 1 – iOS 15.5 beta 4, iOS 15.6 beta 1 – 15.6 beta 5. No other firmware releases are or will be supported. No support for iOS 15.5 Final, no support for iOS 15.6 Final, and no support for iOS 16 and future releases.
Now you have access to the terminal app included with Filza File Manager on iOS. To run the terminal, simply open the termianl.sh file with Filza. Let's set a password and port configuration files for our server. You can also do it without command line with Filza GUI.
Step 1. Create a folder named config.
mkdir config
Step 2. Create a password file inside config with value alpine. This will be our password.
echo -n alpine > config/password
Step 3. Create a port file in config folder with value 22. This will be the required port to connect.
echo -n 22 > config/port
Step 4. Create authorized_keys file and set your SSH RSA key in the config folder.
echo -n "[your ssh-rsa key]" > config/authorized_keys
Example usage of ssh-keygen to generate an RSA key.
ssh-keygen -t rsa -b 2048 -N '' -f config/ssh_host_rsa_key
Step 5. Run the SSHDog SSH server on your iPhone by opening the app.
./sshdog
When the server will run correctly, it will set the authentication password, listen for connection on port 22, and display logs when a connection with your iPhone is established.
Example log:
[DEBUG] Adding hostkey file: ssh_host_rsa_key
[DEBUG] Adding authorized_keys.
[DEBUG] Setting auth password.
[DEBUG] Listening on :22
[DEBUG] Waiting for shutdown.
[DEBUG] select...
What's new
- Updated SSHDog to version 1.1.
- Better support for logging.
- Support password auth.
- Run in TrollStore on A12+ iOS 15.2+ devices.
- Added support for Filza's fish shell.
- Initial release.
Comments
Alireza 2 years ago
Hello, good time, I want to run sshdog on iphone x ~ ios 15.1 with troll, but I can't do step 4, it doesn't find SSH RSA to create, thank you for your help
qbap 2 years ago
You must generate a certificate:
ssh-keygen -t rsa -b 2048 -N '' -f config/ssh_host_rsa_key
and copy the key to on your iPhone:
cp ~/.ssh/id_rsa.pub config/authorized_keys
Tayjaun 1 year ago
Mine says “address already in use” any tips on why that might be? I do not recall using the :22: address line anywhere else.