SSH
SSH eli Secure SHell on alunperin Tatu Ylösen kehittämä järjestelmä, jolla voidaa ottaa turvallisia yhteyksiä järjestelmästä toiseen. SSH:sta löytyy avoin OpenSSH-toteutus, joka on peräisin OpenBSD-projektista. PuTTY on X:ssä toimiva ssh-asiakasohjelma UNIX:eille ja Windowsille.
Peruskäyttö
Monissa jakeluissa tulee mukana ssh-asiakasohjelma komentoriville, jolloin ssh-yhteyden voi ottaa palvelimelle yksinhkertaisesti komennolla
ssh minun.palvelin.net
Tällöin kirjautumista yritetään samalla tunnuksella, millä järjestelmään on kirjauduttu sisälle. Muulla tunnuksella yhdistäminen onnistuu seuraavasti
ssh kayttajatunnus@minun.palvelin.com
Mikäli ylläolevan komennon kirjoittaminen toistuvasti tuntuu työläältä, on mahdollista luoda ssh:n asetustiedostoon (~/.ssh/config) oma profiili yhteyttä varten. Tämä onnistuu lisäämällä tiedostoon rivit:
Host lyhytnimi minun.palvelin.com HostName minun.palvelin.com User kayttajatunnus
Host määrittelee komentoriville syötetyt aliakset, jotka käyttävät tätä profiilia. Ylläolevaa profiilia käytettäessä seuraavat komennot saavat aikaan saman lopputuloksen:
ssh kayttajatunnus@minun.palvelin.com ssh minun.palvelin.com ssh lyhytnimi
Graafiset ohjelmat
Jos halutaan ajaa X-ohjelmia SSH:n kautta on komentoon sisällyttävä parametri -X, esimerkiksi näin:
ssh -X guru@linuxburken.firma.se
Usein erityisesti X-ohjelmien ajossa pullonkaulaksi muodostuu hidas yhteys. Hitaan yhteyden aiheuttamia ongelmia voidaan kompensoida pakkaamalla tiedonsiirto:
ssh -X -C guru@linuxburken.firma.se
Jotta graafisten ohjelmien käyttäminen onnistuisi, on sshd:n asetustiedostossa (/etc/ssh/sshd_config) oltava rivi
X11Forwarding yes
Yhteyksien uusiokäyttö
Mikäli samalle palvelimelle otetaan useampia yhteyksiä, voidaan yhtä yhteyksistä käyttää nk. isäntäyhteytenä, jolloin muut yhteydet otetaan sen kautta. Tällöin salasana on annettava vain kerran isäntäyhteyttä avatessa ja muiden yhteyksien ottaminen hoituu erittäin nopeasti.
Isäntäyhteyttä otettaessa ssh:lle on annettava parametri -M:
ssh -M mun.palvelin.com
Jonka jälkeen toinen yhteys voidaan ottaa tavalliseen tapaan
ssh mun.palvelin.com
Eikä salasanaa enää kysytä.
Jotta isäntäyhteyksien käyttö onnistuisi, on ssh:n asetustiedostoon (~/.ssh/config) lisättävä rivit
Host * ControlPath ~/.ssh/ctl-%r-%h-%p ControlMaster auto
Ominaisuus löytyy OpenSSH:n versiosta 4.2 ja sitä uudemmista.
Tunnistaminen avainparilla
Salasanatunnistuksen ohella varteenotettava tapa autentikoida yhteys palvelimelle on avainparimenettely. Siinä asiakaskoneella luodaan avainpari, jonka yksityinen osa jätetään omalle koneelle, ja julkinen osa siirretään kaikille niille koneille, joilla avainparitunnistusta halutaan käyttää. Tässä menettelyohjeet:
- Luodaan avainpari ssh-keygen -ohjelmalla
ssh-keygen -t rsa
- Tässä vaiheessa ssh-keygen kysyy polkua ja salasanaa avaimelle. Oletuspolku (~/.ssh/id_rsa)käy hyvin, mutta salasanaa on syytä käyttää, sillä tämän jälkeen koneellasi ei enää tarvita salasanaa tälle palvelimelle kirjauduttaessa, joten kaikki koneen käyttäjät pääsevät käsiksi etäpalvelimiisi. Myös id_rsa -tiedoston turvallisuudesta on pidettävä huolta, sillä sen avulla kuka tahansa voi kirjautua käyttämillesi palvelimille tunnuksillasi
- Sitten kopioidaan julkinen osa kaikille palvelimille missä tätä avainparia halutaan hyödyntää. Huomaa, että authorized_keys2 -tiedostossa jokaisella rivillä määritetään yksi avain. Jos et ole aiemmin käyttänyt tätä menetelmää, tiedostoa ei ole, ja oman julkisen avaimen kopioiminen etäkoneen authorized_keys2 -tiedoston päälle ei tuota ongelmia.
scp ~/.ssh/id_rsa.pub palvelin:/home/kayttaja/.ssh/authorized_keys2
- Nyt voit kirjautua kaikille palvelimille, joille olet julkisen avaimesi kopioinut ilman salasanaa (tai siis avainparin salasanaa käyttäen).