Access to ulab.cs.umb.edu from elsewhere

 

We will be using ulab.cs.umb.edu, the microprocessor host machine, also known as blade57, for CS444.

 

Because of system security requirements, you can’t ssh directly to ulab.cs.umb.edu from off-site. Thus you need to ssh to linux1.cs.umb.edu (also named users.cs.umb.edu) and then rlogin or ssh to ulab.cs.umb.edu from there. For example:

1.      Use a SSH tool on your home machine (more information on this below) to login to linux1.cs.umb.edu with your password.

2.      Use the command “rlogin ulab” or “ssh ulab” to login to ulab.

To avoid the second password entry for ssh, you can follow the instructions below.

 

Note that you will see all the same files from your login on linux1 as you do once you have logged in on ulab, or any other host of our UNIX/Linux network. This is accomplished through a distributed filesystem (NFS, network file system). Thus to transfer files to ulab, just transfer them to linux1.cs.umb.edu.


Logging into cs.umb.edu hosts from other cs.umb.edu hosts with ssh, without needing to enter a password (Optional procedure)
1. Run "ssh-keygen" on, say, linux1.cs.umb.edu and answer its questions with carriage-returns.  This should create a well-protected .ssh directory in your login directory with files id_rsa and id_rsa.pub, holding the private and public keys, and file known_hosts.
2. "cd .ssh", then "cp id_rsa.pub authorized_keys2".  If you already have an authorized_keys2 file, use the command "cat id_rsa.pub >> authorized_keys2" instead, to append the new key.
3. Test your setup by trying "ssh linux1" from ulab. No password should be needed.
4. Once logged in on a Linux machine, ssh back to ulab.
5. scp will also work without passwords, but we don't need it between cs.umb.edu UNIX/Linux machines, because the filesystems are shared across the systems, allowing us to use the cp command.c

 

Access to cs.umb.edu hosts from offsite Linux systems: All Linux systems come with scp and ssh, available once you get a shell window working. You can just treat them the same way as linux1 in the above instructions.  For example, from your shell window on Linux:

ssh mycsusername@linux1.cs.umb.edu

rlogin ulab

 

for file transfer:

scp myfile mycsusername@linux1.cs.umb.edu:targetpath

 where targetpath is relative to your login directory at cs.umb

 

Access to cs.umb.edu hosts from offsite MacIntosh systems: All Mac systems come with scp and ssh, available once you use the Terminal application. You can just treat them the same way as linux1 in the above instructions.  For example, from your Terminal window:
ssh mycsusername@linux1.cs.umb.edu

rlogin ulab

 

for file transfer:

scp myfile mycsusername@linux1.cs.umb.edu:targetpath


Access to cs.umb.edu hosts from offsite Windows systems using the free Windows tools putty and pscp.

Of course this is not the only way to do file transfers. There are GUI clients that allow drag and drop file transfers after one overall login. See Bob Wilson's cs210 home page for an installer for such a GUI client for Windows.  You can set up an icon to start putty. Make sure that pscp.exe is on your path.  You can use the path command to see all the directories on your path. Put pscp.exe in one of these directories, or add its directory to your path by editing the PATH environment variable. Once this is set up, use a CMD window to do a file transfer as follows:

pscp myfile myusername@linux1.cs.umb.edu:targetpath


Using putty and pscp for access to cs.umb.edu systems from your Windows PC without entering passwords each time (Optional procedure)
These free and reliable tools work immediately on download, but expect you to enter a password for every use. With a little work, you can set up your environment to avoid the need to enter passwords so often. Unfortunately, the SSH tools on Windows and UNIX/Linux store the keys in slightly different file formats, so you need to fix up the putty key to use it on UNIX/Linux (or vice versa, of course.)  There is no problem in having multiple public keys in authorized_keys2, so we will simply add another key beyond the one set up above for no-password login to/from cs.umb.edu hosts.
1. Use puttygen on Windows to generate a pair of keys, public and private, and save them in a .PPK file.  You can just carriage-return when asked for a passphrase.
2. Run pageant, another program of the putty family, and see a little icon on your system tray.
3. Load the .PPK file into pageant by right-clicking it, etc.
4. Now the putty tools on your system have easy access to the needed keys.
5. But communication to our servers requires that they know the public key.  Copy the public key from the .PPK file (it starts with AAAA and goes on for four lines) to another file and remove the end-of-lines, resulting in one line of text starting with AAAA.  Add "ssh-rsa " to the beginning of the line, so the one line now looks like "ssh-rsa  AAAA..."  Transfer this file to say linux1.cs.umb.edu and append it to .ssh/authorized_keys2, (cat myfile >> authorized_keys2) which already exists if you have set up no-password ssh as detailed above.  If you skipped that setup, create the .ssh directory and put your file into it as authorized_keys2.
6. Now you should be able to login with ssh from your Windows PC without using a password. But if the format is a little wrong, you won't be able to log in at all.  So make sure you keep your older login alive when you try another test login with putty to see if your setup works.
7. Test pscp to see you can transfer files without a password entry.