====== Remote Access ====== You can log into the Computer Science lab machines remotely, if you have ''ssh'' on your computer. [[http://en.wikipedia.org/wiki/Secure_Shell|SSH]] (**s**ecure **sh**ell) is a network protocol that allows you to remotely connect to other computers run your programs from there. If you want to run graphical applications on the Linux machines but interact with them on your computer (you probably do!), you'll need to run an X server and set up X forwarding. ===== From Off Campus ===== Follow the instructions in "Remote Access" in [[https://wlu.box.com/v/ComputerScienceLabs|The Computer Science Lab Documentation]] to connect to the lab machines from off campus. ===== From Mac ===== ==== Requirements ==== If you use Mac OS X, ''ssh'' is on your machine automatically because the operating system is Unix-based. However, you will need to install [[http://xquartz.macosforge.org/landing/|XQuartz]] so that you can run graphical applications on your personal machine. ==== Making a Connection ==== - Start XQuartz before making an SSH connection. Then, you can use X forwarding with ssh from the built-in Terminal application or from XQuartz's ''xterm'' application. - In a terminal (Terminal or xterm), type the command \\ ''ssh -XY yourusername@python.cs.wlu.edu'' * where ''yourusername'' is the username of your account. * The ''-XY'' will allow you to see a graphical program's windows on your local machine. Note that using a GUI application remotely can be slow. You definitely don't want to try to run an application like Eclipse remotely. * Answer "yes" to questions about trusting the machine and storing the key. * **Your password will not be displayed.** Keep typing! Hit enter. * It can take longer than you'd expect to get a prompt back, but hang in there. * You may get an error message about a .Xauthority file that you can safely ignore. - Try typing ''idle &'' and hitting enter to see if a Python IDE GUI pops up. Note that this can be slow depending on your network connection, especially the first time. If the IDE pops up, it worked! You can quit (close) the GUI (but not the terminal). - Now, [[#using_ssh_on_the_lab_machines|ssh to a lab machine (See: Using ssh on the Lab Machines)]], so that everyone isn't on the same machine. See [[#machine_names|Machine Names]] for more information about the available machines. If you have trouble using X forwarding, you may need to edit your ssh_config file (typically found at ''/etc/ssh/ssh_config'' or ''~/.ssh/config'') . If ssh_config includes ''#X11Forwarding no'' (or just ''X11Forwarding no''), uncomment the line by removing the leading ''#'' and change it to ''X11Forwarding yes''. ===== From Windows ===== ==== Requirements ==== Install [[http://www.chiark.greenend.org.uk/~sgtatham/putty/|PuTTY]], an old school, free ssh client. Download and install [[https://sourceforge.net/projects/xming/|Xming]]. [[http://www.straightrunning.com/XmingNotes/|Xming]] is a free X window server for Microsoft Windows. Start Xming before connecting to the remote system with your SSH client (for example, PuTTY). ==== Making a Connection ==== - Run your X server application (e.g., Xming). - When I ran Xming, it didn't seem like anything happened, but if you click "Show Hidden Icons", you should see the "X" for Xming - Run and configure PuTTY: - Enter ''python.cs.wlu.edu'' under 'Host Name' and under 'Saved Sessions'. - Enable X11: Click on the 'plus' of the Connection category (if it's not already expanded), then the plus of the SSH category, then select X11. Check 'Enable X11 forwarding'. - Select the 'Session' category, and click on 'Save'. - Click Open to connect to python.cs.wlu.edu - Agree to any questions about trusting the host and accepting the security key. - Enter your username and password for your W&L account. **Your password will not be displayed.** Keep typing! Hit enter. - Try typing in ''idle3 &'' and then enter to see if a Python GUI IDE pops up. Note that this can be slow depending on your network connection, especially the first time. If the IDE pops up, it worked! You can quit (close) the GUI (but not the ssh client, e.g., PuTTY). - Now, [[#using_ssh_on_the_lab_machines|ssh to a lab machine (See: Using ssh on the Lab Machines)]], so that not everyone is on the same machine. See [[#machine_names|Machine Names]] for more information about the available machines. ==== Alternatives ==== === Virtual Machines === One student suggests installing a version of Linux on your machine using [[https://www.virtualbox.org/|VirtualBox]]. Then, in the virtual machine, you can open terminals and ssh in as in [[#from_maclinux|From Mac/Linux]]. === Through myvi === **I don't think you can run GUIs from the CS machines this way. ** * Log into [[http://myvi.wlu.edu|My VI]] * You may need to install some software if you haven't used this platform before. * You may need to submit a help request to ITS to get access to PuTTY. * Click on "Apps" at the top * Search for "Putty-VI" * Enter a host name, such as ''boole.cs.wlu.edu'' or any of the other lab machines. None of the other fields need to be updated. Click "Open" * Click "yes" to say that you trust the remote host when that dialog box pops up. * Then, enter your username when the prompt says "login as" * Enter your CS department password when prompted * You are now on the Linux machine, and you can use it just like if you were on the machine in lab. ===== From Linux ===== You should have ssh and an X server already. You don't need to install anything. ===== Using ssh on the Lab Machines ===== From one lab machine, you can "hop" to one of the other lab machines, using [[http://cswiki.wlu.edu/dokuwiki/doku.php/labs/remote_login#ssh_from_lab_machines|ssh]]. See [[#machine_names|Machine Names]] for more information about the available machines. If you're already on a lab machine, you can ssh to another machine, by typing ssh -XY othermachinename The ''-XY'' allows your machine to display GUIs executing on another machine. If this is your first time logging in to a particular machine, you'll be prompted to confirm that you want to connect to the machine. Type "yes" and hit enter. Enter your password. For security reasons, you won't see any keystrokes being pressed. Just enter your password and hit enter. After you're on a machine in the lab, if you're doing something computationally intensive, you should check if someone else is on the machine using the command ''who''. If you see other people (besides you) using the machine, exit out of this machine and ssh to another machine instead. ===== Machine Names ===== The machines in P405 have programming language names and the machines in P413 (advanced lab) are named after influential computer scientists. Next time you're in one of the labs, note some of the machine names. A list of the machine names is in this [[https://wlu.box.com/v/CSCILabMachines|WLU-authorization-required document]].