Use SSH with Idealstack

One of the big benefits of the Idealstack hosting platform is that it gives all the benefits of a modern, clustered autoscaling AWS architecture, but still supports standard developer tools such as SSH and SFTP.  To use SSH and SFTP you will need to create an SSH key (or upload your existing one).

Setup an SSH Key Pair

All SSH Clients, such as openssh or putty, and all SFTP clients (eg winscp) support the use of SSH keys, which are much more secure than passwords for authenticating SSH connections.

SSH keys consist of two files, a public key and a private key.  You can upload the public key to servers or systems like Idealstack and this will let you connect with your private key.  No-one can reverse engineer your private key from the public key, so this can be done securely (even if bad actors do access the public key file, they can't then automatically get access to every other system where you used that key, in the same way that they can with your password).

It is very easy to setup an SSH key pair, here are some instructions for common SSH, SCP and SFTP clients:

Create a key in OpenSSH (Mac, Linux, BSD, Cygwin on Windows and many other platforms)


#Check if you already have an ssh key:
    cat ~/.ssh/

    #If not:

    #then provide us with the contents of ~/.ssh/
    cat ~/.ssh/

    #On windows (WSL or cygwin) you can do this to copy it to your clipboard
    cat ~/.ssh/ | clip

    # On macos do this
    cat ~/.ssh/ | pbcopy

    # On linux - install xclip so you can do this
    cat ~/.ssh/ | xclip


Prefer to use PuTTY or KiTTY on windows? Read how to create a key in PuTTY


What to do with it, once you've created your key

Your SSH key can now be used in multiple places:

  1. You can set organization-wide global keys, which will allow access to all your Idealstack sites. 

    1. Edit this under Organization in the left menu in idealstack
    2. In the SSH keys section, click Add
    3. Paste the key data
    4. Click off the key editor (or click add or the close button) and then save
  2. You can set an SSH key just for a particular site by editing that site, and pasting the key as above
  3. You can upload your keypair in AWS and then select that keypair when create or editing a stack - this will allow you to SSH to your instances (in addition to the individual sites running on them)