Skip to content

ssh Troubleshooting Checklist

On this page, we'll address issues you might run into with logging into the SuperCloud systems.  

If you can't log into SuperCloud or you can't login without entering your username and/or password

In this section you'll find a series of questions and answers that will help you resolve some of the more common passwordless ssh login problems.

You should also take a look at the LLx Online Course "Practical HPC". This course includes videos that demonstrate how to create an ssh key, how to create an ssh config file, and troubleshooting ssh problems in the "Getting Started with SuperCloud" module, "Accessing SuperCloud" section.

Did you create ssh keys for your desktop system?

No:

Yes

  • Open the public ssh key file (the file that has a .pub extension) in an editor  

  • The public key begins with "ssh-rsa". It will look similar to this (there will be real data for all of the Xs):  

    ssh-rsa AAxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxx

    This is the key to add to the SSH Key Portal.

    Do not add a key that begins with "-----BEGIN OPENSSH PRIVATE KEY-----"

    After adding the key to the key portal, the entry will look like this (you may have more than 1 entry in the table):

    SSH Key Portal Entry

If your account is not a new SuperCloud account: Did you use the ssh key portal to add your new key?

No

Confirm that you need a config file (.ssh/config) on your desktop system

You might not need an ssh config file on your desktop system. Answer the next 4 questions to determine whether you'll need one.

1) Is your local username on your desktop system the same as your SuperCloud username?

See if your local username on your desktop system is the same as your SuperCloud username.

To find your local username on your desktop system:

  • Windows: open Settings > Accounts > Your Info
  • MacOS and Linux: open a terminal window and type: whoami  

No

  • Make sure you include your SuperCloud username when you ssh to the SuperCloud system:

ssh USERNAME@txe1-login.mit.edu  

2) Did you use WSL/Ubuntu shell on Windows to generate your ssh keys?

Yes

  • Your WSL/Ubuntu username may be different than your SuperCloud username. To find your WSL/Ubuntu username open a WSL/Ubuntu terminal window and type: whoami

    If your WSL/Ubuntu username is different than your SuperCloud username, you will need a config file and you must include the User directive in the config file and specify your SuperCloud username. See the Configuring different SSH keys per host page for instructions on creating the ssh config file on your local desktop system.  

3) Did you select a different (non-default) path and/or name for your ssh keys?

A default path and name for your ssh keys was offered to you when you ran ssh-keygen. The default name is id_rsa. The default path varies, depending on which OS is running on your desktop computer:

  • if you have a Linux desktop, the default location is:  /home/your-local-username/.ssh
  • if you have a MacOS desktop, the default location is:  /Users/your-local-username/.ssh
  • if you have a Windows desktop, the default location is:  C:\Users\your-local-username.ssh  However, if you are using WSL, then the default location is:  /home/your-local-username/.ssh

Yes

  • You will need a config file. You must include the IdentityFile directive in the config file and provide the path to and the name of your ssh key file.  
  • See the Configuring different SSH keys per host page for instructions on creating the ssh config file on your local desktop system.

4) Do you have ssh keys for multiple systems (e.g. GitHub)?

Yes

  • You will need a config file. You must include the IdentityFile directive in the config file and provide the path to and the name of your ssh key file.  
  • See the Configuring different SSH keys per host page for instructions on creating the ssh config file on your local desktop system.

So you need an ssh config file. Do you have the file .ssh/config on your desktop system?

Based on your desktop operating system, look in the associated .ssh directory to see if you have a file named config:

  • Windows:  C:\Users\your-local-username.ssh  However, if you are using WSL, then the default location is:  /home/your-local-username/.ssh
  • MacOS:  /Users/your-local-username/.ssh
  • Linux:  /home/your-local-username /.ssh  

No

Yes

  • Make sure the config file resides in the same directory as your ssh keys.  
  • Make sure the file name is config and not config.txt.

  • Make sure the config file is owned by you, not the administrator. On Windows systems, use this command to view the file owner: dir /Q

  • Make sure you have the statements you need in your ssh config file:

    • You must include the Host directive (line 1 in the example config file below) followed by txe1-login.mit.edu  
    • If your user name on your desktop system is different from your SuperCloud username, you will need to add the User directive (see line 2 below), replacing your-SuperCloud-username with your SuperCloud username
    • If you have multiple ssh keys for different systems, or you did not use the default path and/or name (id_rsa) for your ssh keys, then you will need to add the IdentityFile directive (line 3 below), replacing path-and-name-of-private-key with the location and name of your ssh private key file. E.g. C:\Users\your-local-username\.ssh\id_rsa. Be sure to use the ssh key file without the ".pub" extension

      Example ssh config file

       Host txe1-login.mit.edu
            User your-SuperCloud-username
            IdentityFile path-and-name-of-private-key
    

Do you have ssh keys for multiple systems?

Yes

  • Make sure the keys for the different systems have different filenames  
  • You'll need multiple entries in your ssh config file so that ssh knows which set of keys goes with which system.

    You'll need one entry, similar to the one for accessing SuperCloud shown above, for each set of ssh keys. Each entry should include these directives:

    • Host - the system address

    • IdentityFile - the full path and name of the private key file for the system specified in the Host directive

    • User - the username that you use to log into the system, if it's different from your local username on your desktop system

You tried everything here and you still can't connect?

If you've tried/confirmed all of the above items and still can't connect, type the following command, then copy, paste and send the text output of the command to supercloud@mit.edu. Please do not send a screenshot - there will be a lot of output and it will be difficult for us to read.

ssh -vvv USERNAME@txe1-login.mit.edu

References

Here is a list of webpages that were mentioned here, plus some others that might be helpful: