Rozdział 2 · 2.2
Tworzenie klucza SSH w systemach Windows, Mac i Linux
Klucz SSH jest bezpieczniejszy i wygodniejszy niż hasło. Składa się z dwóch części:
- klucza prywatnego, który pozostaje na Państwa komputerze i którego nie udostępniają Państwo nikomu, także nam;
- klucza publicznego, czyli pliku z końcówką
.pub. Ten klucz umieszczają Państwo na serwerze.
Tworzenie klucza
Polecenie jest takie samo w systemach Windows, Mac i Linux. Prosimy otworzyć terminal (w systemie Windows PowerShell lub Terminal) i wpisać:
ssh-keygen -t ed25519 -C "anna laptop"
- Gdy pojawi się pytanie, gdzie zapisać klucz, prosimy nacisnąć Enter. Klucz zostanie zapisany w domyślnym miejscu.
- Prosimy wybrać passphrase: frazę hasła, która chroni klucz, gdyby ktoś przejął Państwa laptop. Należy wpisać ją dwukrotnie.
Za pomocą -C nadają Państwo kluczowi rozpoznawalną nazwę. Dzięki temu później na serwerze widać, który klucz należy do którego urządzenia. Prosimy utworzyć osobny klucz dla każdego urządzenia; w razie utraty laptopa wystarczy usunąć tylko ten jeden klucz.
Gdzie znajduje się klucz?
| Komputer | Klucz prywatny | Klucz publiczny |
|---|---|---|
| Windows | C:\Users\jouwnaam\.ssh\id_ed25519 | C:\Users\jouwnaam\.ssh\id_ed25519.pub |
| Mac i Linux | ~/.ssh/id_ed25519 | ~/.ssh/id_ed25519.pub |
Klucz publiczny można wyświetlić poleceniem:
cat ~/.ssh/id_ed25519.pub
ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIK0vU3kQ1yQh7j3mEXAMPLEcDqzX1o2p3R4tY5uV6wZ anna laptop
W systemie Windows polecenie cat działa również w PowerShell, z cat $env:USERPROFILE\.ssh\id_ed25519.pub. Tę jedną linię należy skopiować. Następnie można ją wkleić podczas instalacji w panelu VPS (zob. Instalacja VPS: system operacyjny, hasło i klucz SSH) lub dodać na działającym serwerze (zob. Umieszczenie klucza na serwerze i jego test).
Bez ciągłego wpisywania passphrase
Dzięki ssh-agent wpisują Państwo passphrase tylko raz na sesję.
- Mac: agent już działa. Prosimy dodać klucz poleceniem
ssh-add --apple-use-keychain ~/.ssh/id_ed25519; wtedy pęk kluczy zapamięta passphrase. - Linux: w większości środowisk graficznych agent już działa. Prosimy dodać klucz poleceniem
ssh-add. - Windows: usługa ssh-agent jest domyślnie wyłączona. Prosimy włączyć ją jednorazowo w PowerShell uruchomionym jako administrator:
Get-Service ssh-agent | Set-Service -StartupType Automatic
Start-Service ssh-agent
ssh-add $env:USERPROFILE\.ssh\id_ed25519
Uwaga: Klucz prywatny jest tak samo tajny jak hasło. Prosimy nigdy nie wysyłać go e-mailem ani przez czat, nie umieszczać go we wspólnym folderze i nigdy nie wklejać go w żaden formularz. Na serwer trafia wyłącznie plik z końcówką .pub.
