ssh

SSH-sleutels instellen op Ubuntu 20.04

SSH-sleutels instellen op Ubuntu 20.04
Dit is een walkthrough waarin je leert hoe je SSH-sleutels instelt op Ubuntu 20.04. SSH-sleutels zorgen ervoor dat de veiligheid van uw servers en dat het inloggen van gebruikers de beveiliging niet in gevaar brengt. Het doet dit door het gebruikelijke wachtwoordverificatiesysteem terzijde te maken.

In een notendop, SSH of 'secure shell' is een versleuteld protocol, waarmee je op afstand verbinding kunt maken met een server en toegang hebt tot de bijbehorende informatie. Het biedt een veel veiligere manier van inloggen om een ​​veilige manier van inloggen te bieden zonder concessies te doen aan de veiligheid.

Stap 1: Maak het sleutelpaar

We beginnen met het maken van een sleutelpaar op het systeem van de klant eerst met root-toegang per type in het volgende:

$ ssh-keygen

Dit activeert de nieuwste ssh-keygen om standaard een 3072-bits RSA-sleutelpaar te maken. U kunt de vlag -b 4086 toevoegen om een ​​grotere sleutel te genereren. Druk op enter en het sleutelpaar wordt opgeslagen in .ssh/ submap. Houd er rekening mee dat als u een gast bent op een server waarop al een sleutel is geïnstalleerd, de prompt u zal vragen of u deze wilt overschrijven of niet. Als dat het geval is, typt u 'y' om een ​​ja aan te geven.

Vervolgens wordt u gevraagd of u een wachtwoordzin wilt toevoegen. U kunt zich afmelden, maar we raden u aan er een toe te voegen. Het versterkt het beveiligingsprotocol door een extra beschermingslaag te bieden die een onbevoegde gebruiker kan omzeilen.

Stap 2: Kopieer de openbare sleutel naar uw server

Vervolgens moeten we de openbare sleutel naar uw ubuntu-server overbrengen.

U kunt het hulpprogramma ssh-copy-id gebruiken met de volgende opdracht:

$ ssh-copy-id gebruikersnaam@server_host

Dit zou binnen een paar seconden moeten lukken. Als de sleutel met succes is gekopieerd, gaat u verder met de derde stap:.

Soms gebeurt het zo dat de ssh-copy-id methode faalt, of gewoon niet beschikbaar is. In dit geval moet je het kopiëren via op wachtwoord gebaseerde SSH. Dit kunt u doen door het cat-commando te gebruiken en ervoor te zorgen dat u het >>-symbool toevoegt om aan de inhoud toe te voegen in plaats van het te overschrijven.

$ kat ~/.ssh/id_rsa.kroeg | ssh remote_gebruikersnaam@server_ip_address
"mkdir -p ~/.ssh && kat >> ~/.ssh/authorized_keys"

Als dit de eerste keer is dat u verbinding maakt met een nieuwe host, zal uw systeem u iets laten zien als:

Typ gewoon ja en druk op de Enter-knop. Voer vervolgens het wachtwoord in voor het gebruikerstoegangsaccount en de openbare sleutel wordt gekopieerd naar uw Ubuntu-server.

In het geval dat de op een wachtwoord gebaseerde SSH-toegang u wordt geweigerd om een ​​of andere reden die u niet kunt vastpinnen, kunt u de openbare sleutel altijd gewoon handmatig kopiëren. Voeg de ~/.ssh/authorized_keys  naar de id_rsa.pub-bestand op uw externe computer. Log vervolgens in op uw externe serveraccount en controleer of de ~SSH-directory bestaat. Als dit niet het geval is, typt u in:

$ mkdir -p ~/.ssh

Nu hoef je alleen nog maar de sleutel toe te voegen:

$ echo public_key_string >> ~/.ssh/authorized_keys

$ chmod -R go= ~/.ssh

Zorg er ook voor dat u de ~SSH/ GEBRUIKER directory en NIET de hoofdmap:

$ chown -R younis:younis ~/.ssh

Stap 3: Authenticeer de SSH-sleutels

De volgende stap is om de SSH-sleutels op de Ubuntu-server te verifiëren. Log eerst in op uw externe host:

$ ssh gebruikersnaam@remote_host

U wordt gevraagd de wachtwoordzinsleutel in te voeren die u in stap 2 hebt toegevoegd. Typ het en ga verder. De authenticatie zal enige tijd duren en als het eenmaal is voltooid, wordt u naar een nieuwe interactieve shell op uw Ubuntu-server gebracht

Stap 4: Schakel de wachtwoordverificatie uit

Nu de SSH-sleutels zijn geverifieerd, hebt u het wachtwoordverificatiesysteem niet langer nodig.

Als de wachtwoordverificatie is ingeschakeld op uw server, is deze nog steeds vatbaar voor ongeautoriseerde gebruikerstoegang via brute force-aanvallen. Het zou dus beter zijn als u op wachtwoord gebaseerde authenticatie uitschakelt.

Controleer eerst of u de op SSH-sleutel gebaseerde authenticatie hebt ingesteld voor de wortel account op deze server. Als dit het geval is, moet u dit wijzigen in het sudo-bevoorrechte gebruikerstoegangsaccount op deze server, zodat de beheerderstoegang voor u openstaat in geval van nood of wanneer het systeem wordt geconfronteerd met verdachte activiteiten.

Nadat u beheerdersrechten hebt verleend aan uw account voor externe toegang, logt u in op de externe server met SSH-sleutels met root- of sudo-rechten. Gebruik vervolgens de volgende opdracht om toegang te krijgen tot het configuratiebestand van de SSH-daemon:

$ sudo gedit /etc/ssh/sshd_config

Terwijl het bestand nu is geopend, zoekt u naar de map 'PasswordAuthentication' en typt u het volgende om de wachtwoordverificatie en op wachtwoord gebaseerde SSH-aanmeldingen uit te schakelen.

$/etc/ssh/sshd_config

WachtwoordAuthenticatie nr

Om deze wijzigingen van kracht te zien, moet u de sshd-service opnieuw starten met de volgende opdracht:

$ sudo systemctl herstart ssh

Open uit voorzorg een nieuw terminalvenster en test of de SSH-service correct werkt voordat u uw huidige sessie sluit.

Met uw geverifieerde SSH-sleutels zou u alles normaal moeten kunnen zien werken working. U kunt alle huidige serversessies afsluiten.

Conclusie

Nu je een op SSH-sleutel gebaseerd authenticatiesysteem hebt, heb je het kwetsbare wachtwoordauthenticatiesysteem niet langer nodig, omdat je eenvoudig zonder wachtwoord kunt inloggen. Ik hoop dat je deze tutorial nuttig vond.

Handige hulpmiddelen voor Linux-gamers
Als je graag games op Linux speelt, is de kans groot dat je apps en hulpprogramma's zoals Wine, Lutris en OBS Studio hebt gebruikt om de game-ervaring...
HD Remastered Games voor Linux die nog nooit eerder een Linux-release hebben gehad
Veel game-ontwikkelaars en uitgevers komen met HD-remaster van oude games om de levensduur van franchise te verlengen, fans die compatibiliteit met mo...
Hoe AutoKey te gebruiken om Linux-spellen te automatiseren
AutoKey is een hulpprogramma voor desktopautomatisering voor Linux en X11, geprogrammeerd in Python 3, GTK en Qt. Met behulp van de scripting- en MACR...