Kuinka luoda SSH-avainparit ja kirjautua sisään salasanan käsittömästi

Tämän oppaan avulla opetamme sinun käyttämään SSH-avainpareja turvalliseen salasanan käsittöömättömyyteen perustuvaan kirjautumiseen Internetportin palvelimille. Käsittelemme avainten luomista sekä Windowsissa PuTTYgen- ja ssh-keygen-työkalujen avulla, että Linux- ja macOS-järjestelmissä. Lisäksi opetamme sinun lisäämään julkinen avain palvelimellesi ja poistamaan salasanan käytön lisäturvallisuuden vuoksi.

SSH-avainparien luominen

Windowsissa

Voit luoda SSH-avaimia joko PuTTYgenin (graafisen työkalun) tai ssh-keygenin kautta (Git Bashin tai WSL:n avulla).

PuTTYgenin käyttäminen

  1. Lataa ja asenna PuTTY viralliselta sivulta.
  2. Avaa PuTTYgen, valitse SSH-2 RSA avaimen luontityypiksi ja napsauta "Generate". Liiku hiirtä tyhjällä alueella tarjoaksesi satunnaisuutta avaimen luonnissa.
  3. Syötä salasana (vapaaehtoinen, mutta suositeltava) ja vahvista se. Napsauta "Save public key" ja "Save private key" tallentaaksesi ne tietokoneellesi.

ssh-keygenin käyttäminen Git Bashin tai WSL:n kautta

  1. Avaa Git Bash (Git for Windows -työkalupakettiin kuuluva ohjelma) tai Windows Subsystem for Linux (WSL).
  2. Aja seuraava komento avainparin luomiseksi:
    ssh-keygen -t rsa -b 4096 -C "your_email@example.com"
  3. Paina Enter hyväksyäksesi oletuspolkun tai määrittele toinen polku. Syötä ja vahvista salasana pyynnön yhteydessä.

Linuxissa ja macOS:ssä

  1. Avaa terminaali.
  2. Aja seuraava komento:
    ssh-keygen -t rsa -b 4096 -C "your_email@example.com"
  3. Paina Enter hyväksyäksesi oletuspolkun tai määrittele toinen polku. Syötä ja vahvista salasana pyynnön yhteydessä.

Julkisen avaimen lisääminen palvelimelle

  1. Kopioi julkinen avain leikepöydälle:
    • Windows: Avaa tiedosto Notepadissa ja kopioi sen sisältö.
    • Linux/macOS: Käytä seuraavaa komentoa:
      xclip -sel clip < ~/.ssh/id_rsa.pub
      tai
      pbcopy < ~/.ssh/id_rsa.pub
  2. Kirjaudu palvelimellesi sisään SSH:n ja salasanan avulla.
  3. Luo .ssh-hakemisto, jos sitä ei ole olemassa:
    mkdir -p ~/.ssh
  4. Lisää julkinen avain authorized_keys-tiedostoon:
    echo "your_public_key" >> ~/.ssh/authorized_keys
    Korvaa "your_public_key" leikepöydän sisällön.
  5. Aseta oikeat käyttöoikeudet .ssh-hakemistolle ja authorized_keys-tiedostolle:
    chmod 700 ~/.ssh
    chmod 600 ~/.ssh/authorized_keys

Salasanan käytön poistaminen (vapaaehtoinen, mutta suositeltava)

Turvallisuuden lisäämiseksi voit poistaa salasanan käytön palvelimellesi.

  1. Muokkaa SSH-daemonin määritystiedostoa:
    nano /etc/ssh/sshd_config
  2. Etsi ja muuta seuraavat rivit:
    PasswordAuthentication no
    ChallengeResponseAuthentication no
    UsePAM no
  3. Tallenna tiedosto ja käynnistä SSH-palvelu uudelleen:
    • Debian/Ubuntu:
      sudo systemctl restart sshd
    • CentOS/RHEL:
      sudo systemctl restart sshd

Vianmääritys

  • Permission denied (publickey): Varmista, että julkinen avain on oikein lisätty authorized_keys-tiedostoon ja että käyttöoikeudet ovat määritelty kuten kuvaamme.
  • Server refused our key: Tarkista, että käytät oikeaa yksityistä avainta todennuksen vuoksi. Voit määritellä sen -i valitsimen avulla:
    ssh -i /path/to/private_key user@hostname
  • Connection refused: Tarkista, että SSH on käynnissä palvelimellesi ja että käytät oikeaa isäntänimeä tai IP-osoitetta.

Noudattamalla näitä vaiheita voit turvallisesti kirjautua sisään Internetportin palvelimiin salasanan käsittöömättä, parantamalla sekä käytettävyyttä että turvallisuutta.