Az „Engedély megtagadva (nyilvános kulcs)” hiba elhárítása

Az Engedely Megtagadva Nyilvanos Kulcs Hiba Elharitasa



Az SSH a Secure Shell rövidítése, amely egy olyan protokoll, amely biztonságos távoli kapcsolatokat hoz létre szerverekkel, távoli gazdagépekkel és egyéb hálózati eszközökkel. Az SSH használatával a felhasználók biztonságosan kommunikálhatnak a nyilvános és a privát kulcspárok segítségével, hogy titkosítsák az információkat az ügyfél és a távoli gazdagép között.

Néha, amikor SSH-n keresztül próbál csatlakozni, előfordulhat, hogy az „Engedély megtagadva (nyilvános kulcs)” hibaüzenet jelenik meg. Ez a hiba akkor fordulhat elő, ha módosította az SSH-kiszolgáló engedélybeállításait, például új felhasználói fiókokat hozott létre vagy új csomagokat telepített. Tehát megakadályozza, hogy sikeresen csatlakozzon az SSH-kiszolgálóhoz.

Ebben az útmutatóban megtudjuk, hogyan javítható az SSH Permission Denied (nyilvános kulcs) hiba. Ezenkívül megvizsgáljuk annak okait és lehetséges megoldásait ennek a gyakori SSH-hitelesítési hibának a megoldására.







Tanulni is lehet hogyan lehet SSH-kulcsot generálni Ubuntun ennek az útmutatónak a segítségével.



Miért jelenik meg az SSH „Engedély megtagadva (nyilvános kulcs)” hiba?

Ez a hiba különböző okok miatt fordulhat elő, például helytelen felhasználónév vagy gazdagép, hiányzó nyilvános kulcs a kiszolgálón, érvénytelen engedélyek az SSH-kulcsokhoz és mappákhoz, valamint az SSH-szolgáltatás konfigurációja. A hiba két fő okát azonban az alábbiakban felsoroljuk:



  1. Ez a hiba az alapértelmezett SSH-konfigurációkat tartalmazó „/etc/ssh/sshd_config” fájl helytelen konfigurációja miatt fordulhat elő.
  2. A hiba a távoli rendszeren található „~/.ssh/authorized_key” fájl nem megfelelő engedélyei miatt is előfordulhat. Ez a fájl tartalmazza azon ügyfélrendszerek nyilvános kulcsait, amelyek jogosultak SSH-kapcsolatot létesíteni a szerverrel.

Az „Engedély megtagadva (nyilvános kulcs)” hiba kijavítása

Az „engedély megtagadva (nyilvános kulcs)” hibát két különböző módszerrel oldhatja meg:

1. megoldás: Ellenőrizze és engedélyezze a jelszó-hitelesítést

A hiba egyik fő oka az „/etc/ssh/sshd_config” fájl rossz konfigurációja. A jelszó-hitelesítési szolgáltatás letiltása a rendszeren akkor okozhatja ezt a hibát, ha valaki csak az SSH-kulcs alapú hitelesítést használja, és előfordulhat, hogy a privát kulcs valamilyen okból nincs jelen. Tehát, ha jelszavas hitelesítéssel szeretné elérni az SSH-kiszolgálót, kijavíthatja az „engedély megtagadva” hibát, ha engedélyezi a jelszó-hitelesítés funkciót az SSH konfigurációs fájljában.

Ehhez nyissa meg a terminált a „Ctrl+Alt+t” billentyűparancs segítségével, és hajtsa végre a következő lépéseket a szerver oldalon:

1. lépés: Nyissa meg az „/etc/ssh/sshd_config” konfigurációs fájlt egy szövegszerkesztőben. Itt az alapértelmezett nano szövegszerkesztőt használjuk.

$ sudo nano / stb / ssh / sshd_config

2. lépés : Keresse meg a „PasswordAuthentication” sort, és engedélyezze „igen”-re. Ha ez a sor megjegyzéssel van ellátva, távolítsa el a „#” szimbólumot az elején a megjegyzés törléséhez.

Mentse el az előző módosításokat a „Ctrl+O” gombbal, és lépjen ki a konfigurációs fájlból a „Ctrl+x” gombbal.

3. lépés : Töltse be vagy indítsa újra az SSH szolgáltatást a rendszeren a következő említett paranccsal a módosítások alkalmazásához egy fájlra.

$ sudo systemctl indítsa újra az sshd-t

Most, ha újra megpróbál csatlakozni az SSH-klienséhez, hozzá kell férnie a távoli gazdagéphez.

$ ssh türelmünket @ 10.0.2.15

2. megoldás: Módosítsa az SSH Authorized_Keys engedélyeit
Az SSH jelszó alapú hitelesítési módszer használata biztonsági problémák miatt nem javasolt. Ezért ez a módszer előnyösebb, mivel a nyilvános alapvető hitelesítési megközelítéssel javítja ezt a hibát. A legtöbb esetben a hiba a távoli kiszolgálón található „~/.ssh/authorized_keys” fájl rossz tulajdonjogának és engedélyeinek beállításából fakad. A hiba ezzel a módszerrel történő kijavításához kövesse az alábbi lépéseket:

1. lépés : Nyissa meg az „/etc/SSH/sshd_config” fájlt egy szövegszerkesztőben.

$ sudo nano / stb / ssh / sshd_config

Most szerkessze a következő beállításokat:

PermitRootLogin sz
PubkeyAuthentication Igen

Ha root bejelentkezést szeretne használni, állítsa be a „permitrootlogin yes” értéket.

2. lépés : Megjegyzés a GSSAPI opciókhoz a „#” szimbólum hozzáadásával e sorok elejére.

#GSSAPIAhitelesítés igen
#GSSAPICleanupCredentials sz

Ezenkívül állítsa be a „UsePAM igen” értéket a konfigurációs fájlban.

3. lépés : Mentse el az előző konfigurációt, és indítsa újra az SSH szolgáltatásokat ezzel a paranccsal:

$ sudo systemctl indítsa újra az sshd-t

Most ellenőrizze az engedélyeket a saját mappájában:

$ ls -ld

Ha nem rendelkezik írási-olvasási jogosultsággal (drwx——) ebben a mappában, állítsa be a jogosultságokat a „chmod” paranccsal:

$ sudo chmod / itthon / türelmünket

Módosítsa az „.ssh” mappa engedélyét a következő paranccsal:

$ chmod 0700 / itthon / az otthonod / .ssh

Az „.ssh” mappa tartalmazza az „authorized_keys” fájlt. Ellenőrizze a fájl engedélyeit.

$ ls -ld .ssh / engedélyezett_kulcsok

A fájl tulajdonosának rendelkeznie kell írási-olvasási jogosultsággal. A fájlengedélyek módosításához használja a következő parancsot:

$ chmod 0600 / itthon / [ felhasználónév ] / .ssh / engedélyezett_kulcsok

Most próbáljon meg csatlakozni az SSH távoli gazdagéphez. Reméljük, hogy nem kap hibaüzenetet a csatlakozáskor.

Következtetés

Ebben a hibaelhárítási útmutatóban megvizsgáltuk, hogyan lehet megoldani az „Engedély megtagadva (nyilvános kulcs)” hibát. Megbeszéltük a hiba lehetséges okait, és két különböző megoldást javasoltunk a hiba megoldására. Reméljük, hogy az előző utasítások segítenek a hiba kijavításában Linux rendszerén. Ha többet szeretne megtudni, látogassa meg dokumentáció itt . Kösz!