Merhaba,
Sunucu geçişlerinde karşılaşılan bir problem olan SSL geçişinde yardımcı ve Türkçe içerik olması adına bu makaleyi yazıyorum. Bu makale, IIS üzerinde bulunan bir SSL’in, başka bir IIS yapısına import edilmesini anlatmaktadır. Farklı platformda (Linux -Apache veya Nginx için-) SSL’i import edebilmeniz için private keye de ihtiyacınız var ancak bu başka bir makalenin konusu. 🙂
Öncelikle çalışan sitenizde SSL varsa yeniden SSL almanıza gerek yok. Dolar kurunu da düşünürsek gereksiz maliyet yaratacaktır. SSL taşıması yapmak için, öncelikle sitenizin çalıştığı sunucuya bağlanıp IIS’i açmalısınız. IIS’i açtığınızda sunucu adına tıklayın ve sağ framede Server Certificates’e tıklayın.
Sonraki sekmede sertifikanızı seçin ve sağ framede açılan Export butonuna tıklayın.
Bu alanda size export ettiğiniz sertifikayı nereye ve hangi isimle export etmek istediğinizi soracaktır. (1’nci alan) Diğer iki alanda da bu pfx’in çalınmaması adına IIS şifre girmenizi isteyecektir. 1234 demeniz bile yeterlidir.
Export to: dediğiniz alanda işlem sonunda dosyayı görebilirsiniz. Buraya kadar ki kısım IIS üzerinde bulunan SSL’i export etmek üzerineydi. Şimdi ki kısımda yeni sunucunuzda bu SSL’i import etmek üzerinedir. Şimdi yeni sunucunuza login olup, IIS’i açın ve yine Server Certificates kısmına gelin. Sağ tarafta açılan framede, “Complete Certificate Request…” diye bir link göreceksiniz. Ona tıklayın ve size aşağıdaki gibi bir pencere açacaktır. Görselde belirttiğim şekilde işlemi gerçekleştirin. Önemli bir detay var: Eğer SSL’i bir subdomain için aldıysanız Friendly Name: kısmına subdomain.siteismi.com olarak eklemelisiniz. Ben ana domainim için aldığım için www.vahap.net olarak ekledim. Diğer bir nokta da eğer aldığınız SSL Wildcard SSL ise (subdomainleri de kapsıyorsa) şu şekilde Friendly Name’e eklemelisiniz: *.siteismi.com.
OK dediğinizde muhtemelen size export ederken yazdığınız şifreyi soracak. Onu yazdığınızda SSL’i yeni sunucuya import etmiş olacaksınız.
Bu işlemden sonra IIS üzerinde web sitenizin üzerine gelin ve sağ frame üzerinde Bindings…’e tıklayın.
Aşağıdaki gibi bir ekran ile karşılaşacaksınız.
Yukarıdaki adımda Require Server Name Indication seçeneğinin aktif olduğundan emin olunuz. Bu özellik, tek bir IP üzerinde birden fazla domainde SSL çalıştırmanızı sağlıyor. Bu özellikte IIS 8 veya 8.5 ile geldi. (SNI özelliği diye aratabilirsiniz.) Yukarıdaki görselde www.vahap.net olarak https:// istek gelmesini ayarladım. Bunun birde www’suz gelen isteğini ayarlamalısınız. Adım yine aynıdır, sadece Host Name: kısmına başında www olmadan site ismini yazmalısınız.
ÖNEMLİ: Eğer Wildcard SSL aldıysanız Host Name: kısmına *.siteismi.com yazmanız yeterli. İki kez eklemenize gerek yok. Eğer subdomain için SSL aldıysanız subdomain.siteismi.com olarak tek bir kayıt eklemeniz yeterlidir. Bu haliyle sitenize hem http hem de https istek geldiğinde cevaplamış olacaktır. Sitenize http gelen isteği web.config dosyanızda veya URL Rewrite modülünü yükleyerek doğrudan https’e yönlendirebilirsiniz.
Umarım zamandan kazanmanızı sağlar.