Több gép, több privát SSH kulcs

OpenSSH logó
Probléma: Van több géped, melyekhez valamiért nem szeretnéd ugyanazt az SSH kulcsot használni, hanem mondjuk gépenként egyet. Ugyanakkor a sima SSH parancs csak id_dsa/id_rsa/id_ecdsa néven találja meg a kulcsokat, nem tudsz többet használni.

Megoldás: Biztonság és kényelem szempontból sem problémás egy SSH kulcsot használni az összes általad használt gépen belépéshez, mivel a privát kulcsod nem kerül ki a gépedből, és a publikus kulcsból csak nagyon nehezen (és itt kriptográfiai fogalomként használom a nagy nehézséget → megfelelő kulcsméret esetén évszázadokról beszélünk) hozható létre a privát kulcs. Tehát még egy kompromittált szerveren is biztonságban van a belépésed.

Ugyanakkor nem olyan nehéz elképzelni, hogy bizonyos rendszerek nem támogatnak mindenféle belépési módot. Az általam legáltalánosabban tapasztalt jelenség, hogy bizonyos régebbi szerverek nem ismerik az ECDSA-t csak az RSA-t. Így nekem van egy ECDSA és egy RSA kulcsom is SSH-hoz.

Ideiglenes megoldásként használhatjuk így pl.: ssh -i ~/.ssh/web_kulcs_rsa felhasznalo@web.példaszerver.hu -p 9215 kombinációt is. Viszont sokkal kényelmesebb, ha bevezetjük mindezt a ~/.ssh/config fájlba:

Host web.példaszerver.hu web
	Hostname web.példaszerver.hu
    User felhasznalo
	IdentityFile ~/.ssh/web_kulcs_rsa
	Port 9215
 
Host statisztika.példaszerver.hu stat
	Hostname statisztika.példaszerver.hu
	User felhasznalo
	IdentityFile ~/.ssh/stat_kulcs_rsa
	Port 9215

Innentől ha beírod hogy ssh web vagy ssh stat, akkor az ssh tudni fogja, hogy melyik szerverre akarsz bemenni, milyen porton, milyen felhasználóval és mi a kulcs hozzá.