로컬 SSL 인증서를 생성하는 방법은 무엇입니까?

로컬 SSL 인증서를 생성하는 방법은 무엇입니까?

2022-10-05 last update

4 minutes reading ssl react gatsby node

These commands has been tested in linux.



프로젝트 루트 폴더에서 다음을 실행합니다.

openssl req -x509 -newkey rsa:2048 -keyout keytmp.pem -out cert.pem -days 365


그런 다음 다음을 실행합니다.

openssl rsa -in keytmp.pem -out key.pem


이제 프로젝트 루트 폴더에 cert.pemket.pem가 있어야 합니다.


Node.JS/Express를 사용하는 경우 다음을 사용하여 인증서와 키를 로드할 수 있습니다.

const express = require("express");
const https = require("https");

const app = express();

app.get("/", (req, res) => {
  res.json({
    message: "Hello",
  });
});

https
  .createServer(
    {
      key: fs.readFileSync("key.pem"),
      cert: fs.readFileSync("cert.pem"),
    },
    app
  )
  .listen(3000, () => {
    console.log("Listening..");
  });



또는 create-react-app을 사용하는 경우 package.json에서 시작 스크립트를 수정합니다.

"start": "export HTTPS=true&&SSL_CRT_FILE=cert.pem&&SSL_KEY_FILE=key.pem react-scripts start",



또는 Gatsby 사용:

gatsby develop --https --key-file ./key.pem --cert-file ./cert.pem