Så här använder du kommandot ssh-copy-id

How Use Ssh Copy Id Command



Kommandot ssh-copy-id är ett enkelt verktyg som låter dig installera en SSH-nyckel på en fjärrservers auktoriserade nycklar. Detta kommando underlättar SSH-nyckelinloggning, vilket tar bort behovet av ett lösenord för varje inloggning, vilket säkerställer en automatisk inloggningsprocess utan lösenord. Kommandot ssh-copy-id är en del av OpenSSH, ett verktyg för att utföra fjärrsystemadministrationer med krypterade SSH-anslutningar.

Den här artikeln visar hur du använder verktyget ssh-copy-id för att göra dina SSH-inloggningar mer sömlösa och säkra.







Så här installerar du kommandot ssh-copy-id

Verktyget ssh-copy-id, en del av OpenSSH-paketet, är tillgängligt i alla större Linux-distributionsförråd, och du kan använda din pakethanterare för att installera det här kommandot.



För att installera ssh-copy-id-verktyget på Debian, använd följande kommando:



sudo apt-get uppdatering && sudo apt-get installopenssh-klient

När du har installerat OpenSSH kan du använda verktyget ssh-copy-id på kommandoraden.





$ ssh-copy-id

Användande:/usr/am/ssh-copy-id[-h|-?|-f|-n] [-i[identitetsfil]] [-p -port] [[-eller<ssh -elleralternativ>]...] [användare@]värdnamn-f: kraftläge-kopiera nycklar utan att försöka kontrolleraomde är redan installerade -n: torrkörning-inga nycklar kopieras faktiskt-h|-?: Skriv ut det härhjälp

Att använda ssh-copy-id är enkelt eftersom skriptet gör verifieringsprocessen för allmänna nycklar enklare och mer effektiv. Innan vi går in på hur du använder verktyget, kommer vi först att diskutera hur SSH -autentisering med offentlig nyckel fungerar.

NOTERA : Om du redan vet hur SSH-autentisering av allmänna nycklar fungerar, hoppa gärna över den här delen och dyk djupare in i hur du använder kommandot ssh-copy-id direkt.



SSH Public Key Authentication

Offentlig SSH -nyckelautentisering är en SSH -autentiseringsmetod som tillåter användare att använda kryptografiskt genererade nycklar för att logga in på fjärrservrar.

SSH -nycklar är säkrare än råa lösenord och ger ett mycket effektivare sätt att logga in på SSH. SSH -nycklar är automatiserade, och när de har godkänts krävs inget lösenord vid varje inloggning.

För att använda en SSH -nyckel börjar vi med att generera en nyckel.

Hur man skapar en SSH -nyckel

För att skapa en SSH-nyckel, använd ssh-keygen-verktyget som ingår i OpenSSH. Detta verktyg genererar offentliga och privata nyckelfiler som lagras i ~/.ssh -katalogen, som visas nedan.

$ssh-keygen

Genererande allmänhet/privat rsa -nyckelpar.
Stiga påfil i somför att spara nyckeln(/rot/.ssh/id_rsa):
Skapad katalog'/root /.ssh'.
Ange lösenfras(tömmaföringen lösenfras):
Ange samma lösenfras igen:
Din identifikation har sparatsi /rot/.ssh/id_rsa.
Din offentliga nyckel har sparatsi /rot/.ssh/id_rsa.pub.
Nyckelfingeravtrycket är:
SHA256: ddVOQhS6CGt8Vnertz9aiSnvOUKmSpPrZ+gI24DptsA root@användare Nyckeln's randomart -bild är:
+--- [RSA 2048] ----+
| o = o |
| o. o |
| . . +. +. |
| . + + o .o |
| S +. . |
|. o ..o o +. |
| .Och +. +. + + |
| o. = o.o+ .o.+ .. |
| .o .. oo =+ o = o.+ |
+---- [SHA256] -----+

Hur man kopierar SSH-nyckel med SSH-copy-id

När vi har genererat en SSH-nyckel kan vi manuellt lägga till SSH-nyckeln i filen remote_key för fjärrmaskinen eller använda kommandot ssh-copy-id.

Vi kommer att använda kommandot ssh-copy-id för att göra denna process enklare. Ring bara kommandot ssh-copy-id och skicka sökvägen till den offentliga nyckeln enligt följande:

$ssh-copy-id-i~/.ssh/id_rsa.pub -användare@77.134.54.101-s 6576

Efter att ha matat in kommandot ovan bör du få följande utdata:

/usr/am/ssh-copy-id: INFO: Nyckelkälla(s)att bli installerad:'/root/.ssh/id_rsa.pub'
/usr/am/ssh-copy-id: INFO: försöker loggaimed den nya nyckeln(s), för att filtrera bort alla som redan är installerade
/usr/am/ssh-copy-id: INFO:1nyckel-(s)återstår att installera- omdu uppmanas nu att göra detInstalleraden nya nyckelanvändaren@77.134.54.101 lösenord:
Antal nycklar(s)Lagt till:1Försök nu att logga in på maskinen med:'ssh -p' 6576 '' [e -postskyddad] ''och kolla tillgörasäker på att bara nyckeln(s)du ville ha lagts till.

NOTERA : Kopiera aldrig din privata nyckel till en annan maskin.

När kommandot har körts framgångsrikt, försök att logga in på servern med nyckeln som du laddade upp, enligt följande:

$ssh -s 6576linkfy@77.134.54.101

Kommandot ovan kräver att du anger lösenfrasen för din offentliga nyckel, som visas i utdata nedan:

Ange lösenfrasförnyckel-'/root/.ssh/id_rsa':
Senaste inloggning: fre mar5 14: 06:16 2021från 173.208.98.186

Kommandot ovan bör låta dig logga in på fjärrvärden utan att be om användarens lösenord. Systemet kan uppmana dig att ange lösenfrasen för nyckeln som du ställde in tidigare.

SSH-copy-id Kommandealternativ

Du kan ändra hur kommandot ssh-copy-id fungerar med hjälp av de angivna argumenten. Om du vill visa hjälpsidan använder du kommandot ssh-copy-id -h eller använder kommandot ssh-copy-id utan argument.

  1. -jag argument : Detta argument anger den identitetsfil som ska användas, dvs. kopieras till den angivna fjärrvärden. Om du inte anger -i -argumentet kommer alla filer i katalogen ~/.ssh med matchande mönster *.pub att läggas till.
  2. -f flagga : Denna flagga möjliggör tvångsläge, som inte kontrollerar om nyckeln är förkonfigurerad i autoriserade_nycklar på servern. Flaggan -f lägger till en nyckel, vilket ofta resulterar i flera kopior av samma nyckel installerad på servern.
  3. -p flagga : Den här flaggan anger SSH -porten för anslutning till fjärrvärden. Denna flagga används när standard SSH -port inte används.
  4. -n flagga : Denna flagga utför en torrkörning som skriver ut nycklarna som är avsedda för installation utan att installera dem på fjärrvärden.

Slutsats

Den här guiden visade dig hur du använder kommandot ssh-copy-id för att installera SSH-nycklar på fjärrvärdar. Även om detta kan vara en enkel och effektiv metod för att installera nycklar, kan felkonfigurerade nycklar resultera i säkerhetsproblem eller låsas ur systemet. Var därför extremt försiktig när du experimenterar med denna process.