Så här konfigurerar du SSH -nycklar på Ubuntu 20.04

How Set Up Ssh Keys Ubuntu 20



Detta är en genomgång där du lär dig hur du konfigurerar SSH -nycklar på Ubuntu 20.04. SSH -nycklar säkerställer att säkerheten för dina servrar och att processen med användare som loggar in på det inte äventyrar dess säkerhet. Det gör det genom att göra det vanliga lösenordsautentiseringssystemet åt sidan.

I ett nötskal är SSH eller 'säkert skal' ett krypterat protokoll, med vilket du kan ansluta till en server på distans och få åtkomst till den information som är associerad med den. Det ger ett mycket säkrare sätt att logga in för att tillhandahålla ett säkert sätt att logga in utan att kompromissa med säkerheten.







Steg 1: Skapa nyckelparet

Vi börjar med att skapa ett nyckelpar på klientens system först med rotåtkomst efter typ i följande:



$ssh-keygen



Detta utlöser den senaste ssh-keygen till att skapa ett 3072-bitars RSA-nyckelpar som standard. Du kan lägga till –b 4086 -flaggan för att generera en större nyckel. Tryck på enter, så lagras nyckelparet i .ssh/ underkatalogen. Observera att om du är gäst på en server som redan hade en nyckel installerad frågar prompten dig om du vill skriva över den eller inte. Om så är fallet skriver du 'y' för att signalera ett ja.





Därefter frågar prompten dig om du vill lägga till en lösenfras. Du kan välja bort, men vi rekommenderar att du lägger till en. Det stärker säkerhetsprotokollet genom att betjäna ett ytterligare skyddslager för att kringgå för en obehörig användare.

Steg 2: Kopiera den offentliga nyckeln till din server

Därefter måste vi överföra den offentliga nyckeln till din ubuntu -server.



Du kan använda verktyget ssh-copy-id genom att använda följande kommando:

$ssh-copy-id användarnamn@server_host

Detta bör göra susen inom bara några sekunder. Om nyckeln har kopierats framgångsrikt, gå vidare till det tredje steget.

Ibland händer det så att ssh-copy-id-metoden misslyckas eller helt enkelt inte är tillgänglig. I det här fallet måste du kopiera det via lösenordsbaserad SSH. Detta kan du göra genom att använda cat -kommandot och se till att du lägger till symbolen >> för att lägga till innehållet istället för att skriva över det.

$katt~/.ssh/id_rsa.pub| sshfjärranvändarnamn@server IP adress
'mkdir -p ~/.ssh && cat >> ~/.ssh/Author_keys'

Om det här är första gången du ansluter till en ny värd kommer ditt system att visa dig något liknande:

Skriv bara ja och tryck på Enter -knappen. Ange sedan lösenordet för användaråtkomstkontot, och den offentliga nyckeln kopieras till din Ubuntu -server.

Om den lösenordsbaserade SSH-åtkomsten nekas till dig av någon anledning du inte kan sätta fast, kan du alltid bara kopiera den offentliga nyckeln manuellt. Lägg till ~/.ssh/Author_keys till filen id_rsa.pub på din fjärrmaskin. Logga sedan in på ditt fjärrserverkonto och kontrollera om ~ SSH -katalogen finns. Om det inte gör det skriver du in:

$mkdir -s~/.ssh

Nu måste du bara lägga till nyckeln:

$kastade utpublic_key_string>>~/.ssh/autoriserade_nycklar

$chmod -R = ~/.ssh

Se också till att du använder ~ SSH/ ANVÄNDARE katalog och INTE rotkatalogen:

$chown -Ryounis: younis ~/.ssh

Steg 3: Verifiera SSH -nycklarna

Nästa steg är att autentisera SSH -nycklarna på Ubuntu -servern. Logga först in på din fjärrvärd:

$sshAnvändarnamn@remote_host

Du uppmanas att ange nyckelordet som du lade till i steg 2. Skriv ner det och fortsätt. Autentiseringen tar lite tid, och när det är klart kommer du till ett nytt interaktivt skal på din Ubuntu -server

Steg 4: Inaktivera lösenordsautentisering

Med SSH -nycklarna autentiserade behöver du inte längre lösenordsautentiseringssystemet.

Om lösenordsautentisering är aktiverad på din server är det fortfarande benäget för obehörig användaråtkomst via brute force -attacker. Så det vore bättre om du inaktiverar någon lösenordsbaserad autentisering.

Kontrollera först om du har SSH-nyckelbaserad autentisering grundad för rot konto på den här servern. Om så är fallet bör du ändra det till det sudo -privilegierade användaråtkomstkontot på den här servern, så att administratörsåtkomsten är öppen för dig i händelse av en nödsituation eller när systemet står inför vissa misstänkta aktiviteter.

Efter att ha beviljat administratörsbehörighet till ditt fjärråtkomstkonto loggar du in på fjärrservern med SSH -nycklar med antingen root- eller sudo -privilegier. Använd sedan följande kommando för att komma åt SSH -demonens konfigurationsfil:

$sudogedit/etc/ssh/sshd_config

Med filen öppen nu söker du efter 'PasswordAuthentication' -katalogen och skriver in följande för att inaktivera lösenordsautentisering och lösenordsbaserade SSH-inloggningar.

$/etc/ssh/sshd_config
. . .
PasswordAuthentication no
. . .

För att se dessa ändringar i kraft måste du starta om sshd -tjänsten med följande kommando:

$sudosystemctl starta omssh

Som en försiktighetsåtgärd, öppna ett nytt terminalfönster och testa att SSH -tjänsten fungerar korrekt innan du stänger din nuvarande session.

Med dina verifierade SSH -nycklar borde du kunna se att allt fungerar som vanligt. Du kan avsluta alla nuvarande serversessioner.

Slutsats

Nu när du har ett SSH-nyckelbaserat autentiseringssystem på plats behöver du inte längre det sårbara lösenordsautentiseringssystemet, eftersom du helt enkelt kan logga in utan ett lösenord. Jag hoppas att du har funnit den här självstudien till hjälp.