Kulcsok generálása
Alapjában véve helytelen jelszó nélküli kulcsokat használni. De
előfordulhat olyan feladat, amelynek a megoldásához szükségünk
van ilyen kulcsokra. Azonban ilyenkor mindig gondoljunk arra,
hogy a jelszó nélküli kulcs illetéktelen kezekbe történő kerülése
esetén a miénkkel megegyező jogkört biztosítunk a kulcsot
megszerzőnek. Ezért mindig próbáljuk meg szerveroldalon
korlátozni a kulcs használatát. Ennek a részletes
dokumentációját a man 8 sshd parancs kiadása után az
authorized_keys fájl formátumáról szóló fejezetben
találhatjuk meg, de ezen anyag 5.2.5. fejezetében
van szó az elérhető opciókról.
Tehát generáljunk magunknak kulcsot, és tegyük fel az összes
szerverre. Az interaktív használatra szánt kulcsunkat azonban
mindenképpen jelszóval védjük (tehát az Enter passphrase
kérdésre adjunk meg jelszót)! Az ssh-agent használatakor
ezt a jelszót kell majd megadnunk (amellyel a kulcsunkat védtük).
# ssh-keygen -b 1024 -f ~/.ssh/id_dsa -t dsa -C root@sajat Generating public/private dsa key pair. Enter passphrase (empty for no passphrase): Enter same passphrase again: Your identification has been saved in /root/.ssh/id_dsa. Your public key has been saved in /root/.ssh/id_dsa.pub. The key fingerprint is: a5:8e:94:5b:c9:d1:63:0f:38:0a:22:3e:ce:d2:86:16 root@sajat
Az amdump használatához generáljunk a backup nevű gépen
egy kulcsot, amelyet adjunk a backup nevű felhasználó
,,kezelésébe'':
# mkdir /var/backups/.ssh # chmod 0750 /var/backups/.ssh # ssh-keygen -b 1024 -f /var/backups/.ssh/id_rsa_amdump -t rsa -C backup@backup_amdump Generating public/private dsa key pair. Enter passphrase (empty for no passphrase): Enter same passphrase again: Your identification has been saved in /var/backups/.ssh/id_rsa_amdump Your public key has been saved in /var/backups/.ssh/id_rsa_amdump.pub The key fingerprint is: bd:59:41:58:f6:4c:dc:3e:32:7f:f6:6f:33:e8:c2:ac backup@backup_amdump # chown -R backup:backup /var/backups/.ssh
Ne felejtkezzünk el a kulcs
korlátozásáról!
Hogy az amanda használni is tudja majd a kulcsot, egy
known_hosts nevű fájlban el kell tárolnunk azoknak a
gépeknek a kulcsát, amelyekre ssh-val be szeretne jutni a
backup nevű felhasználónk. Ennek a legegyszerűbb módja
az, ha ezen felhasználó ssh-val belép ezekre a gépekre,
hiszen ekkor automatikusan eltárolódik ebben a fájlban a szerver
kulcsa. Tehát mindössze ennyit kell tennünk:
# su - backup $ ssh -i .ssh/id_rsa_amdump dns.akarmi.intra The authenticity of host 'dns.akarmi.intra (192.168.10.253)' can't be established. RSA key fingerprint is 58:35:7c:d2:d5:ad:5e:21:ec:a8:9b:5f:68:e6:35:95. Are you sure you want to continue connecting (yes/no)? yes Warning: Permanently added 'dns.akarmi.intra,192.168.10.253' (RSA) to the list of known hosts.
Ehhez azonban először oda kell másolnunk a publikus kulcsot a
megfelelő gépre, hiszen a backup felhasználónknak nincs
jelszava, így csak kulcs segítségével tud belépni, jelszóval nem.
Ugyanezt a két lépést meg kell tennünk az amrecover
futtatása előtt is!
A mentett adatok visszaállításához is generáljunk kulcsot (ezt minden szerveren meg kell tennünk!):
# ssh-keygen -b 1024 -f .ssh/id_rsa_amrecover -t rsa -C root@backup_amrecover Generating public/private rsa key pair. Enter passphrase (empty for no passphrase): Enter same passphrase again: Your identification has been saved in .ssh/id_rsa_amrecover. Your public key has been saved in .ssh/id_rsa_amrecover.pub. The key fingerprint is: 00:37:df:7c:e4:7d:fd:5d:78:73:2d:89:a4:15:0e:6b root@backup_amrecover
Az így létrehozott kulcsot át kell másolnunk a backup nevű gépre,
a backup felhasználó authorized_keys fájljába, és
természetesen ezt is nagyon ajánlott
korlátozni.
2009-03-23