SSH, SCP ja tiedonsiirtoa turvallisemmin

Nykyisin tietoverkoissa työskenteltäessä täytyy kiinnittää yhä enemmän huomiota toimintatapojen tietoturvallisuuteen. Aiemmin tiedonsiirto protokollana varsin yleinen FTP on saanut vähitellen siirtyä tietoturvaltaan edistyneempien SCP- ja SFTP-protokollien tieltä.

SCP-protokollassa on salattu vain käyttäjän tunnistaminen eli autentikointi, joten varsinainen tiedostojen siirto-operaatio suoritetaan edelleen salaamattomana. SFTP-protokolla puolestaan salaa sekä autentikoinnin, että tiedostojen siirron.

SSH-client ja pääteyhteys

Seuraavaksi käydään lyhyesti läpi kuinka SSH-client ohjelmalla luodaan pääteyhteys etäkoneelle, esimerkiksi sähköpostikoneelle. Lisäksi kappaleessa käsitellään graafisen SFTP-ohjelman käyttöä.

SSH vs. TELNET

Paljon käytetty TELNET-pääteprotokolla suorittaa molemmat sekä käyttäjän tunnistuksen että tiedonsiirron salaamattomana. Tästä syystä pääteyhteyttä varten on kehitetty salauksen sisältävä SSH-protokolla. SSH:n käyttö on perusteltua, vaikka esimerkiksi sähköpostissa tai tiedon siirrossa ei liikkuisikaan mitään arkaluontoista tietoa, koska pelkästään käyttäjän tunnistamisessa liikkuu jokatapauksessa. Jokaisen käyttäjän henkilökohtainen salasana on arkaluontoinen tieto, jota ei saa saattaa ulkopuolisten tietoon!

SSH-ohjelmista yleistä

Ottaessasi yhteyttä palvelinkoneeseen sinun tulee varmistua, että palvelimessa pyörii SSH-server-ohjelma, koska SSH-protokolla toimii SERVER-CLIENT-periaatteella. Lisäksi kannattaa huomioida, että SSH-protokolla on tällä hetkellä edennyt versioon 2, jossa tietoturvan taso on parantunut edellisestä huomattavasti. SSH2 on tuonut pientä epäyhteensopimattomuutta eri versioisten protokollien välille, joka kannattaa ottaa huomioon. Esimerkiksi seuraavassa kappaleessa esiteltävä Secure Shell SSH on SSH2-client, joka suostuu kommunikoimaan vain SSH2-serverin kanssa. Yleensä SSH-serverit hyväksyvät myös SSH1-clientin yhteydenottopyynnöt.

Graphic1

Secure Shell SSH

SSH Communicationin Secure Shell SSH-client on yksityiskäyttäjille sekä yliopistoille ilmainen asiakasohjelma. Ohjelma sisältää SSH-pääteohjelmiston sekä SFTP-tiedonsiirto-ohjelmiston. Ohjelmisto on saatavissa SSH Communicationsin WWW-sivuita: http://www.ssh.com/.

Ohjelmasta ilmestyy uusia versioita keskimäärin kerran kahdessa kuukaudessa, johtuen SSH2-protokollaan tehtävistä korjauksista sekä päivityksistä. Tämän monisteen päivittämishetkellä ohjelmistosta uusin versio oli 2.4.0, jonka mukaisesti nämä ohjeet etenevät.

Pääteyhteyden luominen palvelimelle

Pääteyhteyden luominen aloitetaan Secure Shell ohjelman käynnistyttyä esimerkiksi painamalla Enter- tai Space-näppäintä tai painikepalkista Quick Connect-valinnalla.

Näkyville tulee Connect to Remote Host-dialogi, johon täytyy syöttää palvelimen sekä käyttäjän tietoja seuraavasti.

Graphic2

Kun tiedot on syötetty oikein valitaan ja yhteyttä aletaan muodostamaan palvelimelle, mikäli sellainen löytyy.

Graphic3

Jos kyseiselle palvelimelle ei ole aiemmin muodostettu yhteyttä, niin seuraavana ilmestyy Host Identification dialogi, josta kannattaa valita Yes, koska silloin kyseisen palvelimen julkinen avain tallentuu paikalliselle koneelle ja yhteyden muodostaminen seuraavalla kerralla sujuu nopeammin.

Graphic4

Julkisen avaimen tallennuksen jälkeen kysytään käyttäjän salasana. Jos salasana kelpaa muodostuu yhteys palvelimelle ja palvelin alkaa tulostaa omia tervetuliaistekstejään pääteikkunaan.

Heti yhteyden muodostuksen jälkeen avautuu pääteikkunan oikeaan ylälaitaan Add Profile dialogi, jossa on mahdollista lisätä kyseinen yhteys valmiiksi yhteysprofiiliksi. Valmiit profiilit löytyvät painikepalkista Profiles-valinnan alta. Profiilien avulla on helppoa muodostaa pääteyhteys halutulle palvelimelle, antamalla pelkkä salasana, kun kaikki muut käyttäjä sekä palvelin asetukset ovat tallessa profiilissa.

Graphic5

Uuden profiilin lisääminen onnistuu antamalla dialogiin haluttu nimi kyseisen palvelimen profiilille.

Jo lisätyn profiilin muokkaaminen on myös mahdollista valitsemalla Profiles painikepalkista ja Edit Profiles … Tällöin avautuu Profiles dialogi, jossa näkyvät kaikki profiilit sekä jokaiselle profiilille käytössä olevat asetukset useimmilla välilehdillä. Tämän profiilin muokkaaminen ei ole tämän kurssin kannalta mitenkään tärkeä osuus, joten jätämme sen jokaisen omalle vastuulle.

Graphic6

Tiedostojen siirto Secure File Transfer Clientilla

Secure Shell ohjelmisto sisältää siis turvalliseen tiedostojen siirtoon tarkoitetun SFTP-ohjelman. Käytännössä kun on luotu pääteyhteys jollekin palvelimelle on meillä myös valmis tiedostojen siirtoyhteys samaiselle palvelimelle. Ei tarvitse muuta kuin käynnistää tiedoston siirto-ohjelma, joka onnistuu esimerkiksi painike palkista painikkeesta (kuva alla) tai Windows valikosta löytyvällä -valinnalla.

Graphic7

SSH Secure Shell File Trasfer ohjelma avaa käynnistyessään ikkunan joka on jaettu kahteen osaan (kuva yllä). Vasemmalla puolella näkyy palvelimelle kirjautuneen käyttäjän kotihakemisto alihakemistoineen puumaisessa muodossa. Oikean puolimaisessa ikkunassa näkyy valitun hakemiston sisältämät tiedostot ja alihakemistot sekä niiden koko, tyyppi ja luontipäivämäärä.

Graphic8

Tiedostojen siirtämiseen paikallisen koneen ja palvelimen välillä on kaksi komentoa ja . Edellä mainittu siirtää tiedostot paikalliselta levyltä palvelimen hakemistoon jälkimmäinen toisin päin. Seuraavaksi molemmat operaatiot lyhyesti:

Uploadlokaali -> palvelin

Tiedostojen siirtäminen palvelimen levylle aloitetaan valitsemalla painikepalkista Upload.

Tällöin avautuu Upload - Select Files dialogi, josta voidaan valita mitkä tiedostot siirretään palvelimelle. Kohdasta Look in: voidaan alasvetovalikkoa apuna käyttäen hakea oikea levyasema sekä hakemisto, josta tiedostoja siirretään.

Graphic9

Kun oikea hakemisto on löytynyt valitaan vain listasta tiedostot, jotka halutaan siirtää.

Siirtäminen aloitetaan painamalla Upload-painiketta. Tämän jälkeen alkaa siirto-operaatio, jonka kesto riippuu tiedostojen koosta sekä yhteyden nopeudesta.

Downloadpalvelin -> lokaali

Graphic10

Tiedostojen siirtäminen palvelimelta paikalliselle koneelle aloitetaan valitsemalla painikepalkista . Tämän jälkeen avautuu dialogi, jonka toiminta on samanlainen kuin edellä esitetyn dialogin. Eli dialogista valitaan tiedostot, jotka halutaan ladata paikalliselle koneelle ja valitaan . Tämän jälkeen tiedostojen koosta ja yhteyden nopeudesta riippuen tiedostot alkavat latautua palvelimelta paikalliselle koneelle.

Tiedostojen siirtäminen SCP:tä käyttäen

SCP-ohjelmasta on olemassa vain komentoriviltä käytettäviä versioita, jotka toimivat samaan tapaan kuin esimerkiksi copy-komento. SCP toimii samaisella client-server-menetelmällä kuten FTP, joten jotta tiedostojen siirtäminen onnistuu kahden koneen välillä on toisessa päässä oltava SCP-server ja toisessa SCP-client. Yleensä kaikissa palvelimissa, joissa on SSH-serveri eli sinne pääsee kirjautumaan jollakin SSH-client ohjelmalla, niin siellä on myös SCP-serveri.

Agoran mikroluokissa on c:\bin\scp.exe-niminen pieni SCP-client, joka toimii samalla tavoin kuin UNIX/LINUX järjestelmistä yleisesti löytyvä client. Komennon syntaksi on siis jokseenkin samankaltainen kuin UNIX:n scp-komennossa.

Paikallinen kone -> Palvelin

Siirretään paikalliselta koneelta tiedosto holopolo.txt omasta kotihakemistosta tukki-nimisen palvelimen kotihakemiston alihakemistoon kala.

U:\>scp u:\holopolo.txt sautakki@tukki:~sautakki/kala/
sautakki@tukki's password:
holopolo.txt | 1 kB | 1.0 kB/s | ETA: 00:00:00 | 100%
U:\>

Annetaan siis komento scp, joka ensimmäisenä parametrinä annetaan lähde, eli tässä tapauksessa tiedoston polku ja nimi u:\holopolo.txt. Toisena parametrinä annetaan käyttäjätunnus@kohdekohde:kohdehakemisto. Komennolle voidaan antaa myös optioita, joista tärkein on varmaan -r eli rekursiivinen kopiointi. Lisäksi on mahdollista käyttää jokerimerkkejä kuten *-merkkiä tarkoittamaan yhtä tai useampaa merkkiä.

Palvelin -> Paikallinen kone

Toiseen suuntaan tiedoston siirtäminen hoidetaan samaan tapaan, kuten edellä, mutta käännetään vain osat toisin päin. Esimerkiksi palvelimen tukki kotihakemistosta tiedosto foobar.txt paikallisen koneen c:\mytemp -hakemistoon onnistuu seuraavasti.

U:\>scp sautakki@tukki:foobar.txt c:\mytemp
sautakki@tukki's password:
foobar.txt | 1 kB | 1.0 kB/s | ETA: 00:00:00 | 100%
U:\>

Kuten edellä nähdään operaatiot palvelimen päässä tehdään oletuksellisesti käyttäjän kotihakemistossa, joten absoluuttista viittausta ei välttämättä tarvitse käyttää. Sama pätee myös lokaaliin koneeseen.

Käyttäjien kommentit

Kommentoi tätä sivua Lisää uusi kommentti
Kurssimateriaalien käyttäminen kaupallisiin tarkoituksiin tai opetusmateriaalina ilman lupaa on ehdottomasti kielletty!
http://appro.mit.jyu.fi/doc/tyovaline/ssh/
© Antti Ekonoja (anjoekon@jyu.fi) <http://users.jyu.fi/~anjoekon/>
Tommi Lahtonen (tommi.j.lahtonen@jyu.fi) <http://hazor.iki.fi/>
Jukka Mäntylä (jmantyla@iki.fi) <http://www.iki.fi/jmantyla/>
2003-10-27 10:14:33
Informaatioteknologia - Jyväskylän yliopiston IT-tiedekunta ja avoin yliopisto