SSH-nøgler er en fantastisk metode til at autentificere SSH-sessioner uden behov for en adgangskode ved hvert login. Som alle teknologier er SSH-nøgler ikke perfekte, og du kan støde på fejl, når du bruger dem. En af de mest almindelige fejl, når du arbejder med SSH-nøgler, er tilladelsen nægtet (publickey) -fejl.
Denne artikel vil diskutere de forskellige årsager til denne fejl og vise dig de hurtige trin, du kan tage for at rette fejlen.
Fejl 1: Autoriserede nøgler og katalogtilladelser
En af årsagerne til denne fejl kan være tilladelser og ejerskab konfigureret til .ssh-katalog og autoriserede_keys-fil.
For at løse dette problem skal du indstille .ssh-katalogtilladelser til 700 og autoriserede_keys-tilladelser til 6oo.
sudo chmod 700 ~ /.ssh sudo chmod 600 autoriserede_tasterFejl 2: SSH forkerte konfigurationer
En anden almindelig årsag til publickey-fejlen er en forkert konfiguration i sshd_config-filen. For at løse dette problem skal du redigere filen / etc / ssh / sshd_config og ændre følgende poster.
#PermitRootLogin forbyder adgangskode#PasswordAuthentication ja
Ovenstående poster skal være som vist nedenfor:
PermitRootLogin jaPasswordAuthentication ja
Gem konfigurationen, og genstart tjenesten:
sudo systemctl genstart sshd.serviceFejl 3: manglende nøgler
En anden mulig årsag til den nægtede fejl for publickey-tilladelsen kunne mangle nøgler fra din lokale maskine. Hvis du har dine nøgler føjet til serveren autoriserede_keys, men mangler de tilsvarende private nøgler, kan dette forårsage en fejl.
For at løse dette problem skal du redigere ssh-konfigurationsfilen, deaktivere godkendelse af offentlig nøgle og aktivere adgangskode-login som følger:
PubkeyAuthentication ja#PasswordAuthentication ja
Skift til følgende poster:
#PubkeyAuthentication jaPasswordAuthentication ja
Når du har redigeret konfigurationen, skal du gemme filen og genstarte SSH-tjenesten:
sudo systemctl genstart sshd.serviceHvis du er sikker på, at dine nøgler er kompromitteret, kan du fjerne dem fra autoriserede_taster eller tilføje en bestemt nøgle til den tilbagekaldte liste i SSH.
Konklusion
Denne hurtige vejledning viste dig, hvordan du adresserer forskellige problemer, der kan forårsage tilladelse nægtet (publickey) -fejl i SSH. Hvis dette problem vedvarer, skal du overveje andre fejlfindingsmetoder.