SSL : setup
🧰 Step-by-step Guide: SSL with Express on Windows
🔧 প্রথমে OpenSSL ইনস্টল করো:
✅ Step 1: Install OpenSSL in Windows
-
এই লিঙ্কে গিয়ে Windows version এর জন্য OpenSSL ডাউনলোড করো:
👉 https://slproweb.com/products/Win32OpenSSL.html -
ডাউনলোডের সময় "The Light version" বেছে নাও (যেটা শুধু কমান্ড লাইন টুলস দেয়)।
-
ইন্সটল করার সময় এই অপশনগুলো ঠিক রাখো:
Install OpenSSL binaries to:
C:\OpenSSL-Win64\
-
Add OpenSSL to the system PATH (চেকবক্সে টিক দাও)
ইন্সটল শেষে, CMD তে গিয়ে টাইপ করো:
openssl version
যদি ভার্সন দেখায়, তাহলে ইনস্টল সাকসেসফুল!
🔐 Step 2: Generate SSL Certificate and Key
CMD (Command Prompt) চালাও এবং এই কমান্ডগুলো দাও:
openssl genrsa -out key.pem 2048
openssl req -new -key key.pem -out csr.pem
এটা চালালে কিছু ইনফো চাইবে যেমন:
Country Name
-
State
-
Organization Name
-
Common Name (এখানে লেখো:
localhost
)
openssl x509 -req -days 365 -in csr.pem -signkey key.pem -out cert.pem
এখন তোমার কাছে তিনটি ফাইল থাকবে:
key.pem
✅ (Private Key)-
csr.pem
(Request file – এখন আর লাগবে না) -
cert.pem
✅ (Self-signed Certificate)
🧪 Step 3: Express.js এ HTTPS সার্ভার তৈরি করো
let express = require("express");
let fs = require("fs");
let https = require("https");
let app = express();
// Static files or routes
app.get("/", (req, res) => {
res.send("This is a secure HTTPS server 😎");
});
// SSL credentials
let options = {
key: fs.readFileSync("key.pem"),
cert: fs.readFileSync("cert.pem")
};
// HTTPS server
https.createServer(options, app).listen(443, () => {
console.log("HTTPS Server running on https://localhost");
});
⚠️ ব্রাউজারে গেলে localhost
কে না চিনে "Not secure" বা warning দেখাতে পারে।
কারণ, এটা self-signed certificate। কিন্তু local development এর জন্য এটা ঠিক আছে।