[root@instance]# ls -laR_

drwxr-xr-x .
drwxr-xr-x ..
-rw-r--r-- about.txt
-rw-r--r-- contact.txt
-rw-r--r-- faq.txt
-rw-r--r-- privacy.txt
-rwxr-xr-x signup
drwxrwx--- tunnels
drwxrwxr-x links

./tunnels:
drwxr-x--- .
drwxr-xr-x ..
-rwxrwx--- create
-rwxrwx--- view

./links:
drwxr-xr-x .
drwxr-xr-x ..
-rw-r--r-- colaboratry
-rw-r--r-- kaggle

Frequently Asked Questions

Why are you offering this service?

To give back to the Open Source Community, which has given so much to us over the (many) years.

And to hopefully facilitiate education and training in the use of "cloud computing".

Can you hack me when I'm using this?

No.

All reverse tunnel connections come from a running Notebook instance into a "public-facing" SSH server. But the root password on said instance is set within the Notebook, and is not sent back to the server.

Thus, although there is a connection from the instance to this server, the access credentials of the instance are not known by us, and so we can't log in.

Can you "sniff" my traffic, and see what I'm doing?

Again, no.

Although you attach to a port on this server, the network traffic is in fact simply tunneled back to the instance. Thus, all communications between your workstation and the instance is encrypted end-to-end; all we would see (if we bothered to look) is an effectively random stream of noise.

I still don't trust you!

Rational paranoia is sound risk management.

You can, of course, review the code which is downloaded and run within each instance, to ensure we haven't hidden any "Trojans" anywhere.

Alternatively, if you have access to your own "public facing" server with an open SSH port, you can instead use our colab_reverse_ssh Notebook published on Github. Since this builds the OpenSSH server from source it takes longer to bootstrap. But, alternatively, you're in complete control.

Can I hack you?

"Anatomically impossible, Mr. Garibaldi. But you're welcome to try. Any time. Any where." - Bester; Babylon 5

Can I have multiple SSH sessions into an instance?

Sure. Run as many as you'd like.

It is very common to run more than one SSH session into a machine when doing software development and testing. One or more tailing logs, another editing a document, yet another running scripts and commands, etc.

Can I have multiple reverse tunnels out of different instances?

Each named tunnel can only be used by a single instance at a time. This is a function of how reverse tunnels work -- a static (and unsharable) port is needed.

Can I have multiple named tunnels?

Yes. Currently each account can have up to ten (10#) named tunnels, and thus up to ten instances could be accessed at a time.

I'm a teacher. Can my students use this service?

Certainly. In fact, please! 8-)

Just have them sign-up here, and create one or more tunnels. Or, alternatively, you could create a batch of tunnels for each student to use -- just give them the short bit of Python provided on the "View Tunnel" pages to paste into a Colaboratory or Kaggle Notebook.

If you, as an educator, can think of ways this service could be expanded to further facilitate education, please do let us know.