クライアント/サーバー間の通信を暗号化するために SSL/TLS を使用する

January 23, 2021 · View on GitHub



一段落説明

Let'sEncrypt のような、無料で証明書を発行してくれるサービスを利用することで、アプリケーションの通信を暗号化することができます。Express のような Node.js フレームワーク(httpsコアモジュールをベースにしている)は SSL/TLS をサポートしており、数行のコードで実装することができます。

また、NGINX や HAProxy のようなリバースプロキシを用いて SSL/TLS 化することもできます。



コード例 – Express を使用して SSL/TLS を有効化する

const express = require('express');
const https = require('https');
const app = express();
const options = {
    // ファイルのパスは環境によって異なります
    cert: fs.readFileSync('./sslcert/fullchain.pem'),
    key: fs.readFileSync('./sslcert/privkey.pem')
};
https.createServer(options, app).listen(443);