Tips

Windows에서 HTTPS 테스트 방법 (개발용 SSL 인증서 사용)

mingmingIT 2025. 4. 9. 10:53

1. OpenSSL 설치

설치 방법

  1. https://slproweb.com/products/Win32OpenSSL.html 접속
  2. Win64 OpenSSL v3.x.x 버전 다운로드 (Light 말고 Full 설치 권장)
  3. 설치 중 다음 옵션 확인:
    • "Copy OpenSSL DLLs to The Windows system directory" 체크
    • 설치 후 시스템 환경 변수에 C:\Program Files\OpenSSL-Win64\bin 추가

설치 확인:

cmd
openssl version

2. SSL 인증서 발급

cmd 또는 PowerShell에서 아래 명령어 실행:

cmd
openssl genrsa -out dev.key 2048
openssl req -new -key dev.key -out dev.csr
openssl x509 -req -days 365 -in dev.csr -signkey dev.key -out dev.crt
  • dev.key: 개인키
  • dev.csr: 인증서 요청 파일
  • dev.crt: 최종 SSL 인증서

CSR 만들 때 입력하는 Common Name은 반드시 localhost로 해야 합니다.

(브라우저에서 접근할 때 경고를 줄일 수 있어요.)


3. Node.js HTTPS 서버 만들기 (Express 예시)

server.js 파일 생성:

js

const https = require('https');
const fs = require('fs');
const express = require('express');

const app = express();

const options = {
  key: fs.readFileSync('dev.key'),
  cert: fs.readFileSync('dev.crt'),
};

app.get('/', (req, res) => {
  res.send('🔐 HTTPS 서버 작동 중!');
});

https.createServer(options, app).listen(3000, () => {
  console.log('HTTPS 서버 실행 중: https://localhost:3000');
});

설치 필요한 패키지:

cmd

npm init -y
npm install express

실행:

cmd

node server.js

4. 브라우저에서 테스트

  • 브라우저에서 접속: https://localhost:3000
  • 주의: 경고 페이지가 뜰 수 있습니다. 이는 인증서가 자체 서명이기 때문입니다.
    • Chrome/Edge: 고급 → 계속 진행 클릭
    • Firefox: 예외 추가

5. 인증서를 로컬 신뢰 저장소에 등록 (선택 사항)

개발 편의를 위해 브라우저 경고를 없애고 싶다면, 인증서를 로컬 시스템에 등록할 수 있습니다.

방법 (Windows 기준):

  1. dev.crt 파일을 더블 클릭
  2. "인증서 설치" 클릭
  3. "로컬 컴퓨터" 선택
  4. "신뢰할 수 있는 루트 인증 기관" 선택
  5. 설치 완료 후 브라우저 재시작

🔁 요약

단계 설명
1 OpenSSL 설치
2 dev.key / dev.crt 생성
3 Node.js + Express 서버로 HTTPS 구성
4 브라우저에서 https://localhost 접속
5 (선택) 인증서 시스템에 등록