Přes SSH se můžeme bezpečně přihlásit na server, vždy je však potřeba zadat heslo. Je však možné zadánvání hesla nahradit ověřením pomocí RSA klíče.

Klíč RSA

První krok je vytvořit si vlastní soukromý a veřejný rsa klíč. Tato dvojice klíčů slouží pro identifikaci počítače - soukromý klíč je nutno udržovat v tajnosti, a veřejný klíč lze libovolně distribuovat.

Generování klíče (v příkazové řádce):

user@localhost$ ssh-keygen

Při vytváření klíče se program zeptá na nové heslo. Pokud není zadáno, tak k používání klíče stačí mít daný klíč. Pokud heslo je zadáno, tak je potřeba při každém použití klíče heslo zadat. Je to sice v rozporu s nadpisem tohoto příspěvku, ale dopořučuje se heslo zadat, protože jinak útočníhovi stačí zkopírovat privátní klíč a má přístup všude.

Nyní zkopírujeme veřejný klíč na server:

user@localhost$ ssh-copy-id -i ~/.ssh/id_rsa.pub adresa.serveru.cz

Veřejný klíč se zkopíruje do ~/.ssh/authorized_keys kde jsou uloženy klíče uživatelů, kteří mají přístup vyřizovaný privátním klíčem, namísto zadávání hesla. Tento soubor bude obsahovat něco podobného jako:

ssh-rsa AAAAB3NzaCdDevQ7b0rBGHhkH96s0PS+g/ijI5WUa2qHz9lG3dIg8Gn+qxJhatJhSDtnLBTUVNxy7oQM23xruS4v2KnFSavPLtfbbeCkmjAgVvb5Ek7Q0ejEjenw65dSjE1yc2EAAAA7AmBZg0bA7uQPUvXq9SFTW9T8CVmiktil9f826ToV4a6hFaoZIjAUyalNf0F7GXaTq9qKzLO9PVlKAPJnNLD2FAzC2L2Cpc086moteljJwZ98bUCXry6CQL0bjqzzwqU+WeEI5ZSAyinFwxN72FLG7YFOGMrSGQQ2vVw676VWk2QvUC/bzXzULbfGAVL1fsnwJhleYb/XplfINABIwAAAQEAsJgFpbsRKgeXUiv== /c/Users/username/.ssh/id_rsa

Zdroje