Archive

Posts Tagged ‘palvelin’

DL w7 – Kurssitehtävä 5 – OpenSSH et al.

Tehtävänä oli automatisoida etäkirjautuminen koulun myy-palvelimelle Ubuntulla, asentaa OpenSSH-palvelin, luoda sille uusi käyttäjä ja testatata sitä. Lisäksi lokiin (auth.log) tuli aiheuttaa seuraavat tapahtumat ja etsiä niitä vastaavat lokirivit: onnistunut kirjautuminen ssh:lla, epäonnistunut kirjautuminen ssh:lla ja onnistunut kirjautuminen käyttäen julkista avainta tunnistautumiseen. Suoritus- ja testausympäristö.

Myy-palvelimelle kirjautumisen automatisoiminen
Aluksi syötin komentoriville komennon $ ssh-keygen -t rsa, joka teki käyttäjätunnukselleni SSH-avainparin (public & private). Tätä tehtäessä piti valita avainten sijainti Ubuntussa – valitakseni oletussijainnin painoin enteriä. Myös avainlauseen saattoi valita – jätin sen tällä kertaa tyhjäksi testauksen helpottamiseksi  painamalla kaksi kertaa enteriä.

Seuraavaksi käytin ssh-copy-id-toimintoa kopioimaan julkisen (public) avaimen palvelimelle, johon yhteys oli tarkoitus ottaa. Syötin komentorivillä komennon $ ssh-copy-id tunnus@myy.haaga-helia.fi, jonka jälkeen hyväksyin palvelimen tunnisteen ja syötin salasanani. Tämä onnistui ja sain komentorivillä kehotuksen kirjautua seuraavaksi palvelimelle ja tarkastaa sijainti ~/.ssh/authorized_keys sen varalta, että siellä olisi ylimääräisiä avaimia.

Kirjauduin myy-palvelimelle sisään komennolla $ ssh tunnus@myy.haaga-helia.fi. Kirjautuminen onnistui suoraan ilman salasanan syöttöä eli automatisaatio toimi. Poistuin palvelimelta komennolla $ exit.

OpenSSH-palvelimen asentaminen
Asensin OpenSSH-palvelimen komentoriviltä komennolla $ sudo apt-get install openssh-server.

Uuden käyttäjän luominen ja testaaminen
Loin uuden SSH-käyttäjätilin komentorivillä komennolla $ sudo adduser umbra (käyttäjänimi viimeisenä). Tämän jälkeen lisäsin kysyttäessä käyttäjälle turvallisen salasanan, jonka kirjoitin muistiin paperille. Tämä piti vielä varmentaa syöttämällä salasana uudestaan. Testasin uuden käyttäjän toimivuuden kirjautumalla koneelleni sillä ssh:n kautta komennolla $ ssh umbra@ip-osoite ja antamalla kysyttäessä salasanan, jonka olin aikaisemmin määrittänyt tälle käyttäjälle. Kirjautuminen onnistui ja käyttäjänimi vaihtui komentorivillä. Poistuin komennolla $ exit, jonka jälkeen komentorivillä näkyi taas varsinainen käyttäjänimeni vahvistuksena siitä, että olin kirjautunut ulos uudelta käyttäjätililtä.

Lokin tapahtumarivit
/var/log/auth.log

Feb 12 22:56:46 [koneen-nimi] sshd[17976]: Failed password for jvaris from [ip-osoite] port 33650 ssh2

Yllä epäonnistunut kirjautuminen SSH:lla. Rivillä vasemmalta oikealle luettaessa: päivämäärä ja kellonaika (paikallista aikaa), palvelimen nimi, SSH Daemon (kuuntelee käyttäjien yhteydenottoja),  viesti kirjautumisen epäonnistumisesta salasanan puuttumisen takia, käyttäjän ip-osoite ja ephemeral port eli lyhytaikainen portti, jota käytetään asiakas-palvelin yhteydessä asiakkaan päässä otettaessa yhteyttä hyvin tunnettuun porttiin palvelimella (SSH käyttää porttia 22). Viimeisenä on SSH-protokollan versionumero.

Feb 12 22:58:39 [koneen-nimi] sshd[17983]: Accepted password for jvaris from [ip-osoite] port 33651 ssh2
Feb 12 22:58:39 [koneen-nimi] sshd[17983]: pam_unix(sshd:session): session opened for user jvaris by (uid=0)

Yllä onnistunut kirjautuminen SSH:lla. Ensimmäisellä rivillä vasemmalta oikealle luettaessa: päivämäärä ja kellonaika (paikallista aikaa), palvelimen nimi, SSH Daemon (kuuntelee käyttäjien yhteydenottoja),  viesti kirjautumisen onnistumisesta salasanalla, käyttäjän ip-osoite ja ephemeral port eli lyhytaikainen portti, jota käytetään asiakas-palvelin yhteydessä asiakkaan päässä otettaessa yhteyttä hyvin tunnettuun porttiin palvelimella (SSH käyttää porttia 22). Viimeisenä on SSH-protokollan versionumero.

Toisella rivillä rivillä vasemmalta oikealle luettaessa: päivämäärä ja kellonaika (paikallista aikaa), palvelimen nimi, SSH Daemon (kuuntelee käyttäjien yhteydenottoja), pam_unix-todennusmoduuli tälle istunnolle (hakee järjestelmästä käyttäjätilin tietoja / todennuksen) ja viesti istunnon avaamisesta käyttäjälle. Viimeisenä oleva merkintä uid=0 viittaa siihen, että käyttäjätunnus on hetkellisesti nolla kun istuntua avataan ja käyttäjä vaihtuu.

Feb 12 23:02:31 [koneen-nimi] sshd[18414]: Accepted publickey for jvaris from [ip-osoite] port 33653 ssh2
Feb 12 23:02:31 [koneen-nimi] sshd[18414]: pam_unix(sshd:session): session opened for user jvaris by (uid=0)

Yllä onnistunut kirjautuminen julkista avainta käytettäessä. Ensimmäisellä rivillä vasemmalta oikealle luettaessa: päivämäärä ja kellonaika (paikallista aikaa), palvelimen nimi, SSH Daemon (kuuntelee käyttäjien yhteydenottoja),  viesti kirjautumisen onnistumisesta julkisella avaimella, käyttäjän ip-osoite ja ephemeral port eli lyhytaikainen portti, jota käytetään asiakas-palvelin yhteydessä asiakkaan päässä otettaessa yhteyttä hyvin tunnettuun porttiin palvelimella (SSH käyttää porttia 22). Viimeisenä on SSH-protokollan versionumero.

Toisella rivillä rivillä vasemmalta oikealle luettaessa: päivämäärä ja kellonaika (paikallista aikaa), palvelimen nimi, SSH Daemon (kuuntelee käyttäjien yhteydenottoja), pam_unix-todennusmoduuli tälle istunnolle (hakee järjestelmästä käyttäjätilin tietoja / todennuksen) ja viesti istunnon avaamisesta käyttäjälle. Viimeisenä oleva merkintä uid=0 viittaa siihen, että käyttäjätunnus on hetkellisesti nolla kun istuntua avataan ja käyttäjä vaihtuu.

Kaikki kolme tapahtumaa löytyivät oletuksen mukaisesti lokin lopusta komennolla $ tail -f auth.log sen jälkeen kun olin käyttänyt $ cd /var/log/ komentoa navigoidakseni lokin sisältävään hakemistoon.

Lähteet
Karvinen, Tero: Oppitunnit 2012-02-08, Työasemat ja tietoverkot-kurssi (http://terokarvinen.com/2012/aikataulu-tyoasemat-ja-tietoverkot-ict1tn002-25-kevat-2012)

About
Tätä dokumenttia saa kopioida ja muokata GNU General Public License (versio 2 tai uudempi) mukaisesti. http://www.gnu.org/licenses/gpl.html
Pohjana Tero Karvisen Linux-kurssi, http://www.iki.fi/karvinen