
A Cloudflare bejelentette, hogy nyílt forráskódúvá tette az OPKSSH-t (OpenPubkey SSH), amelyet az Apache-2.0 licenc alatt tett közzé az OpenPubkey projekt részeként. Ez a lépés egyedi bejelentkezést (SSO – Single Sign-On) hoz az SSH-ba, anélkül, hogy módosítani kellene az SSH protokollokat vagy az SSH szoftvereket. Korábban az OPKSSH a BastionZero tulajdonában volt, de a Cloudflare felvásárolta a vállalatot, majd a kódot a közösség számára adományozta, hogy szélesebb körben elterjedhessen és további fejlesztéseket kapjon.
Miért jelentős az OPKSSH?
Az SSH az egyik legfontosabb távoli adminisztrációs protokoll, azonban a kulcskezelés problémái komoly biztonsági kockázatot jelentenek. Sok szervezetnél elavult SSH-kulcsok maradnak a szervereken, még akkor is, amikor egy alkalmazott távozik vagy megváltozik a munkaköre.
- Az OPKSSH forradalmi megközelítést alkalmaz, mivel:
- Az OpenID Connect segítségével egyedi bejelentkezést kínál SSH-n keresztül.
- Elhagyja a hosszú életű SSH-kulcsokat, és helyette ideiglenes kulcspárokat generál, amelyek önmegsemmisítő módon működnek.
- Csökkenti a kompromittált kulcsok kockázatát, és minimalizálja a támadási felületet egy privát kulcs esetleges eltulajdonítása esetén.
Hogyan működik az OPKSSH?
Az OpenPubkey projekt alapötlete, hogy a felhasználó nyilvános kulcsát egy ID tokenbe ágyazza (PK Token). Ez teljesen kompatibilis a Google, Azure, Okta és más identitáskezelő rendszerekkel.
Az OPKSSH ezt a technológiát SSH-ba ülteti át:
- A felhasználó SSO-n keresztül jelentkezik be az identitáskezelőjébe.
- Az OPKSSH automatikusan generál egy rövid élettartamú kulcspárt, ahol a nyilvános kulcs egy tanúsítványhoz hasonló struktúrában kerül tárolásra.
- Az SSH szerver egy OpenPubkey hitelesítőt hív meg, amely ellenőrzi a token érvényességét, valamint azt, hogy a felhasználó jogosult-e a hozzáférésre.
Ezáltal nincs szükség a felhasználói SSH-kulcsok manuális terjesztésére egy szervezeten belül.
- Az OPKSSH a szokásos SSH-kézfogás során egy ideiglenes kulcsot és PK Tokent küld a szervernek.
- A szerveroldalon a sshd_config fájl egy extra sorral bővül, amely egyedi AuthorizedKeysCommand-ként hívja az OpenPubkey hitelesítő szkriptet.
Ez a szkript:- Ellenőrzi a token érvényességét.
- Megnézi, hogy az ideiglenes kulcs egyezik-e a PK Tokenben szereplő kulccsal.
- Biztosítja, hogy a felhasználó e-mail címe engedélyezett legyen a hozzáféréshez.
Miért előnyös az OPKSSH?
- Automatikus kulcskezelés, nincs szükség manuális SSH-kulcsok kezelésére.
- Magasabb szintű biztonság, mivel a kulcsok rövid élettartamúak és SSO alapú hitelesítést használnak.
- Egyszerűbb adminisztráció, mivel a szervezetek meglévő identitáskezelő rendszereikkel integrálhatják az OPKSSH-t.
Ha szeretné kipróbálni az OPKSSH-t, tekintse meg a hivatalos README fájlt a GitHub-on, ahol részletes telepítési útmutató és dokumentáció található.
