Bevezetés
Ez az útmutató elmagyarázza, hogyan hozhat létre SSH-kulcsokat, hogyan adhatja hozzá a nyilvános kulcsot a CentOS 8-kiszolgálóhoz, és hogyan konfigurálhatja sshda jelszó nélküli bejelentkezést.
1. lépés – SSH kulcspár létrehozása
Először létre kell hoznia egy SSH-kulcspárt a számítógépén, ha még nem rendelkezik vele.
A helyi számítógép termináljában futtassa:
ssh-keygen
A parancs futtatása után a következő promptnak kell megjelennie:
Output
Generating public/private rsa key pair.
Enter file in which to save the key (/your_home/.ssh/id_rsa):
Nyomja ENTERmeg a gombot az SSH-kulcspár mentéséhez ./ssha kezdőkönyvtár alkönyvtárába, vagy adjon meg egy másik elérési utat, ha akarja.
Ezt követően a következő kimenetet kell látnia:
Output
Your identification has been saved in /your_home/.ssh/id_rsa.
Your public key has been saved in /your_home/.ssh/id_rsa.pub.
The key fingerprint is:
your_fingerprint_key username@remote_host
The key's randomart image is:
+--[ RSA 2048]----+
| ..o |
| E o= . |
| o. o |
| .. |
| ..S |
| o o. |
| =o.+. |
|. =++.. |
|o=++. |
+-----------------+
A fenti példában your_homea számítógépe kezdőkönyvtárát láthatjuk
Létrehozott egy nyilvános és privát kulcspár. A nyilvános kulcsot a szerverre másoljuk. Nyilvános kulcsának megtekintéséhez:
cat ~/.ssh/id_rsa.pub
Nagyon hosszú karakterláncot fog látni, amely ssh-rsa -val kezdődik .
2. lépés: SSH-kulcs hozzáadása a CentOS-kiszolgálóhoz
SSH-t a szerverére, és hozza létre a .sshkönyvtárat, ha még nem létezik:
mkdir -p ~/.ssh
Adja hozzá a nyilvános kulcsot az 1. lépéstől a következőhöz ~/.ssh/authorized_keys. Cserélje public_key_stringki az id_rsa.pub1. lépés tartalmával :
echo public_key_string >> ~/.ssh/authorized_keys
Jelentkezzen ki a szerverről, majd jelentkezzen be újra:
ssh root@your_server_ip
Ha először csatlakozik így a szerveréhez, a következő üzenetet fogja látni:
Output
The authenticity of host 'your_server_ip' can't be established.
ECDSA key fingerprint is your_finderprint_id.
Are you sure you want to continue connecting (yes/no)?
Ha ezt az üzenetet látja, válaszoljon, yesés nyomja meg a gombot. ENTER
A rendszer kérni fogja a kiszolgáló root jelszavát is. A következő lépésben bemutatjuk, hogyan lehet ezt letiltani.
3. lépés: A jelszó-hitelesítés letiltása
Az SSH-kulcson alapuló hitelesítés konfigurálva van, de a jelszó-hitelesítés továbbra is aktív. Ennek megváltoztatásához néhány változtatást kell végrehajtania a könyvtárban sshd_configtalálható fájlban /etc/ssh. A fájlt ezzel a paranccsal nyithatja meg:
sudo vi /etc/ssh/sshd_config
A fájlban meg kell találni és módosítani kell több sort a Gyökérbejelentkezés engedélyezése értékre kell állítani yes
...
PermitRootLogin yes
...
A Jelszó hitelesítést értékre kell állítani no
...
PasswordAuthentication no
...
A Kihívás válasz hitelesítését értékre kell állítani no
...
ChallengeResponseAuthentication no
...
A Password Authentication Method (PAM) használatát értékre kell állítani yes
...
UsePAM yes
...
Miután befejezte a módosításokat, nyomja meg a ESC, majd a gombot :WQ. A módosítás életbe lépéséhez indítsa újra a sshdszolgáltatást:
sudo systemctl restart sshd.service
Mielőtt bezárná a terminált, ahol csatlakozik a szerverhez, nyissa meg az új terminál ablakot, és futtassa ezt a parancsot
ssh root@your_server_ip
Most jelszó nélkül kell csatlakoznia a szerverhez, és csak az SSH-kulcsával. Ez azt jelenti, hogy az SSH-alapú hitelesítés sikeresen konfigurálva van, és a jelszavas hitelesítés le van tiltva.