SSH#
✓ |
⨯ |
⨯ |
⨯ |
⨯ |
✓ |
✓ |
✓ |
This guide explains how to prepare your SSH server and client for use with the Nitrokey. For configuring PuTTY, see this guide:
A Nitrokey-nek már telepített PGP-kulcsokkal kell rendelkeznie, és a helyi GnuPG kulcstárnak ismernie kell a kulcsokat.
Felkészülés az ügyfélre#
Győződjön meg róla, hogy a ~/.gnupg/gpg.conf tartalmazza a «use-agent»
Az ssh támogatás hozzáadása a gnupg-agenthez a «enable-ssh-support» hozzáadásával a ~/.gnupg/gpg-agent.conf fájlhoz.
Ha a fájl még nem létezik, akkor egyszerűen létrehozhatja.
Adja hozzá a következő kódot valahol a ~/.bashrc fájljához (a halak héjához keresse itt).
unset SSH_AGENT_PID
if [ "${gnupg_SSH_AUTH_SOCK_by:-0}" -ne $$ ]; then
export SSH_AUTH_SOCK="$(gpgconf --list-dirs agent-ssh-socket)"
fi
Egyszerűen indítsa újra a rendszert, vagy próbálja meg
pkill gpg-agent
és nyisson egy új parancssort, hogy meggyőződjön róla, hogy minden be van állítva.Problémák esetén próbálja ki a
gpg2 --card-status<x>
az első használatnál, hogy a gpg-agent biztosan elinduljon.
A szerver előkészítése#
Az authorized_keys fájlt a következő futtatással hozhatja létre
gpg2 --export-ssh-key keyID >> ~/authorized_keys
ahol
keyID
a Nitrokey hitelesítésére használt alkulcs azonosítója. A Nitrokey-nek már ismertnek kell lennie a helyi GnuPG kulcstárban. Most már hozzáadhatod ezt a fájlt egy távoli szerverhez’s authorized_keys és amikor ssh-t használsz a szerverhez, akkor a jelszó helyett egy pin-t fogsz kérni.
Hibaelhárítás#
Ha még mindig jelszót kérnek, kérjük, győződjön meg róla, hogy
echo $SSH_AUTH_SOCK
valami olyasmit ad vissza, mint «/run/user/1000/gnupg/S.gpg-agent.ssh» vagy «/home/felhasználónév/.gnupg/.S.gpg-agent.ssh». Sajnos a GnuPG-ben a múltban volt néhány változás, így a tényleges tartalom eltérhet a rendszertől és a GnuPG verziójától függően. Egyes rendszereken akár több mappa is lehet ebben a változóban elmentve. A fenti kódot a .bashrc-ben úgy kell módosítani, hogy az SSH_AUTH_SOCK változó helyes legyen. Kétség esetén keresse meg a «SSH_AUTH_SOCK» -t az alábbiakban.
man gpg-agent
hogy megtalálja a verziójához/rendszeréhez tartozó tényleges kódot.
A csomagkezelőn keresztül ellenőrizheti, hogy telepítve van-e a «pinentry» program. Lehet, hogy a gpg-agent.conf ban is be kell állítanod. Lehet, hogy a megfelelő TTY TTY-re kell irányítani a gpg-agentet.