Løsning på "Permission denied (publickey)" SSH-fejl på CentOS-server – Trin-for-trin guide

Hvordan kan fejlen ved SSH-forbindelsen til en CentOS-server, hvor den offentlige nøgle allerede er tilføjet, løses, når fejlloggen viser "Permission denied (publickey,gssapi-keyex,gssapi-with-mic,password)"?

Fejlen "Permission denied (publickey,gssapi-keyex,gssapi-with-mic,password)" ved SSH-forbindelse til en CentOS-server kan løses ved at kontrollere fil- og mappe-tilladelser, ejerskab, SSH-konfiguration, SELinux-indstillinger og logfiler.

Sådan løses fejlen "Permission denied (publickey,gssapi-keyex,gssapi-with-mic,password)" ved SSH-forbindelse til en CentOS-server

Hvis du oplever fejlen "Permission denied (publickey,gssapi-keyex,gssapi-with-mic,password)" ved forsøg på at oprette SSH-forbindelse til en CentOS-server, hvor den offentlige nøgle allerede er tilføjet, kan du følge disse trin for at løse problemet:

1. Kontroller fil- og mappe-tilladelser

  • Sørg for, at ~/.ssh mappen har tilladelserne 700:
    chmod 700 ~/.ssh
  • Sørg for, at ~/.ssh/authorized_keys filen har tilladelserne 600:
    chmod 600 ~/.ssh/authorized_keys

2. Kontroller ejerskab

  • Sørg for, at ~/.ssh mappen og ~/.ssh/authorized_keys filen ejes af den korrekte bruger:
    chown [brugernavn]:[brugernavn] ~/.ssh
    chown [brugernavn]:[brugernavn] ~/.ssh/authorized_keys

3. Kontroller SSH-konfigurationen

  • Åbn SSH-konfigurationsfilen /etc/ssh/sshd_config og kontroller følgende indstillinger:
    • Sørg for, at PubkeyAuthentication er sat til yes:
      PubkeyAuthentication yes
    • Sørg for, at AuthorizedKeysFile peger på den korrekte fil:
      AuthorizedKeysFile %h/.ssh/authorized_keys
  • Genstart SSH-tjenesten for at anvende ændringerne:
    sudo systemctl restart sshd

4. Kontroller SELinux-indstillinger

  • Hvis SELinux er aktiveret, skal du sikre, at ~/.ssh mappen og ~/.ssh/authorized_keys filen har de korrekte SELinux-kontekster:
    restorecon -Rv ~/.ssh

5. Kontroller logfiler

  • Gennemgå SSH-logfilerne for yderligere fejlinformationer:
    sudo tail -f /var/log/secure

Ved at følge disse trin bør du kunne identificere og løse problemet med SSH-forbindelsen til din CentOS-server.