Kotitehtävä VI: SSH

Tehtävänanto:

Asenna SSH-palvelin
– Luo uusi käyttäjä ja kirjaudu sillä
– Automatisoi kirjautuminen julkisella avaimella
– Tee ainakin yksi seuraavista a,b…
a) kopioi tiedostoja rsync:lla (rsync -vazh foo/ tero@example.com🙂
b) kopioi tiedostoja scp:lla
c) tee turvallinen tunneli (ssh -L, www-cache.haaga-helia.fi:8000)
d) kokeile ssh-asiakasta jossain toisessa käyttöjärjestelmässä

Tietokoneen kokoonpano ja työympäristö:

  • Malli: Fujitsu Lifebook AH532
  • Suoritin: Intel Core i3-2328M 2.2GHz
  • Näytönohjain: Intel HD Graphics 3000
  • Muisti: 4Gb DDR3
  • Käyttöjärjestelmä: Ubuntu 12.04 LTS 64-bit

Asennus:

SSH-palvelimen asennus Linuxille onnistuu erittäin helposti komentokehotteen kautta komennoilla:

sudo apt-get install openssh-server

sudo apt-get install openssh-client

Ubuntussa asentamalla pelkän openssh-serverin, osaa apt hakea siihen myös muut tarvittavat paketit, kunten openssh-clientin.

Uuden käyttäjän luonti Ubuntulle

Uuden käyttäjän luonti onnistuu komentokehotteesta seuraavasti:

sudo adduser test_user

Tämän jälkeen, komentokehote pyytää antamaan käyttäjälle salasanan.

Tämän jälkeen, komentokehote pyytää antamaan käyttäjän nimen ja muuta infoa.
Uusi käyttäjä on luotu, kun kysymyksiin on vastattu.

Luotuani uuden käyttäjän nimeltä test_user, kokeilin kirjautua käyttäjälle, varmistaakseni onnistuiko uuden käyttäjän luominen varmasti.  Tein tämän SSH:n kautta, käyttämällä komentoa:

ssh test_user@localhost
// localhostin sijaan voi myös käyttää ip-osoitetta. Se selviää komentokehotteesta komennolla “ifconfig”

test_user_test

Sain yhteyden käyttäjään, ja nyt pystyn komentokehotteen kautta käyttämään tietokonetta test_userina.

Kirjautumisen automatisointi

Salasanan kirjoittaminen on niin vaivalloista, että täytynee automatisoida tämä prosessi jotenkin.

Yritin tehdä automatisointia helposti komennoilla:
ssh-keygen
ssh-copy-id juho@localhost

Sekä myös samat test_userilla.

Tämä ei kuitenkaan tuottanut tulosta, vaan yrittäessäni logata käyttäjälle, kysyttiin silti salasanaa.

Googlettelun jälkeen löysin ratkaisun ongelmaan. copy-id -komento ei ollutkaan kopioinut avaimia.

Lähdin selvittämään tätä manuaalisesti. /home/juho/.ssh –> authorized_keys

Komennon ssh-keygen jälkeen etsin kansioista “authorized_keys” tiedoston “id_rsa.pub”
ja kopion sen secure copy-komennolla test_userille samaan paikkaan:

       scp id_rsa.pub test_user@localhost:.ssh/authorized_keys

Tämä jälkeen kokeilin ottaa yhteyttä ssh:lla test_useriin. Komentokehote kysyi vieläkin salasanaa. Hetken googlailun jälkeen löysin ratkaisun: Relog.

Reloggasin ja kaikki toimi niin kuin pitikin. Eli, kirjauduin käyttäjältä ulos, jonka jälkeen kirjauduin uudelleen sisään.

Bonustehtävät:

b) Kopioi tiedostoja scp:llä.

Tämä tulikin jo ylhäällä tehtyä.
scp, eli secure copy, onnistuu helposti komennolla “scp”

komennon “scp” jälkeen annetaan kopioitavan tiedoston nimi:
—> scp “esimtiedosto”
Tämän jälkeen annetaan polku käyttäjään ja kansioon, jonen tiedosto halutaan:
—> scp “esimtiedosto” ssh test_user@localhost:.ssh/authorized_keys

Tämä kopioi tiedoston käyttäjältä toiselle.

(Lisää tehtäviä tulolla (a,c.. jne))

Advertisements

One thought on “Kotitehtävä VI: SSH

  1. Pingback: Network Protocol: SSH – Secure Shell Server | jukkaviilo

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

w

Connecting to %s