SSH Az informatikai biztonság alapjai II.
Készítette:
Póserné Oláh Valéria poserne.valeria@ poserne.valeria @nik.bmf.hu Tóth Ákos Toth.akos@ Toth.akos @nik.bmf.hu
Mi az az SSH (Secure Shell, biztonságos héj ) Segédprogram, protokoll, titkosító eszköz ügyfélügyfél-kiszolgáló alkalmazás és parancsfelület is egyben. Kiegyensúlyozott rugalmas megoldás különféle biztonsági és szolgáltatási kérdésekre, kérdésekre, amelyek egy vállalat hálózatán belül felmerülhetnek Cél: két számítógép között egy potenciálisan nem biztonságos hálózaton (pl Internet) keresztül egy titkosított kommunikációs út kiépítése.. kiépítése
SSH története SSH1 A UNIX nem biztonságos rr-parancsainak lecserélésére készült 19951995-ben. IETF 19971997-ben kiadta az SSH2 változatát ami az SSH1 képességeit és biztonságát tovább növelte.
SSH alkalmazási platformjai
Macintosh, Microsoft Windows, UNIX, Linux, Cisco útválasztó mobil eszközök, stb. 2
SSH funkciói
Leggyakoribb használati módja a telnettel megegyező módon a távoli bejelentkezéssel kapott biztonságos parancsértelmező.
Biztonságos állományátvitel.
Biztonságos végpontáthelyezés (port forward forward). ).
Általános célú titkosított csatorna kiépítése amely alkalmas akár ee-mail kapcsolatok titkosítására. 3
SSH működése Miért van szükség a telnet leváltására? A telnet nem titkosított formában dolgozik, ezért a hálózati forgalom megfigyelhető, hamisítható. Vannak nyílt forráskódú eszközök is, pl http://www.ethereal.com http://www.ethereal.com.. Lehetőség van a nyílt jelszavak lehallgatására amik birtokában a támadó már bármit megtehet. A csomagok IP szintű hamisítására is lehetőség van. Az SSH két különböző végpont titkosított kommunikációs csatornával való összekötésére szolgál. Legegyszerűbb formájában TCP segítségével kapcsolódik a géphez, felhasználónevet és jelszót kér az azonosításhoz. Ha a hitelesítés sikeres, sikeres, elkezdi titkosítani az adatokat. 4
Az SSH biztonsági összetevői (1) Hitelesítés
A hitelesítési fázis során választja ki és cseréli ki a kapcsolati kulcsokat kulcsokat.. SSH SSH1 1 esetén RSA RSA--t, SSH2 SSH 2 esetén DSA DSA--t használ. használ. A titkos kulcsot kódolva tárolja, a nyilvános kulcs a megfelelően hitelesített felhasználó gépén tárolódik tárolódik.. Ez teszi lehetővé az SSH kliensszoftverek számára az automatikus hitelesítést hitelesítést..
Titkosítás
SSH1 esetén DES, SSH1 DES,3 3DES,IDEA, BLOWFISH SSH SSH2 2 esetén 3DES, BLOWFISH, TWOFISH, ARCFOUR, CAST CAST128 128--CBC
5
Az SSH biztonsági összetevői (2)
Adatépség biztosítása
Csomagszintű adatépségadatépség-biztosítást is nyújt, a munkamenetek MD5 vagy SHA1 típusú kivonatolásával.
Ellenőrzés
Az IP cím vagy a gépnév alapján képes engedélyezni vagy letiltani a csomópontokat (IP és DNS szűrés).
Az SSH lehetővé teszi bizonyos, a végpont (port) számával azonosított forgalom SSH alagúton történő átirányítását 6
SSH kiszolgálók
OpenSSH (www.openssh.com): Ingyenes program Unixra és Windowsra SSH2 (www.ssh.com): SSH kereskedelmi változata, üzleti használatért fizetni kell, nem üzleti használatra ingyenes VanDyke Software (www.vandyke.com). Kereskedelmi SSH változat.
7
SSH ügyfelek OpenSSH PuTTY SecureCrt WinScp és még számos program
8
OpenSSH telepítése WindowsWindows-on Készítsen
egy teszt felhasználót! felhasználót! Nézze meg, hogy milyen portokon figyel a 22-es Windows!! (netstat -an parancs) a 22Windows porton nem figyel senki senki..
9
Netstat –an SSH előtt
10
Töltse le a http://nik.bmf.hu/poserne/IBA/install/ címről az openssh35p1openssh35p1-3.zip fájlt és kicsomagolás után telepítse!
11
Hagyjuk az alapbeállításokat érvényben 12
Fontos, hogy olvassuk el a readme readme..txt vagy a quickstart..txt fájl tartalmát, ugyanis a további quickstart beállításokat a parancssorból kell megtennünk! 13
Váltson a c:\ c:\program files\ files\openSSH openSSH\\bin kt. kt.--ba és mkgroup -l >> .. ..\\etc etc\\group parancs a local felhasználók csoportjára! Legyártja a local userek csoportját, létrejön az etc könyvtárban egy szövegszerkesztővel olvasható fájl. mkpasswd -l -u „username” >> ..\ ..\etc etc\\passwd Elkészíti a usernameusername-hez tartozó passwordot és az etc könyvtárba rakja. -l azt jelenti hogy local userről van szó. A username kicserélendő valós usernameusername-re! 14
Indítsa el a szolgáltatást a net start opensshd paranccsal! Ellenőrizze, hogy a szolgáltatás elindult-e! netstat –an Látjuk, a 22 es kapu figyel, ez az SSH szolgáltatás
15
SSH ügyfélprogramok Parancssoros
felület
SSH Communication SSH OpenSSH
Grafikus
felület
PuTTY SecureCRT WinSCP És még sok más program
16
A PuTTY ügyfélprogram Töltse le az alábbi helyről http://nik.bmf.hu/poserne/IBA/install/ a putty.exe programot és inditsa el!
17
Ha biztosak vagyunk abban hogy a megfelelő gépre léptünk be, fogadjuk el az ujjlenyomatot!
18
Felhasználónév és password megadása után sikeresen beléptünk a másik operációs rendszerbe.. rendszerbe 19
Biztonságos fájlmásolás WinSCP egy ingyenes biztonságos másolóprogram (SCP Secure copy) Windows felületre. http://winscp.net vagy http://nik.bmf.hu/poserne/IBA/install/ nik.bmf.hu/poserne/IBA/install/winscp375.exe winscp375.exe Töltse le és indítsa el!
20
Ha megbízhatónak találjuk a szervert fogadjuk el a host key-t! 21
Sikeresen beléptünk és így lehetőségünk van fájlok másolására átnevezésére és még sok mindenre. Fedezzük fel a program menürendszerét! 22
Feladatok 1. Hozzon létre egy másik felhasználót a virtuális gépen, állítsa be úgy, hogy SSH kapcsolattal tudja kezelni. 2. Lépjen be a szomszédja gépére és próbálja ki milyen parancsokat tud végrehajtani. (DIR, MD, RD, TIME, netstat, ipconfig stb.) 3. Biztonságos fájlmásolás segítségével másoljon át fájlokat az egyik gépről a másikra.
23
http://nik.bmf.hu/poserne/IBA/install/vnc nik.bmf.hu/poserne/IBA/install/vnc--4_1_1 4_1_1-x86_win32.exe
24
25
26
27
28
29
30
Indítsa el a VNC viewert
31
Ha jól adta meg az adatokat akkor el tudja érni a szomszédja gépet. Ez a kapcsolat így még nem biztonságos, ezért tereljük át a forgalmat SSH2SSH2-es kapcsolatra port forward segítségével. Szükség lesz egy SSH kapcsolatra, amit a már megismert módon építünk fel, fel, ezután pedig a SecureCRT program segítségével port átirányítást végzünk. 32
http://www.vandyke.com/products/securecrt/inde x.html vagy http://nik.bmf.hu/poserne/IBA/install/scrt613.exe nik.bmf.hu/poserne/IBA/install/scrt613.exe
33
34
35
A SecureCRT
Egy titkosított SSH munkakörnyezetet létesít, jelszóval és 256 bites titkosított adatcsatornával. Egyaránt képes kapcsolódni Windows, Unix vagy Linux SSH szerverekhez. TCP/IP portokat használó helyi alkalmazások számára az SSH szerver és a helyi gép között áramló adatokat egy titkosított adatcsatornába vezeti. Lehetővé teszi azt is, hogy a szerver az adatokat további szerverekhez ugyancsak védett módon továbbítsa: pl. SMTP, POP és IMAP biztosítása "port forwarding"forwarding"-gal. Magasszintű konfigurálhatóság: az SSH, telnet és más protokollok számára "session management" eszköztár. 36
37
SSH Tunneling Készítette: Windisch Gergely windisch.gergely indisch.gergely@ @nik.bmf.hu
SSH Tunneling (1)
SSH alagút létesítésének célja: titkosított adatfolyam titkosítással nem rendelkező protokollok, csatornák esetén:
FTP kapcsolat, HTTP, POP3
kapcsolódás közvetlenül a szerverre
Vezeték nélküli hálózat
a vezeték nélküli hálózaton menő rész áthidalása
39
SSH Tunneling (2)
SSH tunnel létesítése két számítógép között
http://oldsite.precedence.co.uk/nc/putty.html 40
SSH Tunneling (3)
A kliensen kell beállítani - azonos szerver ssh -L localport: localport:remotehost remotehost::remoteport Putty Putty:: Connection/SSH/ Connection /SSH/ Tunnels// Tunnels Source:: 80 Source Destination:: Destination localhost::80 localhost
41
SSH Tunneling (4)
A kliensen kell beállítani - másik szerver destination: mail.freemail.hu destination: mail.freemail.hu:110 :110 Putty Putty:: Connection/SSH/ Connection /SSH/ Tunnels// Tunnels Source port: 110 Destination:: Destination localhost::110 localhost
42
SSH Tunneling (5)
A kliens beállítása után csatlakozzunk, jelentkezzünk be (netstat (netstat -an segítségével ellenőrizhetjük a csatorna létrejöttét - a kliens figyelni kezdi a megadott portot portot)) A használt alkalmazás címzettje: localhost
43
SSH Tunneling (6) Töltse le a http://nik.bmf.hu/poserne/IBA/install/ címről a TinyWebSlimFTPd.zip fájlt és kicsomagolás után futtassa az install.bat install.bat--ot ot.. netstat -an -nel ellenőrizzük, hogy figyel figyel--e valaki a 8080--as és a 218080 21-es portokon Töltse le a http http:://nik. //nik.bmf. bmf.hu/poserne/IBA/install/ címről a Wireshark Wireshark--setup setup--1.0.6.exe fájlt és telepítse fel a programot programot..
44
SSH Tunneling (7)
Indítsuk el a Wiresharkot Wiresharkot,, válasszuk ki a megfelelő IP IP--t, majd capture capture,, start Próbáljuk ki: http://virtualis_ip:8080/index.html Ha valami bejön, akkor jó. Jelentkezzünk be, töltsük le a linken található txt fájlt. Nézzük meg a Wiresharkot Wiresharkot:: capture, capture, stop. Jelszó, üzenet, minden megtalálható Készítsük el az SSH csatornát: 21, localhost localhost::21, 21, 8080, localhost::8080 localhost Ismételjük el az előzőeket, és nézzük meg most az eredményt. 45