Hopefully if you're joining the infrastructure team you know how to ssh into a remote server already and you can skip this section entirely. If not, that's okay! When I started my first step in onboarding was googling "what does ssh mean." This page is intended to help those of you who lack an infrastructure background to speed up the onboarding process and begin interfacing with our servers in no time. 


So what does SSH mean?

SSH stands for secure shell and is a protocol by which remote network administrators can interact with the shell of a server remotely. Basically the SSH protocol allows you to interact with the command lines of our AWS / BioHPC Servers through the command line on your local machine. 


How to SSH into AWS?

To interface with our AWS servers, where our backends and dashboard frontends are running, you can start by heading to Cornell's AWS portal at https://signin.aws.cucloud.net/ and click on EC2 to see the dashboard for our AWS servers called EC2 instances. Next click instances to see our 5 servers, including 3 production servers and 2 test servers. Click on the instance ID of the server you wish to interface with, then click "Connect", and finally "SSH client."

Now for the next step you need to have the appropriate AWS key configured on hour local machine. There are two keys—one named "DIAPER-production-key.pem" for our production servers and the other named "DIAPER-test-key.pem" for our test servers, and you can download the keys from the "AWS EC2 key files" on the Diaper confidential box. If you don't yet have access to the Box account request access from Professor Johnson. After you have the correct key on your machine you have to run the following command once before SSHing into your server of choice:

sudo chmod 600 <PathToKey/KeyName.pem>

Next return to the aforementioned "SSH client" page for your server of choice, copy the "Example" ssh command provided, and replace the "DIAPER-production-key.pem" section of the command with the entire path to your key as follows: (the '#' represent the numbers of the specific id for your server already provided in the copied example command)

ssh -i <PathToKey/KeyName.pem> ec2-user@ec2-##-###-###-##.compute-1.amazonaws.com

You should now be connected to the AWS server instance and able to interact with the server through terminal commands!


How to SSH into BioHPC?

Start by creating a BioHPC account through the following link: https://biohpc.cornell.edu/NewUserRequest.aspx and then setting your password with the link sent to you by BioHPC.

Next if you are connecting to BioHPC off campus ensure you have the Cisco AnyConnect vpn application installed on your machine and the Cornell vpn configured. If not, follow the steps here: https://it.cornell.edu/cuvpn , type cuvpn.cuvpn.cornell.edu into the vpn selection window, select "Two-Step_Login" as the group when the login box pops up, enter your netID and Cornell SSO password into the Username and Password fields, and enter the passcode revealed from tapping "Show" in the DuoMobile app under Cornell University.

Once you are connected to Cornell's network, either by connecting through campus WiFi or connecting through VPN, open the command line and enter the following command:

ssh <yourNetID>@cbsujohnson.biohpc.cornell.edu

Next you will be prompted to enter the password you created when establishing your biohpc account. You should now be connected to the BioHPC server and able to interact with the server through terminal commands!

Connect to EC2 instance via 'EC2 Instance Connect'

 Steps:

  1. Login to aws portal using the link: https://signin.aws.cucloud.net/
  2. Search for EC2 in the search bar present on the top of the page
  3. Click on Instances(running)
  4. Select the instance you want to connect to and press the 'Connect' button
  5. Select the EC2 Instance Connect tab and press the connect button to directly connect to the EC2 instance


  • No labels