SPO600 Servers
In SPO600, remote access to servers is provided for learning and project work. It is recommended that you also set up a personal Linux system.
Preparatory Steps
In order to gain access to these computers, you must send an SSH key to your professor. Please follow these instructions exactly:
- Follow the steps outlined under Using Public Keys with SSH to create your key.
- Copy the public key (
id_rsa.pub
orid_dsa.pub
) to a file namedyourUserId.pub
-- for example, if your chosen user ID is "jldoe", save the key in the filejdoe.pub
using a command such as:cp ~/.ssh/id_rsa.pub jdoe.pub
- Attach that file to an e-mail message and send it to chris.tyler@senecacollege.ca with the subject line "SPO600 Key".
An account will be created within a few work days of sending the key.
Available Servers
AArch64: aarchie, bbetty, ccharlie, ddouglas
The current, main ARMv8 AArch64 system known as aarchie or archie. This is a system that is currently located inside the EHL. To connect to this system, you have to go through the EHL gateway on port 2200.
If you're using a command-line ssh system, you can issue a command such as this:
ssh -p 2200 username@ehl.cdot.systems
Two secondary AArch64 systems have been added, known as bbetty (or betty) and ccharlie (or charlie). These systems are also located inside the EHL. Bbetty has 16GB of RAM and 200GB of space in /home
, while ccharlie has 8GB of RAM and 40GB of space in /home
.
Bbetty is accessed on port 2202:
ssh -p 2202 username@ehl.cdot.systems
And ccharlie is accessed on port 2205:
ssh -p 2205 username@ehl.cdot.systems
An additional AArch64 system is also available, known as ddouglas. This system is a Synquacer Edge with 24 Cortex-A53 codes and is directly accessible:
ssh username@ddouglas.cdot.systems
x86_64: xerxes
The first x86_64 server is known as xerxes.
If you're using a command-line ssh system, you can access xerxes with a command such as this:
ssh username@xerxes.cdot.systems
The second x86_64 server is known as yaggi and can be accessed with:
ssh username@yaggi.cdot.systems
Simplified SSH Access
If you're using OpenSSH (the ssh client used on most Linux systems and other platforms), you can simplify complex ssh command lines by placing host connection details in the file ~/.ssh/config
:
Host "aarchie" hostname "ehl.cdot.systems" user "YourUserID" port 2200 Host "bbetty" hostname "ehl.cdot.systems" user "YourUserID" port 2202 Host "ccharlie" hostname "ehl.cdot.systems" user "YourUserID" port 2205 Host "xerxes" hostname "xerxes.cdot.systems" user "YourUserId"
Once you have added these lines (inserting your user ID where appropriate) and set the permission on that file (chmod 0600 ~/.ssh/config
) you can use these commands to access the servers:
ssh aarchie ssh bbetty ssh ccharlie ssh xerxes
You can similarly configure simplified access in most other SSH client programs.
SSH Access from Other Client Systems
If you wish to access the servers from additional computers, you can append the SSH public keys from those computers to the ~/.ssh/authorized_keys
file.
Sudo Access
To perform operations which require privilege, such as installing software, use the sudo
command to execute the desired instruction as the root
user.
For example, to install the software packaged ncurses-devel
, execute: sudo dnf install ncurses-devel
on xerxes or sudo yum install ncurses-devel
on betty. The commands are different because Xerxes is running Fedora, which has transitioned from the older yum system to dnf, while Betty is running LEAP (based on CentOS), which still uses the older system.
In order to use sudo
, you will need to know your password. An initial random password is provided in the file ~/password.txt
(note that your password will be different on each server). Feel free to change this with the passwd
command -- not by editing the file, which is provided only for your information!
Multiuser Access
Remember that these machines are multi-user systems. Use the w
or who
commands to see who else is using them; you can also try using the write
command to communicate with another user if required.
Backup Your Accounts
These accounts are never backed up, and the machines may fail, lose data, or be reinstalled without warning at any time. Please back up your work frequently by copying it to another system or storage device.
Common SSH Problems
With the OpenSSH client:
- Your ssh private key must be in your
~/.ssh
directory (which must have 0700 permission) and the private key file must have 0600 permissions -- no more and no less. - If your SSH public key is not named
~/.ssh/id_rsa
, your SSH client may not automatically find it. You can specify the identity (private key) file using the-i
argument to the SSH command.}}
With other SSH clients:
- Your key must be in OpenSSH format when you send it to your professor; this format is used by the default SSH client on Mac OS/X and Linux as well as PuTTY. If it is in SSH2 format, used by some other client programs, you can convert it with this command on a Linux system with OpenSSH (such as Matrix):
ssh-keygen -i -f ~/.ssh/SSH2_PUBLIC_KEY_FILE.pub > ~/.ssh/OPENSSH_PUBLIC_KEY_FILE.pub
Disconnect/Reconnect Ability
The screen utility provides disconnect/reconnect capability, which is very useful for unstable network connections, long interactive operations, and changing your work location.