next up previous contents
Next: X biztonság Up: Kiszolgálók Previous: tcp-wrapper   Contents

SSH (Secure SHell)

Letölthető szinte minden Linux-os ftp szerverről, illetve a készítő, az SSH Communications[21] honlapjáról, de elérhető már az OpenSSH[23] is, amely megoldást jelent az egyre égetőbb copyright problémákra, illetve az OpenBSD[22] szelleméhez híven átgondoltabb, optimalizált és auditált.

Az ssh használata már csak a szolgáltatásai miatt is ajánlott. A -C paraméter megadásával lehetséges az adatok tömörített átvitele, a sávszélesség kímélése céljából.

Képes kapcsolatokat forwardolni, így a távoli felhasználók több szolgáltatás használata esetén sem kommunikálnak kódolatlanul. Például:

$ ssh -a -f -L port2:tavoli_host:port1 tavoli_host -l usernev program

Távoli gépen X programokat indítva a DISPLAY változó értékét megváltoztatja a saját gépünk X konzoljának címére és automatikusan forwardolja a kapcsolatot.

Helyettesítheti az rsh/rlogin parancsokat. File átvitelre ftp vagy rcp helyett használhatjuk az ssh scp parancsát is:

$ scp forraskonyvtar/file tavoli_host:celkonyvtar/

vagy több file és könyvtárak másolása esetén:

$ scp -r forraskonyvtar/* tavoli_host:celkonyvtar/

Kiválthatjuk vele az rexec-et is a következő módon:

$ ssh tavoli_host parancs

Bármely host-ra feltehető a nyilvános kulcsunk is, így megoldható a jelszókérés nélküli bejelentkezés az adott gépre (hasonlóan a .rhosts használatához) a következőképp:

$ ssh-keygen
Initializing random number generator...
Generating p:  .................................++ (distance 432)
Generating q:  .................++ (distance 294)
Computing the keys...
Testing the keys...
Key generation complete.
Enter file in which to save the key (/home/sragli/.ssh/identity): 
Enter passphrase: 
Enter the same passphrase again: 
Your identification has been saved in /home/sragli/.ssh/identity.
Your public key is:
1024 35 1279179370417302320936584570752190029364958051144523244552 ...
Your public key has been saved in /home/sragli/.ssh/identity.pub

$ scp .ssh/identity.pub usernev@tavoli_host:
$ ssh -l usernev tavoli_host
$ cat identity.pub >> .ssh/authorized_keys
$ chmod 600 .ssh/authorized_keys

Ha megadtuk a passphrase-t, bejelentkezéskor kérni fogja. A jó passphrase kb. 10-30 karakter hosszú. Érdemes valami könnyen megjegyezhető - de azért kellően bonyolult - mondatot vagy kifejezést választani, mert ha egyszer elfelejtettük, nincs mód a visszaállítására.


Az ssh-agent-tel lehetőség van a kulcsok központi elosztására, amely egy nagyobb cég hierarchikus szabályainak betartását is lehetővé teszi.

Minden kapcsolat kezdetekor azonosítja a másik oldalt, így csökken a DNS vagy az IP spoofing veszélye. Korlátozott védelmet nyújt a man-in-the-middle jellegű támadások ellen, mivel a kapcsolat kezdetétől kódoltan folyik a kommunikáció. A kapcsolat elrablása ellen ugyan nem véd, de ha az elkövető nem a kapcsolat kezdetekor lép be a vonalba, akkor érdemi információ birtokába nem juthat, hacsak nem ismeri mindkét fél kulcsait, amelyek a kódolás feloldásához szükségesek. Ezek azonban óránként újragenerálódnak és nem tárolódnak file-okban.

Ha az adott host-tal még nem folytattunk kommunikációt vagy valami nincs rendben vele (pl. a host nevéhez tartozó IP cím nem egyezik a tárolttal), a kapcsolat kezdeményezése előtt figyelmeztet.

Ha szeretnénk beállítani, hogy csak arra jogosultak használják a szolgáltatást, megtehetjük ezt a /etc/ssh/sshd_config-ban az AllowUsers, AllowGroups és AllowHosts opciók segítségével user, group és host szerint. Amennyiben az sshd tcp-wrapper-rel lett fordítva, az utóbbi beállítására lehetőségünk van a /etc/hosts.allow és /etc/hosts.deny-ben a már előzőleg leírt módon. Ennek előnye, hogy a módosítások érvénybe léptetéséhez az sshd-t nem kell újraindítani.


next up previous contents
Next: X biztonság Up: Kiszolgálók Previous: tcp-wrapper   Contents

1999-12-21