UiOs login-tjeneste (SSH)

Dette dokumentet gir en overordnet beskrivelse UiOs login-tjeneste, og gir en enkel innføring i hvordan den brukes.

English version of this page

1   Overordnet beskrivelse

Login-tjenesten består av totalt fire servere som svarer på ssh. Av de fire serverne er to satt opp med tofaktorautentisering (2FA) via Microsoft Azure, mens de to andre er satt opp med tofaktorautentisering (2FA) via en lokal tjeneste ved UiO:

login.uio.no

Denne tjenesten benytter 2FA via Microsoft Azure. Består av to servere i bakkant:

  • morgoth.uio.no
    • Også kjent som login1.uio.no
    • Plassert på Blindern Campus
  • gothmog.uio.no
    • Også kjent som login2.uio.no
    • Plassert i Oslo sentrum (Tullinløkka)
rlogin.uio.no

Denne tjenesten benytter 2FA via en lokal tjeneste ved UiO. Består av to servere i bakkant:

  • soria.uio.no
    • Også kjent som login3.uio.no
    • Plassert på Blindern Campus
  • moria.uio.no
    • Også kjent som login4.uio.no
    • Plassert i Oslo sentrum (Tullinløkka)

Felles for disse to tjenestene:

  • De består av to servere i bakkant. Når man logger inn via tjenestenavnet (login eller rlogin) er det tilfeldig hvilken av de bakenforliggende serverne man havner på
  • 2FA vil kun avkreves dersom forbindelsen kommer fra utenfor UiO. Innenfor UiO holder det med passord eller public key.
  • De har samme programvare installert, og skal kunne brukes på samme måte
  • De består begge av to bakenforliggende servere som er plassert forskjellig sted (Blindern Campus / Tullinløkka)
  • De er tilgjengelig fra hele internett
  • Begge tjenestene lytter på ssh-forbindelser på både port 22 og port 443. Sistnevnte er tilgjengelig for de tilfellene der man har en utgående brannmur som sperrer for port 22.

Ulikheter mellom tjenestene:

  • Ettersom login.uio.no benytter 2FA via Microsoft Azure, vil 2FA-autentiseringen her kun fungere for brukere som er eksportert til Microsoft Azure. Personer ved UiO som har mer enn ett brukernavn vil kunne oppleve at kun ett av brukernavnene fungerer med denne tjenesten. Denne begrensningen gjelder ikke for rlogin.uio.no.
  • For login.uio.no støttes både "push notifications" via mobilappen "Microsoft Authenticator", og One-Time-Password (OTP-koder). For rlogin.uio.no støttes kun OTP-koder
  login.uio.no rlogin.uio.no
Push notification
OTP-kode
Alle brukere [1]
Tilgjengelig fra internett
SSH på port 443
Georedundans
Støtter public key
Ingen 2FA fra innsiden

Footnotes

[1]Kun tilgjengelig for brukere som er eksportert til Microsoft Azure

1.1   Caching av 2FA

Både login.uio.no og rlogin.uio.no mellomlagrer 2FA-autentiseringen i en periode (36 timer). Dersom du logger inn fra samme klient (IP-nummer) innenfor dette tidsrommet vil du kunne slippe å taste 2FA-kode ettersom den allerede er forhåndsgodkjent.

Merk at 2FA-cachingen følger maskin. Ettersom login.uio.no og rlogin.uio.no hver består av 2 maskiner, og det er tilfeldig hvilken du havner på om du bruker navnet "login.uio.no" eller "rlogin.uio.no", vil du kunne oppleve å måtte angi 2FA dersom du havner på den ene av de to som du ikke allerede har logget inn på siste 36 timer.

2   Komme i gang

2.1   Oppsett av 2FA

For login.uio.no, som bruker 2FA via Microsoft, se Forhåndsklargjøring av tofaktorautentisering

For rlogin.uio.no, som bruker 2FA via lokal tjeneste ved UiO, sett opp 2FA ved å peke en nettleser til Passordtjenester og velg Lokal tofaktor.

2.2   Logge inn via ssh

Når 2FA er satt opp som beskrevet over skal innlogging fungere. Man åpner da en terminal, eksempelvis powershell på Windows og skriver en av disse kommandoene:

ssh brukernavn@hostnavn
ssh hostnavn -l brukernavn
ssh hostnavn

I de to første variantene angir man brukernavnet. Det er nødvendig dersom innlogget brukernavn er forskjellig fra brukernavnet ved UiO som man ønsker å logge inn om. De to variantene gjør akkurat det samme, og hvilken av disse man ønsker å bruke avhenger kun av personlig preferanse. Dersom innlogget brukernavn er identisk med UiO-brukernavnet kan man bruke den siste varianten.

Dersom innloggingen skjer fra utenfor UiO-nettet vil man avkreves 2FA. Dette ser slik ut for login.uio.no:

$ ssh brukernavn@login.uio.no

This host utilizes two-factor authentication via Microsoft Azure.
If you are using the Microsoft Authenticator mobile application, you
should have received a notification which you need to accept in
order to proceed. If you are using One Time Password (OTP) codes,
enter the OTP code now.

Dersom man har satt opp 2FA hos Microsoft til å benytte OTP-koder, kommer følgende tekst i tillegg:

Enter Your Microsoft verification code

Godkjenn så "push notification" via Microsoft Authenticator, eller skriv inn OTP-koden og trykk enter. Man vil så bli spurt om passord:

Password:

Skriv inn passordet, og man blir logget inn.

For rlogin.uio.no ser det litt annerledes ut:

$ ssh brukernavn@rlogin.uio.no

This host utilizes two-factor authentication via a local RADIUS service.
Set up your two-factor codes at [https://passord.uio.no/]

Verification_Code:

Skriv inn OTP-koden, og man blir spurt om passord akkurat som for login.uio.no som beskrevet over.

3   sftp-tjenesten

Som de andre login-tjenestene består sftp-tjenesten av to maskiner, plassert forskjellig sted (Blindern og Oslo sentrum), for redundans og robusthet:

$ host login-sftponly.uio.no
login-sftponly.uio.no has address 129.240.114.46
login-sftponly.uio.no has address 129.240.114.54
login-sftponly.uio.no has IPv6 address 2001:700:100:8071::54
login-sftponly.uio.no has IPv6 address 2001:700:100:8070::46

Denne tjenesten har som formål å tilby enkel sftp, scp [2] og sshfs for de som ønsker det, uten tofaktorautentisering. Den har derfor noen viktige begrensninger:

  • Den tillater kun SSH-nøkkelautentisering (public key). Man kan ikke bruke denne tjenesten uten å på forhånd ha satt opp nøkkelautentisering som beskrevet her:

    Husk å sette passord på nøkkelen! Man kan bruke ssh-agent, enten direkte eller via programmer som GNOME sin keyring, for å slippe å skrive inn passordet hver gang.

  • Den tillater kun sftp, eller tjenester som bruker sftp, som scp [2] og sshfs. Den kan dermed ikke brukes til interaktiv innlogging.

  • Den kan ikke brukes til å gjøre proxyjump videre til andre maskiner

3.1   Enkel bruk av sftp-tjenesten

sftp-tjenesten kan brukes til sftp, scp [2] og sshfs. I alle eksempler brukes login-sftponly.uio.no. Dersom man ønsker kan man bruke et av tjenestens aliaser istedenfor:

  • sftp.uio.no
  • scp.uio.no
  • sshfs.uio.no

Det spiller ingen rolle hvilken av disse man bruker til hva, eller om man bruker det egenlige navnet login-sftponly.uio.no.

sftp

For å gjøre enkel filoverføring kan man bruke sftp direkte. Dette har funksjonalitet som ligner på normal FTP. Eksempel på bruk:

$ sftp brukernavn@login-sftponly.uio.no
sftp> ls
[... lister opp filer på server ...]
sftp> get fil1.txt
Fetching /uio/kant/uio-u1/brukernavn/fil1.txt to fil1.txt
fil1.txt                          100%   13KB   4.8MB/s   00:00
sftp> lls
[... lister opp lokale filer ...]
sftp> put fil2.txt
Uploading fil2.txt to /uio/kant/uio-u1/brukernavn/fil2.txt
fil2.txt                          100%  451   522.8KB/s   00:00
sftp> quit

I eksemplet over brukes ls til å liste opp filer på serveren, vi bruker så get til å hente en fil fra servere. Vi lister så opp filer på klienten med lls og bruker put til å laste opp en fil til serveren.

scp

Notat

Bare for nyere versjoner av openssh-klienten, der scp bruker SFTP som underliggende mekanisme.

Denne kommandoen er velkjent for brukere av SSH. Det er en enkel måte å gjøre filoverføring. Eksempel på bruk:

$ scp brukernavn@login-sftponly.uio.no:fil1.txt .
fil1.txt                          100%  13KB  224.2KB/s   00:00

$ scp fil2.txt brukernavn@login-sftponly.uio.no:
fil2.txt                          100%  451   456.4KB/s   00:00

I eksemplet henter vi først en fil fra serveren, og deretter laster opp en fil til serveren.

sshfs

For å montere UiO-hjemmeområdet lokalt som et filsystem via SSH kan man bruke sshfs. Eksempel på bruk:

Først lager man en mappe som monteringspunkt, hvis mappen ikke finnes fra før:

$ mkdir uiohome

Deretter kan man montere via sshfs:

$ sshfs brukernavn@login-sftponly.uio.no: uiohome

UiO-hjemmeområdet er nå tilgjengelig under mappen "uiohome", og kan brukes som et normalt filsystem. Når man ikke lenger ønsker at dette skal være montert/tilgjengelig lokalt, kan filsystemet avmonteres:

$ umount uiohome
[2](1, 2, 3)

scp fungerer kun med nyere versjon av openssh-klienten, der scp bruker SFTP som underliggende mekanisme. Openssh-versjonen er for gammel hvis du får følgende feilmelding ved bruk av scp:

This service allows sftp connections only.

Dersom dette skjer vil det beste alternativet være å bruke sftp istedenfor scp.

Av Trond Hasle Amundsen
Publisert 22. mai 2024 14:48