KDE Plasma, openSUSE. Érthetetlen módon a pam_kwallet nevű modult manuálisan kell telepíteni, nélküle a KDE Wallet jelszavát külön be kell írni bejelentkezés után. A KDE Wallet első használatakor rákérdez a titkosítási módra, válasszuk a blowfish-t.
# zypper in pam_kwallet
Az ssh-agent már fut. Ahhoz, hogy az ssh-kulcsok jelszavát is a KDE Wallet kezelje, hozzunk létre egy futtatható szkriptet: ~/.config/autostart-scripts/ssh-add.sh
#!/bin/sh
# Tumbleweed 20200826 előtt vagy Leap 15.2-ben
#export SSH_ASKPASS=/usr/lib/ssh/ksshaskpass
export SSH_ASKPASS=/usr/libexec/ssh/ksshaskpass
# add the default key: ~/.ssh/id_rsa
/usr/bin/ssh-add -q < /dev/null
#/usr/bin/ssh-add -q ~/.ssh/key1 ~/.ssh/key2 < /dev/null
Ez látszani fog a System Settings / Startup and Shutdown / Autostart
menüpontban is, tehát innen is létrehozhatjuk, ha akarjuk. Így listázhatjuk a betöltött kulcsokat:
$ ssh-add -l
Ha több kulcsot is kapott az ssh-agent, akkor azokat mind végigpróbálja majd, amikor csatlakozunk egy szerverhez. Csakhogy ennek nemkívánatos mellékhatásai lehetnek, ezért ekkor érdemes az IdentitiesOnly opciót használni az ssh klienshez. Szerkesszük a konfigot: ~/.ssh/config
.
Host server-work
HostName server1.com
User myuser1
IdentityFile ~/.ssh/key1
Host server-private
HostName server2.com
IdentityFile ~/.ssh/key2
Host *
IdentitiesOnly yes
ServerAliveInterval 120
AddressFamily inet
Milyen aláírást használjon a kulcs? Vagy legalább 3072 bites RSA, vagy Ed25519 kódolásút. A kulcs formátuma OpenSSH, de működnek a régebbi PEM-ek is. Az első 2 parancs megegyező hatású, ez a default. A 3. az ajánlott paraméterezés RSA-hoz, a 4. pedig a korszerűnek tekintett Ed25519-hez.
$ ssh-keygen
$ ssh-keygen -t rsa -b 3072 -a 16 -f ~/.ssh/id_rsa
$ ssh-keygen -t rsa -b 4096 -a 32 -C "myuser@remote" -f ~/.ssh/id_rsa_remote
$ ssh-keygen -t ed25519 -a 32 -C "myuser@remote" -f ~/.ssh/id_ed25519_remote