SSH szerveradminisztrációhoz#
Ez az útmutató elmagyarázza, hogyan készítse elő SSH-kiszolgálóját és kliensét a Nitrokeyvel való használatra.
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áadhatja ezt a fájlt egy távoli szerverhez’s authorized_keys és amikor ssh-t használ a szerverhez, akkor a jelszó helyett egy pin-t fog 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.