🛡️ dotnet dev-certs로 로컬 HTTPS 인증서 만들고 설치하기 (+삭제 방법)
로컬 개발 환경에서 HTTPS를 적용할 때,
**자체 서명된 인증서(Self-Signed Certificate)**를 만들어 사용하는 것이 필수입니다.
# 1) dev-certs PFX 파일로 내보내기
dotnet dev-certs https -ep localhost.pfx -p password
# 2) 개인(My) 저장소에 설치
Import-PfxCertificate -FilePath localhost.pfx `
-CertStoreLocation Cert:\LocalMachine\My `
-Password (ConvertTo-SecureString "password" -AsPlainText -Force)
# 3) 신뢰된 루트(Root) 저장소에 설치
Import-PfxCertificate -FilePath localhost.pfx `
-CertStoreLocation Cert:\LocalMachine\Root `
-Password (ConvertTo-SecureString "password" -AsPlainText -Force)
이번 글에서는:
- dotnet dev-certs를 이용해 PFX 파일을 만들고
- Windows 인증서 저장소에 설치하고
- 필요 시 완전히 삭제하는 방법까지 정리해보겠습니다.
✨ 1. dotnet dev-certs로 PFX 파일 생성하기
.NET SDK에는 기본적으로 dotnet dev-certs 명령어가 포함되어 있어, 간단하게 인증서를 생성할 수 있습니다.
dotnet dev-certs https -ep localhost.pfx -p password
➡️ 설명
- -ep: 생성할 PFX 파일 경로 (예: localhost.pfx)
- -p: PFX 파일을 보호할 비밀번호
✅ 명령어 실행 후, 현재 디렉터리에 localhost.pfx 파일이 생성됩니다.
✨ 2. 인증서를 Windows 인증서 저장소에 설치하기
2-1. "개인(My)" 저장소에 설치
Import-PfxCertificate -FilePath localhost.pfx `
-CertStoreLocation Cert:\LocalMachine\My `
-Password (ConvertTo-SecureString "password" -AsPlainText -Force)
- 서버(IIS, Kestrel 등)에서 사용할 수 있도록 인증서를 등록합니다.
2-2. "신뢰된 루트(Root)" 저장소에 설치
Import-PfxCertificate -FilePath localhost.pfx `
-CertStoreLocation Cert:\LocalMachine\Root `
-Password (ConvertTo-SecureString "password" -AsPlainText -Force)
- 브라우저가 "보안 경고 없이" 인증서를 신뢰하도록 등록합니다.
✅ 이 두 저장소에 모두 등록하면, 로컬 개발 환경에서 HTTPS를 완벽하게 사용할 수 있습니다.
🗑️ 3. 로컬 인증서 삭제하는 방법
개발이 끝나거나 인증서를 새로 만들어야 할 경우, 기존 인증서를 정리해줘야 합니다.
3-1. Subject에 localhost가 포함된 인증서 모두 삭제
개인(My) 저장소에서:
Get-ChildItem Cert:\LocalMachine\My |
Where-Object { $_.Subject -like "*localhost*" } |
Remove-Item
신뢰된 루트(Root) 저장소에서:
Get-ChildItem Cert:\LocalMachine\Root |
Where-Object { $_.Subject -like "*localhost*" } |
Remove-Item
✅ 이 방법은 **Subject에 'localhost'**가 들어간 모든 인증서를 일괄 삭제합니다.
3-2. Thumbprint로 특정 인증서 삭제
# 개인 저장소 조회
Get-ChildItem Cert:\LocalMachine\My | Select-Object Subject, Thumbprint
# 신뢰된 루트 저장소 조회
Get-ChildItem Cert:\LocalMachine\Root | Select-Object Subject, Thumbprint
인증서의 Thumbprint(지문)가 있는 경우, 정확히 하나만 제거할 수도 있습니다.
$tp = "YOUR_CERT_THUMBPRINT".Replace(" ", "")
# 개인 저장소(My)에서 제거
Remove-Item Cert:\LocalMachine\My\$tp
# 신뢰된 루트(Root)에서 제거
Remove-Item Cert:\LocalMachine\Root\$tp
✅ Thumbprint로 삭제하면 다른 인증서에 영향을 주지 않고 정확히 원하는 인증서만 제거할 수 있습니다.
🎯 정리
구분 명령어 요약
PFX 파일 생성 | dotnet dev-certs https -ep 파일경로 -p 비밀번호 |
저장소 설치 | Import-PfxCertificate 사용 |
인증서 삭제 | Get-ChildItem + Remove-Item 또는 Thumbprint 직접 삭제 |
로컬 HTTPS 개발 환경을 깔끔하게 세팅하고 관리하는데 이 과정들이 꼭 필요합니다!
이 방법을 알고 있으면, 프로젝트 변경이나 새 인증서 적용 시 훨씬 빠르게 작업할 수 있어요. 🚀
✏️ 추가 Tip
- PowerShell은 반드시 관리자 권한으로 실행해야 합니다.
- 비밀번호는 "password" 대신 복잡하고 안전한 비밀번호로 변경하는 것을 추천합니다.
- Thumbprint는 PowerShell로 쉽게 조회할 수 있습니다:
'기타' 카테고리의 다른 글
로컬 개발용 SSL 인증서 만들기: PowerShell로 localhost 인증서 생성하기 (0) | 2025.04.28 |
---|---|
원격데스크탑 포트 변경 (1) | 2024.11.12 |
WOL, WoWLAN 적용 기록 (0) | 2024.09.09 |
구글클라우드 환불 받는방법, 무료크레딧 이후 유료계정 전환된 상황, 10만원결제됨, 구글클라우드 고객센터 (0) | 2024.03.20 |