ssl
parent
4ee290c123
commit
c82470971b
@ -0,0 +1,42 @@
|
|||||||
|
# Quick Guide of SSL
|
||||||
|
|
||||||
|
* Prerequisites
|
||||||
|
* [OpenSSL](https://www.openssl.org/) tool
|
||||||
|
* Openssl is preinstall on Linux / MacOS / Git Bash
|
||||||
|
* For windows, need to build the binary. Alternatively, use Git Bash (Install Git)
|
||||||
|
* Generate SSL key And cert
|
||||||
|
|
||||||
|
```sh
|
||||||
|
$ openssl req -new -newkey rsa:2048 -nodes -keyout server.key -out server.csr
|
||||||
|
|
||||||
|
// more sample
|
||||||
|
$ openssl req -newkey rsa:2048 -nodes -keyout key.pem -x509 -days 365 -out certificate.pem
|
||||||
|
```
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
## Node JS implementation
|
||||||
|
|
||||||
|
* Reference Code for secure server
|
||||||
|
* Place key and cert file in the `cert` folder of the nodejs project
|
||||||
|
|
||||||
|
```js
|
||||||
|
const express = require('express');
|
||||||
|
const https = require('https');
|
||||||
|
const path = require('path');
|
||||||
|
const fs = require('fs');
|
||||||
|
|
||||||
|
const app = express();
|
||||||
|
|
||||||
|
app.use('/', (req, res, next) => {
|
||||||
|
res.send('Hello from SSL Server');
|
||||||
|
});
|
||||||
|
|
||||||
|
const sslServer = https.createServer({
|
||||||
|
key: fs.readFileSync(path.join(__dirname, 'cert', 'server.key')),
|
||||||
|
cert: fs.readFileSync(path.join(__dirname, 'cert', 'server.csr))
|
||||||
|
}, app);
|
||||||
|
|
||||||
|
sslServer.listen(3443, () => console.log('Secure Server on port 3443'));
|
||||||
|
```
|
||||||
|
|
||||||
Loading…
Reference in New Issue