This simple step-by-step guide will show new users how to securely
connect to their TomatoUSB router using SSH and encrypted private
key-files without having to type their password every time.
Unfortunately i am unable to post pictures/links in this forum,
a version with maybe more helpful pictures can be found over on Linksysinfo.
Note: This is not a replacement to have a secure password set on
your routers webinterface!
If you are using a Mac, scroll further down.
For Windows users
Download the Putty SSH client (ZIP version, not the Windows Installer).
Extract the zip-file wherever you want (Example: C:\Program Files\Putty).
Start Puttygen.exe and make sure it is set to SSH-2-RSA and 1024 bits.
Click on Generate. Move your mouse pointer around a bit as it says.
When it´s done, your public key will appear in the upper text field.
Starting with "ssh-rsa…" select all of it and copy it to your clipboard.
Leave Puttygen open for now!
In TomatoUSB webinterface go to Administration, Admin Access.
If you haven´t already, enable the SSH Daemon.
In the Authorized Keys field, paste your public key.
Back to Puttygen. Click Save private key.
It will ask if you are sure about saving it without a passphrase.
Select Yes, because that is the whole point of this all.
You can save this as "Tomato.ppk" file right in your Putty folder.
NOTE: Keep this private key secure! Do not give it to anyone!
While you are at it, also click "Save public key" and save it too.
You can close Puttygen now and start Putty.exe
In the first menu (should be Session), enter the IP address of your router
as the Host and the port number of the SSH server. (Default is 192.168.1.1 and 22)
In the lower left list, go to Connection/SSH/Auth.
Below Private key file for authentication select your private "Tomato.ppk" file.
Also in the Connection menu, go to the Data sub-menu.
Enter "root" as the Auto-login username.
Go back up to the Session menu.
Enter a name for this session, for example "TOMATO".
Click save. You should see the entry appear in the list below.
Now close Putty. Create a (desktop)-shortcut to Putty.exe.
Rightclick on the shortcut, select Properties.
In the Path field, append the following after Putty.exe
" -load TOMATO"
Make sure you have a space between .exe and -load.
If your Session name contains spaces, you need to use like "-load My Tomato".
Save the shortcut.
Now when you start the shortcut Putty will start and automatically
connect to the saved "TOMATO" session and use your private key
to authorize with the SSH Server running on your router.
Any feedback is greatly appreciated! Hope this can be useful to atleast someone.