Her er et kort notat om hvordan du konfigurerer passwordless innlogginger mellom 2 Linux-systemer. Prosessen innebærer i utgangspunktet å generere en offentlig godkjenning-tasten, og legge det til eksterne verter ~/.ssh/authorized_keys » – fil.
Generere autentiseringsnøkkel
Hvis en SSH-godkjenning-tasten filen ikke finnes, kan du generere en ved å kjøre ssh-keygen-kommandoen., Når du blir bedt om et passord, kan du bruke en tom passfrasen hvis fullt passord-mindre pålogging er nødvendig:
Kopier den offentlige nøkkelen til ekstern vert
Bruke ssh-copy-id-kommandoen til å installere den offentlige halvparten av de nylig generert godkjenning nøkkelen til en bestemt brukers hjem-katalog på den eksterne verten. Ssh-copy-id-kommandoen vil da automatisk legge identiteten informasjon inn i ~/.ssh/authorized_keys » filen for den angitte brukeren på den eksterne verten (skape ~/.ssh og~/.ssh/authorized_keys » hvis nødvendig).,
# ssh-copy-id -i ~/.ssh/id_rsa.pub user@remote-hostuser@remote-hosts's password:
Alternativt hvis serveren er ikke installert openssh-klienter (en pakke som gir ssh-copy-id-kommandoen utility) kan du kopiere autentiseringsnøkkel med kommandoen:
# cat ~/.ssh/id_rsa.pub | ssh user@remote-host "cat >> ~/.ssh/authorized_keys"
Hvis alt er konfigurert riktig, du bør være i stand til å logge inn til den eksterne verten uten passord.,
Sjekk for å få de riktige tillatelsene
Den vanligste årsaken til problemer med å få nøkkel-basert ssh godkjenning til å arbeide, er filrettigheter på den eksterne ssh server
Hvis trinnene ovenfor ble fulgt og ssh ‘ ing til den aktuelle brukeren er fortsatt spørre etter passord, inspisere tillatelser på både den lokale og den eksterne brukerens filer. Tillatelsene i katalogene skal være nøyaktig som vist nedenfor., Eksemplet som vises her er for brukeren «oracle»
Dersom tillatelsene er ikke så vis abover, sette dem riktig :
# chmod 600 ~/.ssh/authorized_keyschmod 700 ~/.ssh/
Starte sshd service for at endringene skal tre i kraft :
# service sshd restart
deaktivere SElinux
SELinux kan også potensielt hindre sshd fra å få tilgang til ~/.ssh-katalogen på serveren. Dette problemet kan utelukkes (eller løst) ved å kjøre restorecon som følger på den eksterne brukerens ~/.ssh-katalogen:
# restorecon -Rv ~/.ssh