The EECS Remote Lab service allows you to connect to EECS lab workstations from within your web browser. It is clientless - no plugins or client software are required. It uses a product called Apache Guacamole.
Visit the EECS Remote Lab here: https://remotelab.eecs.yorku.ca
Login to the Remote Lab using your EECS credentials. If you are a student presently enrolled in an EECS course and do not have an EECS account, please create your account here: https://webapp.eecs.yorku.ca/activ8
If you enter an invalid password 5 times, your account will be banned from the system for half an hour. If you have forgotten your password, please use Activ8 to reset it.
Not all EECS users will have access to all labs in Remote Lab. Students will only have access to machines relevant to the courses for which they are enrolled.
Any problems or questions using the Remote Lab should be directed to the EECS Technical Support team - tech@eecs.yorku.ca. Please also check the FAQ.
The EECS Technical Support Team has tested Remote Lab on a wide variety of Desktops and Laptops running Windows, MacOS X, and Linux with the latest version of Mozilla Firefox web browser. While Remote Lab is likely to function perfectly fine with other operating systems, web browsers, and even mobile devices including phones and tablets, the tech team cannot provide support for those devices. Information in this documentation for mobile devices is there for informational purposes only.
Once you have successfully logged in to the Remote Lab, you will be taken to the home screen, where all available connections that you can access are listed. You will see thumbnails of any recently used or active connections. If you have access to a large number of connections and wish to quickly locate a specific connection, you can enter search terms within the “Filter” field to filter the list of connections by name.
Click on the “+” beside a connection group to see the list of machines available in that group. Click a machine, and it will open up that connection in the current web browser tab. You can open up multiple browser tabs with one connection in each. Note that you will only be permitted to open one connection from each connection group.
You can easily navigate back to the “Home” screen without disconnecting from your session by using your browsers back button or the “Home” button in the Guacamole Menu. Each connection you open will remain active until you logout, or have been idle for one hour. If you need to disconnect temporarily, or your computer crashes or there's a quick power failure, you will be able to log back in and reconnect to your session within five minutes. After that, your session will be terminated.
Once you login to Remote Lab, you will see the list of connection groups to which you've been granted access. Each connection group contains many workstations. Some of the connection groups you may see include:
Connection Group | O/S | Users Allowed per Workstation |
---|---|---|
Remote Desktop (EDU) (crimson) | Linux | 50 |
Remote Desktop (EDU) (ea) | Linux | 2 |
Remote Desktop (EDU) (red1) | Linux | 10 |
Remote Desktop (EDU) (rl) | Linux | 2 |
Remote Desktop (RES) (indigo1) | Linux | 10 |
SSH (EDU) (Command Line ONLY - No GUI] | Linux | n/a |
SSH (RES) (Command Line ONLY - No GUI] | Linux | n/a |
Click the “+” beside the connection group to open up a list of workstations in the group. Select a workstation to login. If available, try to select a workstation that is not in use. Workstations in use will show a message like “Currently in use by 1 user” in the workstation list. Some workstations support multiple simultaneous users, while most support only a few users at a time.
There are four different workstation types:
A few additional notes:
With the exception of the actual remote client screen, all Guacamole screens contain a menu in the upper-right corner called the “user menu”. This menu displays your username and contains several options which depend on your user's level of access:
Once you open a connection, you will see a real-time view of the remote display. You can interact with this display just as you would a normal desktop. Your mouse and keyboard will function as if they were connected directly to the remote machine.
The remote display will take up the entire browser window, with no buttons or menus to disturb the view. With the intent of providing a seamless experience, options specific to remote desktop are hidden within the Guacamole menu, which can be opened as needed.
The Guacamole menu is a sidebar which is hidden until explicitly shown. On a desktop or other device which has a hardware keyboard, you can show this menu by pressing Ctrl+Alt+Shift. If you are using a mobile or touchscreen device that lacks a keyboard, you can also show the menu by swiping right from the left edge of the screen. To hide the menu, you press Ctrl+Alt+Shift again or swipe left across the screen.
The Guacamole menu provides options for:
At the top of the Guacamole menu is a text area labeled “clipboard” along with some basic instructions:
The text area functions as an interface between the remote clipboard and the local clipboard. Text from the local clipboard can be pasted into the text area, causing that text to be sent to the clipboard of the remote desktop. Similarly, if you copy or cut text within the remote desktop, you will see that text within the text area, and can manually copy it into the local clipboard if desired.
You cannot copy and paste text between your system and the remote system or vice versa without using this functionality.
When you are done using the current connection, or you wish to navigate elsewhere temporarily, options to do so are within the user menu inside the Guacamole Menu.
The user menu within the Guacamole menu provides an additional “Disconnect” option that allows you to explicitly close the current connection only. Clicking “Logout” will also implicitly disconnect all active connections, including the current connection. This will log you out of Guacamole, but if you have not logged out of the remote sessions, you will remain logged in for 1 hour of idle time.
Navigating back to the home screen or to the settings screen will not disconnect you: your connection will continue running in the background while you change settings or initiate another connection, and you can resume any active connection by clicking on it within the home screen.
You can transfer files back and forth between your local computer and the remote desktop.
Files can be transferred from your local computer to the remote computer by dragging and dropping the files into your browser window, or through using the file browser located in the Guacamole Menu.
Files that you drag and drop from your local computer onto the web browser will be automatically saved at the top level of your home directory. Due to a bug in Guacamole, this is not presently configurable.
You cannot drag and drop files from the remote desktop to the local computer. You must use the file browser.
If file transfer is enabled on the connection, you will see one or more filesystem devices listed within the Guacamole menu. Clicking on one of the filesystems opens a file browser which lists the files and directories within that filesystem.
Double-clicking on any directory will change the current location of the file browser to that directory, updating the list of files shown as well as the “breadcrumbs” at the top of the file browser. Clicking on any of the directory names listed in the breadcrumbs will bring you back to that directory, and clicking on the drive icon on the far left will bring you all the way back to the root level.
Downloads are initiated by double-clicking on any file shown, while uploads are initiated by clicking the “Upload Files” button. Clicking “Upload Files” will open a file browsing dialog where you can choose one or more files from your local computer, ultimately uploading the selected files to the directory currently displayed within the file browser.
The state of all file uploads can be observed within the notification dialog that appears once an upload begins, and can be cleared once completed by clicking the “Clear” button. Downloads are tracked through your browser's own download notification system.
When you are done browsing the filesystem and transferring files, click “Back” to return to the Guacamole menu.
Certain key combinations are impossible to press within a web application like Guacamole because they are reserved by the operating system (Ctrl+Alt+Del or Alt+Tab, for example) or by the web browser. If you press one of these reserved combinations, the effect will be observed locally, not remotely, and the remote desktop will receive only some of the keys.
Guacamole provides its own, built-in on-screen keyboard which allows keys to be sent to the remote desktop without affecting the local system. If the device you're using does not have certain keys which the remote desktop depends on, such as the arrow keys or Ctrl, you can use the on-screen keyboard for this, too. You can show the on-screen keyboard by selecting the “On-screen keyboard” option from the menu.
Clicking (or tapping) the buttons of the on-screen keyboard has the same effect as pressing the same buttons on a real keyboard, except that the operating system and browser will not intercept these keypresses; they will only be sent to the remote desktop.
Guacamole will default to shrinking or expanding the remote display to fit the browser window exactly, but this is not necessarily ideal. If the remote display is much larger than your local display, the screen may be impossible to see or interact with. This is especially true for mobile phones, whose screens need to be small enough to fit in the average hand.
You can scale the display on touch devices by using the familiar pinch gesture. Place two fingers on the screen and bring them closer together to zoom out or further apart to zoom in.
If your device lacks a touch screen, you can also control the zoom level through the Guacamole menu. The controls for zooming in and out are located at the bottom of the menu. The current zoom level is displayed between two “-” and “+” buttons which control the zoom level in 10% increments.
Guacamole is designed to work equally well across all HTML5 browsers, including those of mobile devices. It will automatically handle input from a touch screen or a traditional mouse (or both, if you happen to have such a gifted computer), and provides alternative input methods for devices which lack a physical keyboard.
In the case that your device has a touchscreen and lacks a mouse, Guacamole will emulate a mouse for the sake of interacting with remote desktops that expect mouse input. By default, Guacamole uses “absolute” mouse emulation. This means that the mouse pointer is positioned at the location of each tap on the screen.
In both absolute and relative modes, you can click-and-drag by tapping the screen and then quickly placing your finger back down. This gesture only causes the mouse button to press down, but does not release it again until you lift your finger back up.
Absolute mouse emulation is the default as it tends to be what people expect when using a touch device to interact with applications designed for mouse input.
Each tap on the screen is translated into a left-click at that position. Right-clicking is accomplished through pressing and holding your finger on the screen. If parts of the remote display are off-screen, you can drag your finger around the screen to pan the off-screen parts back into view.
Although absolute mouse emulation works generally well, a finger makes for a very inaccurate pointing device. To address this, Guacamole also provides “relative” mouse emulation. Relative mouse emulation provides a way to deal with the need for accurate pointer control, when a true pointer device is not present.
Guacamole's relative mouse emulation behaves similarly to the touchpad present on most modern laptops. You drag your finger across the display to move the mouse pointer, and tap the display to left-click. The pointer moves relative to the motion of your finger. Right-clicking is accomplished with a two-finger tap, and middle-clicking with a three-finger tap. The mouse scroll wheel can be operated by dragging two fingers up or down.
Because the relative mouse emulation reserves so many gestures for the different mouse buttons and actions, common touch gestures like panning and pinch-to-zoom will not work while relative mouse emulation is enabled. Instead, the screen will automatically pan to keep the mouse pointer in view, and you can zoom through the buttons in the menu.
Many mobile devices lack a physical keyboard entirely, and instead provide their own on-screen keyboards. As these are not true keyboards per se and do not produce key presses, Guacamole's text input mode is required for typing on these platforms.
“Text input” allows input of keystrokes based on the input of text. Choosing “Text input” tells Guacamole to infer keystrokes by tracking text entered, rather than relying on actual key presses. Guacamole will instead determine the combination of keypresses necessary to produce the same pattern of input, including deletions.
If you wish to type via an IME (input method editor), such as those required for Chinese, Japanese, or Korean, text input mode is required for this as well. Such IMEs function through the explicit insertion of text and do not send traditional key presses. Using text input mode within Guacamole thus allows you to use a locally-installed IME, without requiring the IME to be installed on the remote desktop.
User preferences can be changed within the settings screen. These preferences are stored locally within the browser, so if you use multiple computers to access Guacamole, you can have different settings for each location. The settings screen allows users to change the language of the Guacamole interface, to change the default input method used by Guacamole connections, and to change the default mouse emulation mode for if a touch device is used. If you have sufficient permissions, you may also change your password, or administer the system.
The Guacamole interface is currently available in English, Dutch, French, German, Italian, and Russian. By default, Guacamole will attempt to determine the appropriate display language by checking the language preferences of the browser in use. If this fails, or the browser is using a language not yet available within Guacamole, English will be used as a fallback.
If you wish to override the current display language, you can do so by selecting a different language within the “Display language” field. The change will take effect immediately. Changing your password
System administrators can restrict the ability of individual users to change their own passwords, so this section may not always be available. If your account does have permission, the preferences screen will contain a “Change Password” section.
To change your password, you must provide your current password, enter the desired new password, and click “Update Password”. You will remain logged in, and the change will affect any future login attempt.
Guacamole provides multiple keyboard input methods and multiple mouse emulation modes. Many of these settings are specifically useful for touch devices, while others are aimed mainly at traditional desktop use. By default, Guacamole will use the keyboard and mouse modes most commonly preferred by users, but you can change these defaults if they do not fit your tastes or your current device.
The choices available mirror those within the Guacamole menu discussed earlier in this chapter, and changing these settings will affect the default values selected within the Guacamole menu of future connections.
Most of the text above comes directly from the Guacamole User Manual. It has been copied here for your convenience. Functionality that is not applicable to our installation has been removed.