Hoe Github-toegang te beveiligen met een SSH-sleutel

Hoe Github-toegang te beveiligen met een SSH-sleutel
Een foto van de Github-mascotte voor de Github-webpagina.

Het koppelen van een SSH-sleutel aan Github is een van de belangrijkste stappen bij het beveiligen van uw account. Hiermee kun je de kracht van public-key cryptografie benutten om je Git-repository’s te beschermen. Dit artikel laat zien wat SSH-sleutels zijn en hoe je ze kunt gebruiken om je Github-account te versterken.

Wat zijn SSH-sleutels?

In wezen zijn SSH-sleutels openbare sleutels die u op een externe server opslaat. Deze fungeren als een authenticatieproxy waarmee u verbinding kunt maken en kunt communiceren met machines zonder dat u een gebruikersnaam en wachtwoord hoeft op te geven.

Een terminal met een voorbeeld van een openbare SSH-sleutel.

De manier waarop het werkt is dat wanneer u via SSH verbinding maakt met een machine, uw lokale computer een bericht verzendt dat is ondertekend met uw persoonlijke SSH-sleutel. De externe machine gebruikt vervolgens uw openbare SSH-sleutel om de authenticiteit van het bericht te verifiëren en u in te loggen.

Github gebruikt dezelfde aanpak om uw identiteit op zijn servers te verifiëren. De website gebruikt uw openbare sleutel wanneer u uw repository uploadt en wijzigt. Dit zorgt ervoor dat u uw Github-referenties niet openbaar maakt wanneer u commits pusht.

SSH-sleutels genereren voor Github

Open om te beginnen een nieuwe terminalsessie met behulp van de applicatiestarter van uw distro.

Zorg ervoor dat u OpenSSH op uw machine hebt geïnstalleerd en dat de SSH-agent-daemon momenteel actief is:

Voer de volgende opdracht uit om de wizard SSH-sleutel genereren te starten:

De wizard vraagt ​​u vervolgens of u een aangepaste SSH-sleutelbestandsnaam voor uw sleutel wilt gebruiken. Druk op Enter om de standaardnaam en locatie te accepteren.

Een terminal die de prompt voor de bestandslocatie voor een nieuwe SSH-sleutel toont.

Typ een wachtwoord voor uw nieuwe SSH-sleutel. Dit zal dienen als de wachtwoordzin van uw lokale machine wanneer deze verbinding maakt met uw Github-account.

Een terminal die de wachtwoordprompt voor een nieuwe SSH-sleutel toont.

Voeg uw nieuw gegenereerde SSH-sleutel toe aan uw momenteel actieve SSH-agent:

SSH-sleutels toevoegen aan Github

Nu uw nieuwe SSH-sleutel actief is, kunt u nu uw lokale machine aan uw Github-account koppelen. Voer om te beginnen de volgende opdracht uit om uw openbare SSH-sleutel af te drukken:

Markeer uw openbare SSH-sleutel, druk op de rechtermuisknop en selecteer vervolgens ‘Kopiëren’.

Een terminal die de optie Kopiëren toont in de contextmenuprompt.

Open een nieuwe browsersessie en navigeer vervolgens naar uw Github-startpagina.

Klik op uw profielpictogram in de rechterbovenhoek van de pagina.

Een screenshot van de standaard Github-startpagina.

Klik op “Instellingen” in de vervolgkeuzelijst.

Een screenshot waarin de optie Instellingen in het Github-profielmenu wordt gemarkeerd.

Selecteer ‘SSH- en GPG-sleutels’ in de linkerzijbalk van de instellingenpagina.

Een screenshot waarin de optie SSH- en GPG-sleutels in het Github-instellingenmenu wordt gemarkeerd.

Klik op de knop ‘Nieuwe SSH-sleutel’ naast de kop ‘SSH-sleutels’.

Een screenshot waarin de knop Nieuwe SSH-sleutel op de pagina SSH- en GPG-sleutels wordt gemarkeerd.

Selecteer het tekstvak ‘Titel’ en geef een naam op voor uw sleutel.

Klik op het tekstvak ‘Sleutel’ en druk vervolgens op Ctrl + V om uw SSH-sleutel te plakken.

Klik op “SSH-sleutel toevoegen” om uw nieuwe instellingen vast te leggen.

Beveiligde Github-toegang Ssh Key 09 Voeg Ssh Key-knop toe

Open een nieuwe terminalsessie en voer de volgende opdracht uit:

Typ “ja” en druk vervolgens op Enter.

Een terminal die de prompt voor het vertrouwen van de SSH-vingerafdruk markeert.

Als u dat doet, wordt er een nieuwe SSH-sessie gestart naar een van de ontvangende servers van Github. Als uw sleutel correct werkt, wordt er een kort bericht afgedrukt waarin uw SSH-verbinding wordt bevestigd.

Een terminal die het korte bevestigingsbericht van Github benadrukt.

SSH-sleutels beheren

Hoewel een enkele SSH-sleutel voor de meeste gebruikers voldoende is, zijn er gevallen waarin u een Git-repository moet synchroniseren die op meerdere machines wordt gehost. Om dit te doen, moet u machinespecifieke SSH-sleutels importeren.

Open een nieuwe terminalsessie op de computer die u aan Github wilt koppelen.

Zorg ervoor dat de OpenSSH-daemon zowel op het systeem is geïnstalleerd als actief is:

Voer de volgende opdracht uit om een ​​aparte SSH-sleutel voor uw nieuwe machine te maken:

Typ een veilige wachtwoordzin voor uw nieuwe SSH-sleutel en druk vervolgens op Enter.

Voeg uw nieuwe alternatieve sleutel toe aan uw SSH-agent:

Druk de inhoud van uw openbare SSH-sleutel af en kopieer deze vervolgens naar het klembord van uw systeem:

Ga terug naar de pagina “SSH- en GPG-sleutels” van uw Github-account.

Klik nogmaals op de knop ‘Nieuwe SSH-sleutel’.

Geef een uniek label op voor uw nieuwe sleutel en plak vervolgens de inhoud van uw klembord onder het tekstvak ‘Sleutel’.

Een screenshot van een nieuwe alternatieve sleutel in Github.

Klik op “SSH-sleutel toevoegen” om uw nieuwe instellingen toe te passen.

Test of uw nieuwe machine uw beveiligde sleutel gebruikt om verbinding te maken met Github door in te loggen via SSH:

Naast het verzenden van nieuw gegenereerde sleutels naar Github, kunt u ook bestaande SSH-sleutels wijzigen die u al in uw machine heeft. Dit kan handig zijn als u al SSH-sleutels gebruikt als wachtwoordloze login in Linux.

Om een ​​bestaande sleutel te wijzigen, navigeert u naar de map “.ssh” van uw machine:

Voer ssh-keygen uit met de vlaggen -p, -o en -f samen met je SSH-sleutel. Hiermee kunt u het wachtwoord van een bestaande privésleutel wijzigen:

Je kunt het ingebedde e-mailadres in je publieke sleutel ook wijzigen door de vlag -c te gebruiken:

Laad uw SSH-agent opnieuw met uw nieuw bijgewerkte sleutel:

Vervang de overeenkomstige openbare SSH-sleutel uit uw Github-profiel.

Een screenshot van de nieuw gewijzigde SSH-sleutel in Github.

SSH-sleutels verwijderen van Github

Open een nieuwe terminalsessie en start vervolgens de SSH-agentdaemon:

Voer de volgende opdracht uit om de persoonlijke SSH-sleutel in uw machine te verwijderen:

Ga terug naar de categorie “SSH- en GPG-sleutels” van uw Github-account.

Blader door de lijst met SSH-sleutels op deze pagina en klik vervolgens op ‘Verwijderen’ op de sleutel die u wilt verwijderen.

Een screenshot waarin de knop Verwijderen voor de nieuw gewijzigde SSH-sleutel wordt gemarkeerd.

Klik op ‘Ik begrijp het, verwijder deze SSH-sleutel’.

Een screenshot waarin de laatste bevestigingsvraag voor het verwijderen van een SSH-sleutel wordt gemarkeerd.

Zorg ervoor dat uw oude SSH-sleutel nu niet meer bestaat door een SSH-sessie te starten op een van de servers van Github:

Het koppelen van een SSH-sleutel om uw Github-account te beveiligen is slechts de eerste stap om te begrijpen hoe cryptografie en encryptie met publieke sleutels werken. Leer meer over versleuteling van gegevens in rust door een gecodeerde cloudback-up te maken met Rclone.

Ondertussen kun je ook meer leren over automatisch repositorybeheer door Git-hooks te gebruiken.

Afbeelding: Roman Synkevych via Unsplash. Alle wijzigingen en screenshots door Ramces Red.

Geef een reactie

Je e-mailadres wordt niet gepubliceerd. Vereiste velden zijn gemarkeerd met *