Een SSH Key gebruiken op je Cloud Server

Een SSH Key genereren voor de Reviced Cloud VPS (MAC / Linux / Windows)

ssh key

Het gebruik van een SSH Key op je VPS is een veiliger manier om in te loggen, dan het gebruik van enkel een wachtwoord. Een wachtwoord zou in theorie sneller zijn te kraken via een zogenaamde Brute Force. SSH Keys zijn bijna niet te kraken met alleen een Brute Force metode en daardoor ben je al een stuk minder interessant voor hacker en crackers.

SSH Keys

Hackers houden er over het algemeen niet van teveel moeite te moeten doen om ergens toegang te krijgen.

Het genereren van een SSH Key levert je twee strings op: een public key en een private key. Je kunt de public key op je VPS plaatsen en zo toegang krijgen, zonder het gebruik van een wachtwoord. Zaak is dan wel dat je de VPS benaderd via een systeem waar je private key op staat.

Je kunt eventueel nog een extra beveiliging instellen door een wachtwoord op je private key in te stellen.

Creƫer je RSA Key Pair

De eerste stap welke je moet nemen is het genereren van een key pair op je client computer.

mkdir -p ~/.ssh
            cd .ssh
            ssh-keygen
            

Sla je Keys en wachtwoord op

Nadat je het Key-Gen commando hebt uitgevoerd, zie je meer opties

Enter file in which to save the key (/home/reviced/.ssh/id_rsa):

Je kunt op Enter drukken om je file op te slaan (in ons geval wordt de key opgeslagen in /home/reviced/.ssh/id_rsa) Kies er nu voor om een wachtwoord te gebruiken of niet:

Enter passphrase (empty for no passphrase):

Je kunt er voor kiezen om geen wachtwoord te gebruiken, echter is het gebruik van een wachtwoord wel een stuk veiliger. Mocht de key ooit in verkeerde handen komen, dienen ze nog altijd het wachtwoord te achterhalen voordat ze de key kunnen gebruiken / misbruiken.

Het genereren ziet er zo uit:

ssh-keygen -t rsa
            Generating public/private rsa key pair.
            Enter file in which to save the key (/home/reviced/.ssh/id_rsa):
            Enter passphrase (empty for no passphrase):
            Enter same passphrase again:
            Your identification has been saved in /home/reviced/.ssh/id_rsa.
            Your public key has been saved in /home/reviced/.ssh/id_rsa.pub.
            The key fingerprint is:
            5a:aa:0b:b4:26:3e:3c:ad:35:38:8c:74:44:4d:93:67 reviced@a
            The key's randomart image is:
            +--[ RSA 2048]----+
            |          .oo.   |
            |         .  o.A  |
            |        - .  o   |
            |     . = = .     |
            |      = F = .    |
            |     o + = +     |
            |      . o + o .  |
            |           . o   |
            |                 |
            +-----------------+

Kopieer de Public Key

Zodra de public key is gegenereerd, kun je deze kopieren naar je VPS Je dient de public key te kopieren naar de authorized_keys file van je VPS met het ssh-copy commando.

ssh-copy-id USERNAME@111.222.222.111

Vergeet niet de user en het ip adres te wijzigen naar je eigen gebruikersnaam en VPS naam of ip adres!

Je kunt ook het volgende commando gebruiken:

cat ~/.ssh/id_rsa.pub | ssh reviced@111.222.111.222 "mkdir -p ~/.ssh && cat >>  ~/.ssh/authorized_keys"

Als alles goed is gegaan, ziet het er zo uit:

The authenticity of host '111.222.111.222 (111.222.111.222)' can't be established.
            RSA key fingerprint is 5a:aa:0b:b4:26:3e:3c:ad:35:38:8c:74:44:4d:93:67.
            Are you sure you want to continue connecting (yes/no)? yes
            Warning: Permanently added '111.222.111.222' (RSA) to the list of known hosts.
            reviced@111.222.111.222's password:
            Now try logging into the machine, with "ssh 'reviced@111.222.111.222'", and check in:
              ~/.ssh/authorized_keys

Je kunt nu inloggen op je VPS zonder het gebruik van een wachtwoord (tenzij je het wachtwoord voor je key hebt ingesteld) Hieronder een filmpje hoe je een SSH key genereert op een Mac of Linux computer.

Een SSH Key genereren op Windows

Een SSH key op windows genereren gaat iets anders, omdat je hier een apart programma voor nodig hebt. Om een SSH key te kunnen genereren op Windows heb je PuttyGen nodig (download hier: PuttyGen) Zie onderstaand filmpje voor de werking van PuttyGen (let op: sla beide keys op in een aparte file)

Let Op! Geef NOOIT je private key aan derden.