Skip to content

Commit

Permalink
Simplified Bianca login
Browse files Browse the repository at this point in the history
  • Loading branch information
richelbilderbeek committed Aug 5, 2024
1 parent 2e19cff commit 831ae0a
Show file tree
Hide file tree
Showing 4 changed files with 93 additions and 218 deletions.
51 changes: 51 additions & 0 deletions docs/cluster_guides/biancas_design.md
Original file line number Diff line number Diff line change
Expand Up @@ -68,3 +68,54 @@ basic Linux knowledge to use Bianca.
Using Linux (and especially the so-called command-line/terminal) is essential
to use Bianca. Learning the essential Linux commands
is described [here](../getting_started/linux.md).


## Overview of all steps possible/needed to access Bianca

```mermaid
flowchart TD
subgraph sub_outside[IP outside SUNET]
outside(Physically outside SUNET)
end
subgraph sub_inside[IP inside SUNET]
physically_inside(Physically inside SUNET)
inside_using_vpn(Inside SUNET using VPN)
inside_using_rackham(Inside SUNET using Rackham)
subgraph sub_bianca_shared_env[Bianca shared network]
bianca_shared_console[Bianca console environment login]
bianca_shared_remote_desktop[Bianca remote desktop login]
subgraph sub_bianca_private_env[The project's private virtual project cluster]
bianca_private_console[Bianca console environment]
bianca_private_remote_desktop[Bianca remote desktop]
bianca_private_terminal[Terminal]
end
end
end
%% Outside SUNET
outside-->|Move physically|physically_inside
outside-->|Use a VPN|inside_using_vpn
outside-->|Login to Rackham|inside_using_rackham
%% Inside SUNET
physically_inside-->|SSH|bianca_shared_console
physically_inside-->|UPPMAX website|bianca_shared_remote_desktop
physically_inside-.->inside_using_rackham
physically_inside-.->inside_using_vpn
inside_using_vpn-->|SSH|bianca_shared_console
inside_using_vpn-->|UPPMAX website|bianca_shared_remote_desktop
inside_using_rackham-->|SSH|bianca_shared_console
%% Shared Bianca
bianca_shared_console --> |UPPMAX password|bianca_private_console
bianca_shared_remote_desktop-->|UPPMAX password|bianca_private_remote_desktop
%% Private Bianca
bianca_private_console---|is a|bianca_private_terminal
bianca_private_remote_desktop-->|must also use|bianca_private_terminal
```

This is an overview of all steps possible/needed to access Bianca.
235 changes: 19 additions & 216 deletions docs/getting_started/login_bianca.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,18 +8,15 @@
Here it is described how to log in to [Bianca](../cluster_guides/bianca.md):

- [Bianca's design](../cluster_guides/biancas_design.md):
helps understand why the procedure described here is needed.
- [Prerequisites](#bianca-usage-prerequisites) describes what is needed before one can access Bianca
- [The two Bianca environments](#the-two-bianca-environments) shows the two ways to access Bianca
- [Get within the university networks](#get-within-the-university-networks) shows how *to be allowed to* access Bianca
- [Get inside the Bianca environment](#get-inside-the-bianca-environment) show how access the two Bianca environments:
- [Login to the Bianca remote desktop environment](#login-to-the-bianca-remote-desktop-environment)
- [Login to the Bianca console environment](#login-to-the-bianca-console-environment)
- [Prerequisites](bianca_usage_prerequisites.md) describes what is needed before one can access Bianca
- [The two Bianca environments](#the-two-bianca-environments) shows the two ways to access Bianca:
- For a remote desktop environment, go to [access Bianca remote desktop environment via a website](login_bianca_remote_desktop_website.md)
- For a console environment, go to [login to the Bianca console environment with a password](login_bianca_console_password.md).
If you want to get rid of using a password every time, see [login to the Bianca console environment with an SSH key](login_bianca_console_ssh_key.md)

## Login
## The two Bianca environments

There are multiple ways to login:
There are two ways to access Bianca:

Login |Description
---------------------|----------------------------------------------
Expand All @@ -29,27 +26,20 @@ Terminal |Console environment, recommended
```mermaid
flowchart TD
need_gui(Need to run a graphical program?)
how_login(How to log in?)
use_terminal[Use a terminal]
use_website[Use the remote desktop website]
use_password[Use password\nStart here]
use_ssh_keys[Use SSH keys\nNo more password needed]
need_gui --> |no| use_terminal
need_gui --> |yes| use_website
```

## Bianca usage prerequisites

To be allowed to use Bianca, one needs all of these:
- [ ] :square-check: An active research project
- [ ] :check_mark_button: An UPPMAX account
- [ ] :fontawesome-square-check: An UPPMAX password

These are discussed in more detail [here](bianca_usage_prerequisites.md).

## The two Bianca environments

Bianca, like most HPC clusters, uses Linux.
To use Bianca, there are two environments:
use_terminal --> how_login
how_login --> use_password
how_login --> use_ssh_keys
```

???- question "How does the Bianca remote desktop look like?"

Expand All @@ -75,204 +65,17 @@ To use Bianca, there are two environments:

- A console environment, also called 'terminal environment' or 'terminal'

The [remote desktop environment](../software/thinlinc.md) is considered the easier place to start for most
The remote desktop environment is considered the easier place to start for most
new users, as it has most similarities with what a new user is familiar with.
However, one must always use a terminal to some extent.


```mermaid
flowchart TD
subgraph sub_bianca_private_env[The project's private virtual project cluster]
bianca_private_console[Bianca console environment]
bianca_private_remote_desktop[Bianca remote desktop]
bianca_private_terminal[Terminal]
end
%% Private Bianca
bianca_private_console---|is a|bianca_private_terminal
bianca_private_remote_desktop-->|must also use|bianca_private_terminal
```

> The two Bianca environments and their relation to a terminal.
## Get within the university networks

Bianca has sensitive data.
To protect this data,
Bianca is accessible from all Swedish university networks.
To be precise, to connect to Bianca one needs to so from a
[SUNET](https://www.sunet.se/) Internet Protocol ('IP') address.

Due to this, the first step to access Bianca
is to get an IP that is inside SUNET first.

See the 'get inside the university networks' page [here](../getting_started/get_inside_sunet.md)

## Get inside the Bianca environment

![The Bianca environments](./img/bianca_environments_926_x_261.png)

> The two Bianca environments to work on Bianca.
> At the left is a remote desktop environment.
> At the the right is the console environment.
???- question "Want a video?"

- [Login to the Bianca remote desktop and Bianca console environment, physically inside SUNET](https://youtu.be/upBozh2BI5c?si=NXUHKyA1tNeZFeSR)
- [Login to the Bianca remote desktop and Bianca console environment, outside of SUNET, use VPN](https://youtu.be/Ni9nyCf7me8?si=pL3Xna7XbV3G1QFi)
- [Install VPN client, then login to the Bianca remote desktop using that VPN client](https://youtu.be/AIJKbJeu0MI?si=9ES3ZECykwc8tT28)
- [Login to the Bianca remote desktop and Bianca console environment, outside of SUNET, no VPN](https://youtu.be/W-PMTyNcbYI?si=mT4h4utxH3owygAH)

When inside SUNET, one can access the Bianca environments.

- For a remote desktop environment,
go to [login to the Bianca remote desktop environment](#login-to-the-bianca-remote-desktop-environment)
- For a console environment,
go to [login to the Bianca console environment](#login-to-the-bianca-console-environment)

Below, the ways to access these Bianca environments
are discussed

```mermaid
flowchart TD
subgraph sub_inside[IP inside SUNET]
user(User)
subgraph sub_bianca_shared_env[Bianca shared network]
subgraph sub_bianca_private_env[The project's private virtual project cluster]
bianca_private_console[Bianca console environment]
bianca_private_remote_desktop[Bianca remote desktop]
end
end
end
%% Inside SUNET
user --> bianca_private_console
user --> bianca_private_remote_desktop
```

### Login to the Bianca remote desktop environment

![The Bianca remote desktop environment](./img/bianca_remote_desktop_463_x_262.png)

> The Bianca remote desktop environment
One can only [access Bianca remote desktop environment via a website](login_bianca_remote_desktop_website.md).
- For a remote desktop environment, go to [access Bianca remote desktop environment via a website](login_bianca_remote_desktop_website.md)
- For a console environment, go to [login to the Bianca console environment with a password](login_bianca_console_password.md).
If you want to get rid of using a password every time, see [login to the Bianca console environment with an SSH key](login_bianca_console_ssh_key.md)

???- question "Will a local ThinLinc client work too?"

No.

One really can only [access Bianca remote desktop environment via a website](login_bianca_remote_desktop_website.md).

### Login to the Bianca console environment

![The Bianca console environment](./img/login_bianca_via_terminal_terminal_462_x_202.png)

> The Bianca console environment
When inside SUNET, one can access a Bianca console environment
using a terminal and the Secure Shell Protocol (SSH).

???- question "Forgot how to get within SUNET?"

See the 'get inside the university networks' page [here](../getting_started/get_inside_sunet.md)

You can use your favorite terminal to login (see <https://uppmax.github.io/uppmax_intro/login2.html#terminals> for an overview of many)
to the Bianca command-line environment.
You can also have multiple log-ins active at once.

There are multiple ways to set this up:

- [Login to the Bianca console environment with a password](login_bianca_console_password.md).
- [Login to the Bianca console environment with an SSH key](login_bianca_console_ssh_key.md).

Using an SSH password is considered easiest,
where using an SSH key is considered more elegant.

In a Bianca console environment:

- Text display is limited to 50kBit/s.
This means that if you create a lot of text output,
you will have to wait some time before you get your prompt back.
- Cut, copy and paste work as usual.
Be careful to not copy-paste sensitive data!

```mermaid
flowchart TD
subgraph sub_inside[IP inside SUNET]
user(User)
subgraph sub_bianca_shared_env[Bianca shared network]
bianca_shared_console[Bianca console environment login]
subgraph sub_bianca_private_env[The project's private virtual project cluster]
bianca_private_console[Bianca console environment]
%% Ensure the innermost square gets big enough
END:::hidden
end
end
end
%% Inside SUNET
user-->|SSH, UPPMAX password and 2FA|bianca_shared_console
bianca_shared_console --> |UPPMAX password or SSH key|bianca_private_console
```

## Overview of all steps possible/needed to access Bianca

```mermaid
flowchart TD
subgraph sub_outside[IP outside SUNET]
outside(Physically outside SUNET)
end
subgraph sub_inside[IP inside SUNET]
physically_inside(Physically inside SUNET)
inside_using_vpn(Inside SUNET using VPN)
inside_using_rackham(Inside SUNET using Rackham)
subgraph sub_bianca_shared_env[Bianca shared network]
bianca_shared_console[Bianca console environment login]
bianca_shared_remote_desktop[Bianca remote desktop login]
subgraph sub_bianca_private_env[The project's private virtual project cluster]
bianca_private_console[Bianca console environment]
bianca_private_remote_desktop[Bianca remote desktop]
bianca_private_terminal[Terminal]
end
end
end
%% Outside SUNET
outside-->|Move physically|physically_inside
outside-->|Use a VPN|inside_using_vpn
outside-->|Login to Rackham|inside_using_rackham
%% Inside SUNET
physically_inside-->|SSH|bianca_shared_console
physically_inside-->|UPPMAX website|bianca_shared_remote_desktop
physically_inside-.->inside_using_rackham
physically_inside-.->inside_using_vpn
inside_using_vpn-->|SSH|bianca_shared_console
inside_using_vpn-->|UPPMAX website|bianca_shared_remote_desktop
inside_using_rackham-->|SSH|bianca_shared_console
%% Shared Bianca
bianca_shared_console --> |UPPMAX password|bianca_private_console
bianca_shared_remote_desktop-->|UPPMAX password|bianca_private_remote_desktop
%% Private Bianca
bianca_private_console---|is a|bianca_private_terminal
bianca_private_remote_desktop-->|must also use|bianca_private_terminal
```

This is an overview of all steps possible/needed to access Bianca.
It is all graphs on this pages combined.

8 changes: 8 additions & 0 deletions docs/getting_started/login_bianca_console_ssh_key.md
Original file line number Diff line number Diff line change
Expand Up @@ -64,6 +64,14 @@ is the 2FA number.

Enjoy! You are in! To be precise, you are on a Bianca login node.

In a Bianca console environment:

- Text display is limited to 50kBit/s.
This means that if you create a lot of text output,
you will have to wait some time before you get your prompt back.
- Cut, copy and paste work as usual.
Be careful to not copy-paste sensitive data!

!!! note "How to behave on a login node"

On a login node, one can and should do simple things only:
Expand Down
17 changes: 15 additions & 2 deletions docs/getting_started/login_bianca_remote_desktop_website.md
Original file line number Diff line number Diff line change
Expand Up @@ -18,8 +18,7 @@ Bianca does not support any so-called
[X forwarding](../software/ssh_x_forwarding.md) (unlike Rackham),
so instead UPPMAX maintains a website that uses
[ThinLinc](../software/thinlinc.md) to get a full remote desktop environment.
All you should need is a rather modern browser on any platform:
we have tested on Chrome and Firefox :-)
All you should need is a rather modern browser on any platform.

???- question "How does it look like to try to access a remote desktop from outside of SUNET?"

Expand All @@ -28,6 +27,12 @@ we have tested on Chrome and Firefox :-)
> When accessing the Bianca UPPMAX login website from outside of SUNET,
> nothing will appear in your browser.

???- question "Will a local ThinLinc client work too?"

No.

One really can only access Bianca remote desktop environment via a website

When inside SUNET, one can access a remote desktop environment using a website:

## 2. Go to [https://bianca.uppmax.uu.se](https://bianca.uppmax.uu.se)
Expand Down Expand Up @@ -121,6 +126,14 @@ When picking a remote desktop flavor, pick GNOME or XFCE, avoid picking KDE.

Enjoy! You are in! You are on a Bianca login node!

In a Bianca console environment:

- Text display is limited to 50kBit/s.
This means that if you create a lot of text output,
you will have to wait some time before you get your prompt back.
- Cut, copy and paste work as usual.
Be careful to not copy-paste sensitive data!

!!! note "How to behave on a login node"

On a login node, one can and should do simple things only:
Expand Down

0 comments on commit 831ae0a

Please sign in to comment.