automatisk adgangskodefri SSH-login kan gøre vores liv lettere. For at aktivere dette har vi 2 muligheder: brug af nøglebaseret godkendelse ved at kopiere vores offentlige SSH-nøgler til fjernmaskinerne til automatisk adgangskodefri login eller brug af adgangskodebaseret godkendelse. Jeg vil introducere 2 muligheder i posten. Før du starter, skal du være opmærksom på, at nøglebaseret godkendelse generelt foreslås, når dit arbejdsmiljø tillader det.,
Indholdsfortegnelse
Vi indføre to metoder i dette indlæg: ssh-copy-id kommando og den manuelle måde.
Generer SSH-nøglepar
Hvis du ikke har et SSH-privat / offentligt nøglepar endnu, kan du generere et først.
$ ssh-keygen -t rsa
Som standard på Linux, nøglepar er gemt i ~/.ssh
opkaldt id_rsa
og id_rsa.pub
for den private og offentlige nøgle.,
Kopier offentlig SSH-nøgle til fjernmaskinen
Du har to valg her. Medmindre du ikke kan bruge ssh-copy-id
– metoden, kan du prøve den “manuelle” måde.
Den nemmeste måde
Lad ssh-copy-id gør det automatisk:
$ ssh-copy-id username@remotemachine
Hvis du har flere nøgler i din ~/.ssh
mappe, kan du bruge -i key_file
for at angive, hvilken tast du vil bruge.,
i Den manuelle måde
Kopier den offentlige SSH-key til fjern-maskinen
$ scp .ssh/id_rsa.pub username@remotemachine:/tmp/
Log på den eksterne maskine
$ ssh username@remotemachine
Tilføj din offentlig SSH-nøgle til ~/.SSH/authori .ed_keys
sørg for tilstanden af~/.ssh/authorized_keys er 755:
$ chmod 755 ~/.ssh/authorized_keys
Mulige Problemer
Nogle af de mulige problemer, der forhindrer dig i, at kunne opsætte en adgangskode-mindre login.,
Directory/file permissions
Home directory
kontroller hjemmemappens tilladelse, der kan forårsage, at det nøglebaserede login mislykkes (Antag, at hjemmemappen er/home/.ma):
# chmod 700 /home/zma/
~/.SSH tilladelse
sørg for .ssh-directory-tilladelse er 755:
$ chmod 755 ~/.ssh/
~/.SSH / authroi .ed_keys tilladelse
sørg for .ssh-directory-tilladelse er 755:
$ chmod 755 ~/.ssh/authorized_keys
$ chmod 700 ~/.ssh/id_rsa$ chmod 700 ~/.ssh/id_rsa.pub
Password-baseret “password-mindre” ssh-login
Denne metode login og godkendelse er stadig af password., Vi bruger dog et værktøj til at hjælpe os med at indtaste adgangskoden automatisk. Værktøjet er sshpass
som fungerer fint.
brug er meget enkel, som følger ved at give adgangskoden i kommando:
$ sshpass -p "your_password_here" ssh username@remotemachine
eller ved at give den adgangskode, der i den første linje af en fil
$ sshpass -f /path/to/file_storing_your_password ssh username@remotemachine
Sikkerhed overvejelser: før du bruger sshpass
læs “sikkerhedshensyn” i sshpass
man-siden for at vide, at de sikkerhedsmæssige problemer, og kun bruge den, når du kan tåle dem.,