Setelah menginstal node.js di sistem, kita bisa mengikuti prosedur di bawah ini untuk menjalankan server web dasar dengan dukungan untuk HTTP dan HTTPS!
Langkah 1: Bangun Otoritas Sertifikat
1. buat folder/direktori di Documents/nodejs untuk menyimpan kunci & sertifikat kita:mkdir conf
2. buka direktori itu:
cd conf
3. ambil file ca.cnf ini untuk digunakan sebagai konfigurasi:
wget https://raw.githubusercontent.com/anders94/https-authorized-clients/master/keys/ca.cnf
4. buat otoritas sertifikat baru menggunakan konfigurasi ini:
openssl req -new -x509 -days 9999 -config ca.cnf -keyout ca-key.pem -out ca-cert.pem
5. sekarang setelah memiliki otoritas sertifikat di ca-key.pem dan ca-cert.pem, mari buat private key untuk server:
openssl genrsa -out key.pem 4096
6. ambil file server.cnf ini untuk digunakan sebagai konfigurasi:
wget https://raw.githubusercontent.com/anders94/https-authorized-clients/master/keys/server.cnf
7. hasilkan permintaan penandatanganan sertifikat menggunakan konfigurasi ini:
openssl req -new -config server.cnf -key key.pem -out csr.pem
8. menandatangani permintaan:
openssl x509 -req -extfile server.cnf -days 999 -passin "pass:password" -in csr.pem -CA ca-cert.pem -CAkey ca-key.pem -CAcreateserial -out cert.pem
Langkah 2: Instal sertifikat sebagai sertifikat root
1. salin sertifikat ke folder sertifikat root kita:sudo cp ca-cert.pem /usr/local/share/ca-certificates/ca-cert.pem
2. perbarui CA store:
sudo update-ca-certificates
Langkah 3: Memulai server Node
Pertama, kita membuat file server.js di Documents/nodejs yang berisi kode server yang sebenarnya.Pengaturan minimal untuk server HTTPS di NodeJS akan menjadi seperti ini:
var https = require('https');
var fs = require('fs');
var httpsOptions = {
key: fs.readFileSync('conf/key.pem'),
cert: fs.readFileSync('conf/cert.pem')
};
var app = function (req, res) {
res.writeHead(200);
res.end("hello world\n");
}
https.createServer(httpsOptions, app).listen(4433);
Jika kita juga ingin mendukung permintaan http, kita hanya perlu membuat modifikasi kecil ini:
var http = require('http');
var https = require('https');
var fs = require('fs');
var httpsOptions = {
key: fs.readFileSync('conf/key.pem'),
cert: fs.readFileSync('conf/cert.pem')
};
var app = function (req, res) {
res.writeHead(200);
res.end("hello world\n");
}
http.createServer(app).listen(8888);
https.createServer(httpsOptions, app).listen(4433);
1. pergi ke direktori di mana server.js berada:
cd /path/to
2. jalankan server.js:
node server.js
Kembali ke Tutorial NodeJS : Membedah Ebook NodeJS Notes For Professionals
