Alapértelmezés szerint a kliens és a webszerver közötti kommunikáció titkosítatlanul történik, amely lehetővé teszi az átküldött adatok lehallgatását. Ez különösen akkor kellemetlen, ha a böngésző és a webkiszolgáló között érzékeny adatok utaznak, például egy kitöltött űrlap adatai, felhasználónevek és jelszavak vagy éppen egy hitelesítéshez használt cookie, ugyanis egy támadó eltulajdoníthatja vagy felhasználhatja ezeket az információkat a kliens megszemélyesítésére vagy egy visszajátszásos támadásra. A megoldás a kommunikációs csatorna titkosítása, amely a Secure Sockets Layer (SSL) protokoll segítségével történhet.
Az SSL működéséhez a webkiszolgálónak egy tanúsítványra van szüksége, amelyet jobb esetben egy tanúsítvány szolgáltatótól (certificate authority, CA) célszerű vásárolni. Egyszerűbb esetekben megengedhetjük magunknak, hogy úgynevezett önaláírt tanúsítványt használunk, a titkosítást ugyanis ez is biztosítja.
Miután megvan a tanúsítvány, még engedélyeznünk kell, hogy egy adott webhely a HTTPS protokollhoz rendelt 443 porton is elérhető legyen, ez az ún. binding.
Demó
A demóban előbb bemutatjuk, hogyan hozhatunk létre önaláírt tanúsítvány az IIS Manager segítségével, majd hozzárendeljük azt egy webhelyhez, végül pedig kikényszerítjük, hogy a kliens SSL csatornán keresztül kapcsolódjon a webhelyhez.
A videó a képre kattintva megtekinthető böngészőben vagy a kép alatti linkre kattintva letölthető:
Letöltés: SSL.wmv (12:16, 50.8 MB)
Első lépések
Első lépésként szerezzünk be egy hiteles tanúsítványt, vagy ha csak kísérletezünk, akkor használjuk az IIS Manager Server Certificates moduljában a Create Self-Signed Certificate gombot egy önaláírt tanúsítvány előállítására. Ezek után nyissuk meg egy webhelyen a Bindings… ablakot és rendeljük hozzá a webhelyhez a https protokollt és a 443 portot a korábban létrehozott tanúsítvánnyal.
Jó tudni
Az IIS Managerben lévő Create Self-Signed Certificate varázsló nem kérdezi meg, hogy milyen név szerepeljen a tanúsítványon. Ha tehát a webkiszolgálónk több néven is elérhető, nem fogjuk tudni megadni, hogy melyik névre szóljon a tanúsítvány.
Ha a tanúsítvány létrehozásakor meg szeretnénk adni a tanúsítvány paramétereit, akkor célszerű az IIS Manager beépített szolgáltatása helyett az IIS 6 Resource Kitben lévő SelfSSL programot használni. Ez viszont csak akkor fog működni IIS 7 alatt, ha feltelepítjük az IIS 6 Management Compatibility komponenst is.
További információk