Koti » Putty-sovelluksella SSH-avainten luonti ja kirjautuminen palvelimelle

Putty-sovelluksella SSH-avainten luonti ja kirjautuminen palvelimelle

SSH-avaimen avulla SSH-yhteyden voi muodostaa ilman salasanaa, joka on erityisen hyödyllistä scripteissä. Myös SSH-avaimella kirjautuminen on turvallisempaa kuin käyttäjätunnus+salasana yhdistelmää käyttäessä kunhan asettaa yksityiselle avaimeille (private key) salasanan.

SSH-avain muodostuu yksityisestä avaimesta (private key) ja julkisesta avaimesta (public key). Yksityinen avain pidetään omalla työasemalla suojassa eikä sitä koskaan jaeta muiden kesken. Sitä käytetään kun kirjaudutaan SSH-asiakasohjelmalla palvelimelle. Julkinen avain tallennetaan SSH-palvelimelle ja voidaan tallentaa useille palvelimille. Kirjautuessa SSH-asiakasohjelmalla SSH-palvelimelle SSH-asiakasohjelma salaa yksityisellä avaimella yhteyden ja palvelin tarkistaa että salaus täsmää tallennettuun SSH-julkiseen avaimeen.

SSH-avaimen luonti Puttygen-ohjelmalla

SSH-avaimen voi luoda itselle helposti Puttygen-asiakasohjelmalla. Saat sen helposti ladattua täältä. Suosittelen asentamaan MSI-pakettina (putty-0.71-installer.msi), joka sisältää myös Putty-ohjelman jonka tarvitset kun muodostat SSH-etäyhteyden.

Asentamiseen jälkeen avaa Puttygen-ohjelma.

Luo SSH-avain valitsemalla Generate

Valitse avauksen jälkeen Generate -luodessasi uutta avainta. Tämän jälkeen liikuta hiirtä satunnaisesti Puttygen-sovelluksen yllä. Tämä luo sinulle nyt SSH-yksityisen avaimen.

Nyt avain on luotu, mutta älä sulje vielä sovellusta. Syötä Key passphrase ja Confirm passphrase-kenttään salasana yksityiselle avaimelle. Tämä salasana estää sinun SSH-avaimen ulkopuolisen käyttöä mikäli saa tämän käsiin. Tämä salasana tulee muistaa, sillä sitä ei voi nollata, mutta on mahdollista kyllä vaihtaa jälkikäteen.

Tallenna yksityinen avain Save private key -valinnalla ja tallenna tämä hyvään paikkaan talteen. Suosittelen varmuuskopioimaan tämä tiedosto talteen. Sitten tallenna myös julkinen avain Save public key-valinnalla talteen tietokoneellesi. Älä jaa koskaan yksityista avaintasi kenelekkään (.ppk)-tiedostoa. Julkista avainta voit jakaa muille, jotta voit kirjautua Linux-palvelimille.

Julkisen SSH-avaimen tallentaminen palvelimelle

Nyt sinulla on luotuna ja tallennettuna yksityinen ja julkiset SSH-avaimet työasemallesi. Nyt tallennamme julkisen SSH-avaimen palvelimelle, jotta voimme muodostaa siihen etäyhteyden Putty-asiakasohjelmalla (tämän asensit MSI-asennuspaketissa).

Sinun tulee nyt tallentaa julkinen SSH-avain Linux-palvelimen käyttäjäsi hakemistoon ~/.ssh/authorized_keys . Tiedostoon voi lisätä useita SSH-avaimia, jokainen omalle riville.

Suosittelen muodostamaan palvelimelle SSH-yhteys käyttäen käyttäjätunnusta ja salasanaasi.

Avaa nano-sovelluksella authorized_keys tiedosto seuraavalla hakemistolla.

nano ~/.ssh/authorized_keys

Ja tämän jälkeen liittämällä (SSH:ssa klikkaamalla hiiren kaksoispainiketta / oikeaa painiketta) julkinen avain (ssh-rsa -alkuinen) tiedostoon. Mikäli tiedostossa on jo yksi tai useampi SSH-avain, niin liitä oma avain toiselle riville.

Tallenna tiedosto CTRL+O -näppäinyhdistelmällä ja sulje tiedosto CTRL+X-näppäinyhdistelmällä. Sulje SSH-yhteys palvelimelle.

SSH-avaimen käyttö

Nyt sinulla on julkinen SSH-avain tallennettu palvelimelle, joten voit nyt käyttää sitä asiakasohjelmassasi.

Avaa Putty-sovellus.

Tämän jälkjeen siirry kategoria-valikosta Connection -> Auth ja valitse Private key file for authenticator-kohdasta Browse ja etsi tietokoneelta .ppk-tiedostopäätteellä oleva SSH-yksityinen avaimesi.

Tämän jälkeen siirry kategroria-valikosta Session-kohtaan ja syötä Host Name-kohtaan palvelimen IP-osoite tai isäntänimi (hostname) mihin olet yhdistämässä.

Syötä login as-kohtaan käyttäjänimesi ja sitten syötä SSH-yksityisen avaimesi salasana, jonka loit tallentaessasi Puttygenillä.

Nyt kirjautuminen on onnistunut ja voit käyttää palvelinta SSH-avaimellasi.

Mikäli sait virheilmoituksen kirjautuessasi palvelimelle, katso palvelimen /var/log/auth.log -tiedostosta virheilmoitukset läpi. Varmista että .ssh -hakemiston käyttöoikeus on 700 ja authorized_keys tiedostossa on käyttöoikeus 600. Omistajuus tulee olla omalla käyttäjätunnuksella molemmissa hakemistossa että tiedostossa.

Salli palvelimelle kirjautumisen vain SSH-avaimen avulla

Tietoturvasyistä on suositeltavaa sallia Linux-palvelimelle kirjautumisen vain SSH-avaimen avulla etänä. Testaa kuitenkin ensin että pääset SSH-avaimella kirjautumaan palvelimelle.

Voit poistaa käyttäjätunnus + salasana kirjautumisen sshd_config-tiedostosta. Debian-pohjaisilla käyttöjärjestelmistä se löytyy /etc/ssh/sshd_config polusta. Avaa tiedosto esimerkiksi nano-tekstieditorilla.

sudo nano /etc/ssh/sshd_config

Etsi kohta PasswordAuthentication ja muuta se ”no”:ksi.

# Change to no to disable tunnelled clear text passwords
PasswordAuthentication no

Sulje tiedosto ja käynnistä SSH-palvelu uudelleen

sudo service ssh restart

Testaa nyt SSH-yhteys.

Avainsanat:

Kommentoi