Android

Genereer SSH-toetsen op Windows met Puttygen

Setting up SSH Keys on Windows using PuttyGen

Setting up SSH Keys on Windows using PuttyGen

Inhoudsopgave:

Anonim

Secure Shell (SSH) is een cryptografisch netwerkprotocol dat wordt gebruikt voor een veilige verbinding tussen een client en een server en ondersteunt verschillende authenticatiemechanismen.

De twee meest populaire mechanismen zijn op wachtwoorden gebaseerde authenticatie en op publieke sleutels gebaseerde authenticatie. Het gebruik van SSH-sleutels is veiliger en handiger dan traditionele wachtwoordverificatie.

In deze zelfstudie wordt uitgelegd hoe SSH-sleutels op Windows kunnen worden gegenereerd met PuTTYgen. We laten u ook zien hoe u een op SSH-sleutel gebaseerde verificatie instelt en verbinding maakt met uw externe Linux-servers zonder een wachtwoord in te voeren.

PuTTYgen downloaden

PuTTYgen is een open-source hulpprogramma waarmee u SSH-sleutels kunt genereren voor de populairste Windows SSH-client PuTTY.

PuTTYgen is beschikbaar als een zelfstandig uitvoerbaar bestand en maakt ook deel uit van het PuTTY.msi-installatiepakket. Als PuTTYgen niet is geïnstalleerd, gaat u naar de PuTTY-downloadpagina en downloadt u het PuTTY-installatiepakket. De installatie is eenvoudig, dubbelklik op het installatiepakket en volg de instructies.

SSH-sleutels maken met PuTTYgen

Voer de volgende stappen uit om een ​​SSH-sleutelpaar op Windows te genereren met PuTTYgen:

  1. Start de PuTTYgen-tool door te dubbelklikken op het.exe-bestand of naar het Windows Start-menu → PuTTY (64-bit) → PuTTYgen te gaan.

    Voor "Type te genereren sleutel" laat u de standaard RSA staan. Het "Aantal bits in een gegenereerde sleutel", 2048 is voldoende voor de meeste mensen. U kunt het ook wijzigen in 4096.

    Klik op de knop "Genereren" om het genereren van het nieuwe sleutelpaar te starten.

    U wordt gevraagd om uw muis over het lege gebied van de Key-sectie te bewegen om enige willekeur te genereren. Terwijl u de aanwijzer verplaatst, gaat de groene voortgangsbalk vooruit. Het proces duurt enkele seconden.

    Wanneer het generatieproces is voltooid, wordt de openbare sleutel in het venster weergegeven.

    Als u een wachtwoordzin wilt gebruiken, typt u deze in het veld "Sleutelwachtwoord" en bevestigt u dezelfde wachtwoordzin in het veld "Wachtwoord bevestigen". Als u ervoor kiest een wachtwoordzin te gebruiken, krijgt u een extra beveiligingslaag door de privésleutel te beschermen tegen ongeautoriseerd gebruik.

    Sla de privésleutel op door op de knop 'Privésleutel opslaan' te klikken. U kunt het bestand in elke map opslaan met de extensie.ppk (PuTTY Private Key), maar het is raadzaam om het op te slaan op een plaats waar u het gemakkelijk kunt vinden. Het is gebruikelijk om een ​​beschrijvende naam te gebruiken voor het private sleutelbestand.

    Optioneel kunt u ook de openbare sleutel opslaan, hoewel deze later opnieuw kan worden gegenereerd door de persoonlijke sleutel te laden.

    Klik met de rechtermuisknop in het tekstveld met de naam "Openbare sleutel voor plakken in OpenSSH geautoriseerde_sleutelsbestand" en selecteer alle tekens door op "Alles selecteren" te klikken. Open een teksteditor, plak de tekens en sla deze op. Zorg ervoor dat u de hele sleutel plakt. Het is raadzaam om het bestand op te slaan in dezelfde map waar u de privésleutel hebt opgeslagen, met dezelfde naam als de privésleutel en.txt of.pub als bestandsextensie.

    Dit is de sleutel die u aan uw Linux-server wilt toevoegen.

Kopieer de openbare sleutel naar uw Linux-server

Nu u uw SSH-sleutelpaar hebt gegenereerd, is de volgende stap het kopiëren van de openbare sleutel naar de server die u wilt beheren.

Start het PuTTY-programma en log in op uw externe Linux-server.

Als uw gebruikers-SSH-directory niet bestaat, maakt u deze aan met de opdracht mkdir en stelt u de juiste machtigingen in:

mkdir -p ~/.ssh chmod 0700 ~/.ssh

Open uw teksteditor en plak de openbare sleutel die u in stap 4 hebt gekopieerd bij het genereren van het sleutelpaar in het bestand ~/.ssh/authorized_keys :

nano ~/.ssh/authorized_keys

De hele openbare sleuteltekst moet op één regel staan.

Voer de volgende chmod opdracht uit om ervoor te zorgen dat alleen uw gebruiker het bestand ~/.ssh/authorized_keys kan lezen en schrijven:

chmod 0600 ~/.ssh/authorized_keys

Log in op uw server met behulp van SSH-sleutels

Pageant is een PuTTY SSH-authenticatieagent die de privésleutels in het geheugen houdt. Pageant binary is een onderdeel van het PuTTY.msi installatiepakket en kan worden gestart door naar het Windows Start-menu → PuTTY (64-bit) → Pageant te gaan.

Wanneer u Pageant start, wordt een pictogram in het systeemvak geplaatst. Dubbelklik op het pictogram en het Pageant-venster wordt geopend.

Om een ​​sleutel te laden, drukt u op de knop "Sleutel toevoegen" om een ​​nieuw bestandsdialoogvenster te openen. Zoek het bestand met de privésleutel en druk op "Openen". Als u geen wachtwoordzin hebt ingesteld, wordt de sleutel onmiddellijk geladen. Anders wordt u gevraagd de wachtwoordzin in te voeren.

Voer het wachtwoord in en Pageant laadt de privésleutel.

Nadat u de bovenstaande stappen hebt voltooid, moet u zich bij de externe server kunnen aanmelden zonder dat u om een ​​wachtwoord wordt gevraagd.

Om het te testen, opent u een nieuwe PuTTY SSH-sessie en probeert u in te loggen op uw server. PuTTY gebruikt de geladen sleutel en u wordt ingelogd op uw Linux-server zonder het wachtwoord in te voeren.

SSH-wachtwoordverificatie uitschakelen

Om een ​​extra beveiligingslaag aan uw server toe te voegen, kunt u de wachtwoordverificatie voor SSH uitschakelen.

Voordat u SSH-wachtwoordverificatie uitschakelt, moet u ervoor zorgen dat u zich zonder wachtwoord bij uw server kunt aanmelden en dat de gebruiker waarmee u zich aanmeldt sudo-rechten heeft.

Log in op uw externe server en open het SSH-configuratiebestand /etc/ssh/sshd_config met uw teksteditor:

sudo nano /etc/ssh/sshd_config

Zoek naar de volgende richtlijnen en wijzig deze als volgt:

/ Etc / ssh / sshd_config

PasswordAuthentication no ChallengeResponseAuthentication no UsePAM no

Sla het bestand op en start de SSH-service opnieuw door het volgende te typen:

sudo systemctl restart ssh

Op dit moment is de op wachtwoord gebaseerde authenticatie uitgeschakeld.

Conclusie

In deze zelfstudie hebt u geleerd hoe u een nieuw SSH-sleutelpaar kunt genereren en een op SSH-sleutel gebaseerde verificatie kunt instellen. U kunt dezelfde sleutel toevoegen aan meerdere externe servers. We hebben ook laten zien hoe u SSH-wachtwoordverificatie kunt uitschakelen en een extra beveiligingslaag aan uw server kunt toevoegen.

Standaard luistert SSH op poort 22. Het wijzigen van de standaard SSH-poort verkleint het risico op geautomatiseerde aanvallen.

SSH-beveiliging