HAKATEMIA
02Hallinta

SSH-palvelun käyttäminen

Helppo20MIN

Mikä on SSH?

SSH (Secure Shell) on salattua protokollaa käyttävä ohjelmisto, joka mahdollistaa turvallisen etäyhteyden luomisen tietokoneiden välille Internetin yli. SSH:n pääasiallinen tarkoitus on tarjota salattu ja turvallinen pääsy etäpalvelimiin ja laitteisiin. Sitä käytetään tyypillisesti hallitsemaan etäpalvelimia, siirtämään tiedostoja turvallisesti ja suorittamaan komentoja etäkoneilla. Tässä moduulissa opettelemme SSH:n käyttöä. Aloita käynnistämällä alla oleva harjoitus ja toista vaiheet perässä.

SSH-yhteyden ottaminen

SSH-ohjelman käyttö on suhteellisen suoraviivaista. Kun harjoituslabrasi on käynnistynyt, voit ottaa yhteyden kohde IP-osoitteeseen seuraavalla komennolla:

BASH
1ssh ubuntu@KOHDE-IP

Yllä olevan komento sisältää sanan **ubuntu, **joka on käyttäjä, jolla haluamme kirjautua. Sitten tulee **@-**merkki, jonka jälkeen annamme IP-osoitteen tai domain nimen, johon otamme yhteyttä. Tämän jälkeen palvelu varmistaa, että haluat luoda yhteyden tähän kohteeseen, sillä kyseisen kohteen sormenjälkeä ei tunnisteta. Voit kirjoittaa, että *yes. *Lopuksi, palvelu pyytää käyttäjän salasanan. Salasana on **hakatemia. **

Nyt olemme kirjautuneet etänä kohde koneelle käyttäjänä **ubuntu. **

SSH-yhteyden sulkeminen

Voit sulkea yhteyden komennolla "exit".

Julkisen SSH-avaimen luominen ja käyttäminen

SSH-palvelu tukee useita erilaisia tapoja kirjautua palvelimiin sisään. Käytimme äsken perinteistä salasana kirjautumista, mutta tähän löytyy turvallisempi ja parempikin tapa, nimittäin SSH-avainten käyttäminen. SSH-avaimet perustuvat asymmetriseen kryptografiaan ja tämän toimintalogiikka on käytännössä seuraavanlainen:

  1. Avaimen generointi: Käyttäjä aluksi generoi avainparin. Tämä koostuu julkisesta avaimesta, joka jaetaan palvelimille ja yksityisestä avaimesta, joka säilytetään turvallisesti omalla laitteellaan.
  2. Yhteyden muodostaminen: Kun käyttäjä ottaa yhteyttä, palvelin haluaa varmistua käyttäjän identiteetistä. Se pyytää käyttäjää allekirjoittamaan satunnaisen haasteen yksityisellä avaimellaan.
  3. Allekirjoituksen tarkistus: Vastaanottava osapuoli tarkistaa, että saatu allekirjoitus vastaa odotettua käyttämällä julkista avaintaan. Jos se on oikein, käyttäjän identiteetti on vahvistettu.

SSH-avainten käytössä ei ole tarvetta syöttää salasanaa joka kerta yhteyden muodostuessa, mikä tekee prosessista kätevämmän. Ainoastaan yksityisellä avaimella päästään kirjautumaan valittuihin palveluihin, joten tämä pitää olla hyvin suojassa.

Voit generoida itsellesi SSH-avainparin, seuraavalla komennolla (muista ajaa tämä harjoituksen omalla koneella, eikä kohdekoneella:

BASH
1ssh-keygen

Komento kysyy ensin sinulta, että minne haluat tallentaa avainparin ja sitten, jos haluat määrittää yksityiselle avaimelle salasanan. Näin sitä ei voida käyttää, ilman, että tietää kyseisen salasanan, joka lisää tämän suojausta. Voit painaa vain enter, jos et halua asettaa tälle salasanaa.

Yllä olevassa listauksessa, tiedostot **id_rsa **ja **id_rsa.pub **ovat äsken generoidut avaimet. Näistä *.pub *päätteinen on julkinen avaimesi, jota voit levitellä rauhassa kohdepalvelimille, johon haluat kirjautua SSH-yhteydellä.

Julkisen avaimen asettaminen kohdepalvelimelle

Seuraava vaihe on asettaa kyseinen julkinen avain kohdepalvelimelle, niin että voimme kirjautua tämän avulla. Harjoitellaan samalla, kuinka voit siirtää tiedostoja palvelimelta toiselle SSH-protokollan yli. Käytetään tähän SCP-nimistä komentoa seuraavalla tavalla:

BASH
1scp MISTÄ MIHIN
2
3# esimerkiksi kohde koneelta meidän koneelle
4
5scp [email protected]:"/tama" /root/tanne
6
7# Tai meidän koneelta kohde koneelle
8
9scp /root/.ssh/id_rsa.pub [email protected]:"/"

Komento kysyy sinulta salasanan ja sitten siirtää tiedoston kohdekoneelle. Kirjaudutaan nyt SSH:lla tavalliseen tapaan kohdekoneelle ja asetetaan julkinen SSH-avain oikein.

Kun yrität kirjautua SSH-palveluun käyttämällä julkisia avaimia, kyseinen palvelu tulee tarkistamaan, että löytyykö siltä käyttäjältä (käyttäjä, jolle yrität kirjautua) tiedosto **.ssh/authorized_keys **käyttäjän kotihakemistossa.

Kyseinen tiedosto sisältää kaikki määritetyt julkiset avaimet ja näitä voi siis olla monta, omilla riveillään. Yllä olevassa kuvassa loimme yksinkertaisesti **.ssh **nimisen kansion käyttäjän kotihakemistoon ja siirsimme äskeisen **id_rsa.pub **tiedoston tämän kansion sisään.

Muutimme samalla tämän nimen vastaamaan tuota **authorized_keys **nimeä. (Huom! - Tämä ei ole malliesimerkki, miten tehdä tämä, sillä järkevämpää olisi ollut vain kopioida julkinen avain, eikä siirtää koko tiedostoa, mutta kävimme tässä läpi myös tuon SCP-komennon)

Nyt voimme kokeilla kirjautua uudestaan sisään ja huomata, ettei palvelu pyydä meiltä enää salasanaa. Palvelu käyttää äsken generoituja SSH-avaimia kirjautumiseen.

Jos poistaisit yksityisen avaimesi, niin silloin palvelu turvautuisi taas salasanalla kirjautumiseen.

Salasanakirjautuminen vs SSH-avainten käyttö

Avaimet tarjoavat korkeamman turvallisuustason, sillä ne ovat pitkiä ja satunnaisia merkkijonoja, toisin kuin tyypilliset salasanat. Toiseksi, avaimia voidaan käyttää ilman, että käyttäjän täytyy syöttää salasanaa joka kerta. Tämä tekee prosessista kätevämmän ja samalla vähentää riskiä, että käyttäjät käyttävät heikkoja salasanoja tai tallentavat niitä epävarmoihin paikkoihin. Lisäksi avaimet mahdollistavat automatisoidut prosessit ja esimerkiksi skriptit voivat käyttää avaimia turvallisesti ilman, että käyttäjän täytyy olla paikalla syöttämässä salasanaa. Kaiken kaikkiaan SSH-avaimet tarjoavat tehokkaan ja turvallisen tavan autentikoida käyttäjät ja suojata etäyhteyksiä.

1 / 2
Hakatemia Pro

Hakkeroinnin oppiminen alkaa tästä

Sadat interaktiiviset kurssit, virtuaalilabrat ja CTF-haasteet selaimessasi. Aloita ilmainen kokeilu ilman korttitietoja.