Logging On

This page provides a quick step by step walkthrough of getting logged into your CSX account for the first time. Following through with your own information is highly recommended. At the end of the session, you should be able to log into your account from both on and off campus, as well as transfer files and use the handin program. Suggestions for further elements are always welcome.

If you haven't already activated your O-Key account, you will need to do that before proceeding any further. O-Key is the central authentication service operated by OSU's IT department and in this session will be used to identify yourself to the CS password reset application.

On the CSX and related systems we use the same short usernames as O-Key provides, so you won't need to remember a separate account name. However, it's important to know the difference between the long and short account names! Log into your O-Key account and look over your Personal Profile that appears. Right under your name is an entry called O-Key Account Username which is a short series of characters you'll use to log in. Typically it's formed from parts of your name which will hopefully help you remember it. This is not the same as the O-Key Login Address further down the page which is basically an email address with your full name! The short username shouldn't be any longer than 8 characters and doesn't include @okstate.edu or anything like that.

☐ Found and wrote down my username

When your CSX account was created, the password was initially set to something long, random, and unknown to anyone. This keeps unused accounts from being a security liability, but of course isn't useful for actually using the account. So you'll need to reset your password before using your account. This same procedure can be used any time, for example if you forget your password.

What you will need:

  • Your short username from the previous step
  • Your O-Key password

In whatever web browser you like (please, no really old versions of Internet Explorer, though!), open the Password Reset page. You should see something that looks like this:

Password Reset page screenshot

Type the username from the previous step into the input blank and click the Check UID button, which should expand the form to include a new blank and button.

What if my username isn't recognized? If you weren't enrolled in a Computer Science course until very recently, your account may not have been created yet. Try again tomorrow! If a few days passes and it still hasn't been created, contact the technical staff who will be happy to investigate -- use the technical request form for best results.

Next, you'll enter your O-Key password and click the Check Password button. You can actually hit the ENTER key instead of clicking these buttons if you like! Assuming your typed your password correctly, you should now see a grey box with a reminder of what's going to happen after you click the final button. Make sure and read this text, at least the first time you do this. At this point, the page should look similar to this:

Password Reset page screenshot

When you're ready, go ahead and click the big Reset My CSX Password button and you'll receive a long, but hopefully easy enough to manage for now, randomly set password. (For trivia buffs, it's a modification of an idea from an XKCD comic panel.) Don't worry, if you don't think you'll want to use it in the long term, you can change it once you've logged into a CSX server.

☐ Reset my CSX password and know the new one

If you're only going to access the servers from the Stillwater campus, you can probably ignore this step entirely. But if you're ever going to connect from somewhere else, you'll need to use the university's Virtual Private Network. A VPN effectively makes your device part of the campus network, and thus able to "see" campus systems and not be blocked by firewalls that otherwise prevent unwanted visitors.

OSU uses the Cisco AnyConnect VPN, and if you go to https://osuvpn.okstate.edu/ it will try to download the appropriate software for you after you log in using O-Key. For Windows and Mac devices, this should work, although you may have to use the Manual link it may provide. Other devices (e.g. mobile devices) should have Cisco AnyConnect in their appropriate app stores. There's even a Chrome version that Chromebooks can use! Linux users may wish to install openconnect as it has been proven to work with the campus VPN.

Once you have the software for your device installed, start it and you should get a login screen that asks for a hostname, a username and a password. (Specifics may vary from device type to device type, but these three things will always be what you need.) The hostname will always be osuvpn.okstate.edu regardless of what server or other system you wish to connect to. Think of osuvpn.okstate.edu as the entryway to the campus network -- you have to pass through it first to get to other systems. The username will be your O-Key username and likewise the password will be your O-Key password. Make sure you read this carefully -- your CSX password will not work here! Remember, you're still going through the entryway.

VPN screenshot

VPN screenshot

Connecting to the VPN from a Windows 10 machine


Once you've given it the right information, the prompt should go away quietly and you'll be connected to the VPN. You probably won't notice any difference, except that now you can get to campus systems as if you were connected directly to the campus network. As a useful side effect, your communication is also now encrypted, so connecting to the VPN has advantages while on a public network (e.g. coffee shop) even if you don't need to connect to anything on campus!

☐ Installed Cisco AnyConnect (if needed)
☐ Successfully connected to the campus VPN (if needed)

All shell logins (that is, logins where you can enter commands) to CSX must be done using the SSH protocol. At this point the walkthrough has to split into two branches: one for users of Windows, and one for basically everyone else. We'll start with everyone else -- for example users of Macs or Linux:

ssh for non-Windows machines

Most, if not all, non-Windows machines come with an SSH client for the command line, simply called ssh. (Strictly speaking, it's the OpenSSH client.) On a Mac, you will need to open Terminal.app to type commands; for other machines you'll need to find whatever is the appropriate application for a shell prompt. Once you're there, you'll type something like the following:

ssh myusername@csx8.cs.okstate.edu

You should use your own short username as discussed under password resets above, of course, and not literally myusername. Don't worry too much about the hostname -- you'll get more information below. Once you hit enter, you should get a password prompt. Use the CSX password you set above -- not your OKEY password! Unlike with your username, the system won't show you your password (or any other characters) as you type it for security reasons.

ssh for Windows machines

Unfortunately, Windows does not come with an SSH client. We recommend the third-party software PuTTY, but there are other options; just be aware that if you use something else that the screenshot below won't do you much good and we may not be able to help you with other software. Once you have PuTTY and run it, you'll see a configuration window that may look intimidating. Fear not, there's really only a small part that's important to you for now:

PuTTY screenshot

As you can see only the hostname is entered here. When you click the Open button (not shown), the server will prompt you for both username and password. As above, remember to use your CSX password, not your OKEY password, and that the system won't show anything when you type your password.

NOTE! The above isn't strictly true any more -- in the April 2018 update of Windows 10, a command-line SSH client was added. If you open a CMD or PowerShell window, you can use the instructions for non-Windows machines if you want.

CSX hostnames

CSX actually consists of 10 servers available for user login as of this writing, and they have numbered hostnames. There are no rules on which of these hosts you may use and you are welcome to change your mind each time or settle on a preference (bearing in mind that sometimes one might be down and you'll need to use another; this is rare but happens.) They are roughly identical so it should make no substantial difference. The hosts are named, as you may have now guessed:

☐ Installed PuTTY (if on Windows machine)
☐ Logged into CSX successfully

Just as SSH is required for logging into CSX machines, an SSH-based transfer protocol is required for uploading and downloading files. Generally there are two such protocols in use: SCP and SFTP. It really doesn't matter which you use, and there are many GUI clients for multiple platforms that support one or both. As before, Mac and Linux (and the Windows command line! see note above) have the command line tools scp and sftp, and so uploading files can be as simple as:

scp myfile.txt csx4.cs.okstate.edu:.

Of course, the filename and hostname are just examples. You could even use the -r option to recursively copy a directory; generally scp works much like the normal UNIX cp command.

Here is an example, however, of using the WinSCP application to upload files. WinSCP is, as is probably obvious, an application for Windows that can use the SCP protocol, amongst others, and is free. It also can import saved configurations from PuTTY, so they work fairly nicely together.


Creating a new site configuration. SFTP protocol has some advantages.


Once you're connected using WinSCP, it's just drag and drop to transfer files.

☐ Transferred files to CSX successfully

Some CS classes ask students to use handin, a venerable command line tool that the department has used for over 25 years. It may seem a little inobvious at first glance, but it's actually pretty straightforward from the student end. First, a few things you'll need to have before running handin:

  • The files you wish to hand in already uploaded to CSX
  • The name of the class account (for example, cs1113)
  • The name of the assignment directory (for example, pgm1)

Here are a few examples of running handin using the above example names:

Gives a very brief usage line
handin cs1113
Lists all of the available assignment directories for a class account
handin cs1113 pgm1
Lists all files you have already submitted in this directory
handin cs1113 pgm1 myfile.txt
Submits the file and emails you a confirmation

You can list multiple filenames when submitting, rather than have to run handin once for each file. As with many Linux commands, you can run man handin to see a description of the program.

What if I get an error? Check to make sure you've provided all the information correctly. If the problem persists and you're sure you've got your command line correct, notify your TA or professor that there's a problem.

☐ Learned how to use handin (if required)