Çok sevdiğiniz bir arkadaşınız var diyelim. Onu görmek için bir şeyleri bahane edip şehirler arası ya da ülkeler arası yolculuklar yapabilirsiniz. Hatta hafta içi bir günde Çatalca’dan Pendik’e gitmeyi bile göze alabilirsiniz o derece.
Lakin arkadaşınızın ailesi çok ters kafa insanlar. “Keşke.. ” caps’lerine kapacak olacak cinsten.
Yeğenimle çok keyifli bir şeyler için uğraşıyoruz. Fakat uğraştığımız şey caps’lik aile birlikte paket olarak geliyor: Malesef NodeJS gerektiriyor.
“Ne var canım bunda, internet diye bir şey var. Öğrenmeyi bilen herkes biraz gayretle yeni bir programla dili de öğrenir Japonca da öğrenir..” denilebilir. Evet öyle ama öğrenmeye çalıştığınız dil de kelimeler ve cümleler farklı olsa tamam ama ya zaman algısı farklı ise..
tomorrow demekle now demek aynı kapıya çıkıyorsa?
Zaman kavramı karışınca işlerin nasıl karıştığına bi örnek daha vereyim;
Soğanlar pembeleştikten SONRA, içinden 100’den GERİYE doğru say sıfıra GELİNCE, ÖNCE tarhanayı koy SONRA 2 bardak su ilave et.
Şimdi yeniden sorayım; tomorrow demekle now demek aynı kapıya çıkıyorsa, Tarhana çorbasını Nasıl yaparsınız?
Çoğu Normal dilde 26. adımdaki işlem, 26. adımda gerçekleşirken NodeJS’de bu yok. O yüzden sıralı bir şeylere ihtiyacınız varsa -ki %98 böyle- sürekli iç-içe-iç-içe-iç-içe-iç-içe fonksiyonlar kullanmalısınız.
Böyle bir ortamda iken bir de SSL+HttpS+NodeJS üçlüsünün çalışması için gibi bir internetteki kaynakların %90’nın Linux’a göre anlatım yaptığını sizin de Windows sunucuda çalıştığınızı düşünün..
Notlar:
–NodeJS indir kur
–Windows için -32/64bite göre-, “openssl windows 32bit” tarzı aramalar yaparak openSSL’in güncel versiyonunu indir.
–Kurulum olduğu klasörde C:\OpenSSL-Win32\ bulunan dosyalar arasında \bin\ klasörü içinde
openssl.cfg ya da openssl.cnf dosyası bulunduğundan emin ol. Yoksa başka kaynaklardan yeniden indir.
–OpenSSL’in yer konum altından çalışabilmesi için, Ortam değişkenlerine PATH ekle.
Bilgisayarım > sağtık > özellikler > gelişmiş > Ortam değişkenleri > Sistem değişkenleri > Path > Düzenle
Satır sonuna ;C:\OpenSSL-Win32\ ekle.
–ilgili proje klasörüne Shift+Sağtık > Komut penceresini burada aç, diyerek konsolu aç
–RootSSL.key oluşturmak için şunu yaz
openssl genrsa -des3 -out rootSSL.key 2048
Sonrasında şifre soracak, iki defa şifre gir.
bu işlemin sonunda ilgili klasörde rootSSL.key dosyası oluşmuş olacak.
Bunun içinde az önce üretmiş olduğumuz Özel Anahtar bulunuyor olacak.
–Şimdi bu özel anahtarı kullanarak rootSSL.pem dosyası üretelim.
openssl req -x509 -new -nodes -key rootSSL.key -sha256 -days 1024 -out rootSSL.pem
ve pem dosyamız oluuşş..a madı.
–Konsolda şunu yazıp bulamadığı dosyanın yerini tarif edelim:
SET OPENSSL_CONF=C:\OpenSSL-Win32\bin\openssl.cfg
Sessizce ve tepkisizce çalışmış olmalı.
–Bir üstteki .pem üretme kodumuzu yeniden deneyelim:
–Common Name kısmında server/domain adı yerine localhost girilebilir.
Böylece klasörümüzde şu dosyalar mevcut olacak.
Macera ne yazık ki buradaki tıkır tıkır işlemeyebilir. Zira netteki hiç bir tutorial bana uymadı. Olayın mantığını kavrayıp; ne lazım ve bunun için nerede ne yapılması gerekiyor buna göre işlemleri yapmak en sağlıklısı.
–devam edecek–
görsel
2 thoughts on “HttpS openSSL NodeJS Windows”