Osa 1: Linux ja SSH#

Linux#

On suomalaisen Linux Torvaldsin tekemä käyttöjärjestelmän ydin. Ensimmäinen versio Linux:ista julkaistiin 1991.

Komentorivi#

Linuxin komentorivi johtaa juurensa UNIX-aikoihin 70-luvulle.

SSH#

Kurssin telegramissa on jaettu SSH-avain, jolla pääset kirjautumaan kurssin isäntäpalvelimelle (nimeltä self-hosted). Aloita lataamalla avain.

Konfigurointi Espoon kannettavalla#

  1. Avaa Git Bash, ja syötä seuraavat komennot

  2. Luo ~/.ssh hakemisto:

    mkdir ~/.ssh
    
  3. Siirry komentorivillä ~/.ssh hakemistoon:

    cd ~/.ssh
    
  4. Siirrä avain hakemistoon:

    mv ~/Downloads/oppilas_self_hosted2025 .
    

    . tarkoittaa tänhetkistä työhakemistoa, jota cd-komento muuttaa.

Kirjautuminen self-hosted-palvelimelle#

  1. Lisää avain ssh-agentiin (tähän tulee myöhemmin automaagiota)

    eval $(ssh-agent -s)
    ssh-add ~/.ssh/oppilas_self_hosted2025
    
  2. Tarkista, että avain on lisätty agenttiin

    ssh-add -l
    
  3. Nyt voit yhdistää SSH:lla käyttäen fablab-systems.fi hyppypalvelinta

    ssh oppilas@10.129.0.2 -J self-hosted@fablab-systems.fi
    

    Huomio!

    Kun yhdistät SSH:lla ensimmäistä kertaa johonkiin palvelimeen, saat seuraavan viestin

    The authenticity of host '65.109.234.4 (65.109.234.4)' can't be established.
    ED25519 key fingerprint is SHA256:4mkW0O0aIgenHjSZoNGAgWwuhiunBxyQBsOtuLNwyMo.
    Are you sure you want to continue connecting (yes/no/[fingerprint])?
    

    Sillä yhteys (tässä tapauksessa fablab-systems.fi eli 65.109.234.4) ei vielä tässä vaiheessa ole suojattu, et voi luottaa, että sinun ja palvelimen välissä ei ole kolmatta osapuolta, joka yrittää salakuunnella tai muuttaa tietoa. Tässä vaiheessa voit tarkistaa, että yhteys on oikea. Tämä onnistuu tarkistamalla palvelimen julkinen avain, jonka SSH-palvelin lähettää sinulle.

  4. Tarkista SSH-avaimet seuraavasta taulukosta:

    Palvelin

    Sormenjälki

    Tyyppi

    fablab-systems.fi

    SHA256:4mkW0O0aIgenHjSZoNGAgWwuhiunBxyQBsOtuLNwyMo

    ED25519

    fablab-systems.fi

    SHA256:i96CUy3JSAgcK2g2A6CkKm9QJPemXTBlTGRNa2IhQpM

    RSA

    10.129.0.2

    SHA256:o3QXrS7/lWXzSL1dldt8tMOBNFgYc1ANH2pKmPjRZjU

    ED25519

    10.129.0.2

    SHA256:guTPdmunGXD0ZmVsacyyj8S9SkOs/ymO6Gotftl4AZE

    RSA

    Voit jopa kopioida sormenjäljen SHA256:... ja liittää sen komentoriville painamalla [CTRL]-[SHIFT]-V, jolloin SSH tarkistaa, että sormenjälki on sama.

Merkki onnistuneesta kirjautumisesta on seuraavalta näyttävä komentokehote:

Welcome to fish, the friendly interactive shell
Type help for instructions on how to use fish
oppilas@self-hosted ~>

Palvelimelta voi kirjautua ulos painamalla [CTRL]-D. Jos yrität yhdistää suoraan hyppypalvelimeen fablab-systems.fi, merkki onnistumisesta on seuraava viesti:

This account is currently not available.
Shared connection to 65.109.234.4 closed.

Tämä johtuu siitä, että jump käyttäjällä ei ole oikeutta avata komentokehotetta hyppypalvelimella.

SSH-agentin automaagio#

  • Kirjoita seuraavat loitsut tiedostoon ~/.bash_profile:

    if [ -f ~/.bashrc ];
    then 
        .  ~/.bashrc; 
    fi 
    

    Voit avata tiedoston esimerkiksi nanolla: nano ~/.bash_profile. Liitä koodi painamalla Shift+Insert tai oikealla hiiren painikkeella valitsemalla Paste.

  • Kirjoita tiedostoon ~/.bashrc:

    eval $(ssh-agent -s) &> /dev/null
    ssh-add ~/.ssh/* &> /dev/null
    
  • Käynnistä Git Bash uudestaan

  • ssh-add -l komennolla pitäisi näkyä lista SSH-avaimista, jotka löytyvät ~/.ssh hakemistosta.