[Windows 11] OpenSSL 4.0.2 설치 및 환경 변수 설정 방법
[Windows 11] OpenSSL 4.0.2 설치 및 환경 변수 설정 방법
Windows 개발 환경에서 HTTPS, SSL/TLS 인증서, CSR, 개인키, 인증서 변환 등의 작업을 하다 보면 OpenSSL 명령줄 도구가 필요한 경우가 있습니다.
이번 글에서는 Windows 11 64비트 환경에서 OpenSSL 4.0.2를 설치하고, PATH 환경 변수를 설정한 다음 정상적으로 동작하는지 확인하는 방법을 정리합니다.
- Windows 11
- 64비트 Windows
- OpenSSL 4.0.2
- Shining Light Productions Windows 바이너리
- PowerShell / Windows Terminal
참고: OpenSSL 프로젝트는 소스 코드를 제공하며, Windows용 설치 프로그램은 별도의 Windows 바이너리 배포처를 통해 제공됩니다. Shining Light Productions는 Windows용 Win32/Win64 OpenSSL 설치 프로그램을 제공하는 대표적인 배포처입니다.
1. OpenSSL이란?
OpenSSL은 TLS/SSL과 다양한 암호화 기능을 제공하는 오픈소스 프로젝트입니다.
Windows에서 개발자가 가장 많이 사용하는 것은 openssl.exe 명령줄 도구입니다.
예를 들어 다음과 같은 작업에 사용할 수 있습니다.
- SSL/TLS 인증서 확인
- CSR(Certificate Signing Request) 생성
- 개인키(Private Key) 생성
- 인증서 정보 확인
- PEM / DER 등의 인증서 형식 처리
- PKCS#12 파일 처리
- SSL/TLS 연결 테스트
- 암호화 및 복호화 테스트
2. Windows용 OpenSSL 다운로드
Windows에서 사용할 OpenSSL 바이너리는 Shining Light Productions 에서 다운로드할 수 있습니다.
다운로드 페이지:
https://slproweb.com/products/Win32OpenSSL.html
Shining Light Productions는 Windows용 Win32/Win64 OpenSSL 설치 프로그램을 제공하고 있으며, 설치 프로그램을 이용하면 별도의 소스 컴파일 없이 OpenSSL을 설치할 수 있습니다.
3. OpenSSL 4.0.2 다운로드
Windows 11의 일반적인 Intel/AMD 64비트 PC라면 다운로드 페이지에서 Win64 OpenSSL 계열을 선택합니다.
일반적인 CLI 사용 목적이라면 다음과 같은 Light 버전을 선택하면 됩니다.
Win64 OpenSSL v4.0.2 Light
일반적인 인증서 생성, CSR 생성, 개인키 생성, 인증서 확인 등의 작업에는 Light 버전으로 충분한 경우가 많습니다.
Shining Light Productions의 현재 안내에 따르면 OpenSSL 4.0.x는 최신 기능을 제공하지만 LTS(Long Term Support) 계열은 아닙니다. 현재 최신 LTS 계열은 3.5.x로 안내되고 있습니다. 따라서 운영 환경이나 특정 애플리케이션의 호환성이 중요한 경우에는 사용 중인 소프트웨어가 지원하는 OpenSSL 버전을 먼저 확인해야 합니다.
4. Windows 11이 64비트인지 확인
OpenSSL을 다운로드하기 전에 현재 Windows가 64비트 운영체제인지 확인할 수 있습니다.
방법 1. Windows 설정에서 확인
다음 메뉴로 이동합니다.
설정
→ 시스템
→ 정보
→ 시스템 종류
여기에서 64비트 운영 체제라고 표시되는지 확인합니다.
방법 2. PowerShell에서 확인
PowerShell을 실행한 후 다음 명령을 입력합니다.
[Environment]::Is64BitOperatingSystem
결과가 다음과 같다면 64비트 Windows입니다.
True
5. Visual C++ Redistributable 확인
Windows용 OpenSSL 바이너리를 실행하기 위해 Microsoft Visual C++ Redistributable이 필요한 경우가 있습니다.
설치 과정에서 Visual C++ Redistributable 관련 메시지가 나타난다면 Microsoft 공식 페이지에서 필요한 런타임을 설치합니다.
Microsoft Visual C++ Redistributable 공식 페이지
이미 필요한 Visual C++ 런타임이 설치되어 있다면 중복으로 설치할 필요는 없습니다.
6. OpenSSL 4.0.2 설치
다운로드한 OpenSSL 설치 프로그램을 실행합니다.
파일명은 다운로드한 패키지에 따라 달라질 수 있지만 일반적으로 다음과 같은 형태입니다.
Win64OpenSSL_Light-4_0_2.exe
다운로드한 실제 파일명을 기준으로 설치 프로그램을 실행합니다.
7. License Agreement
설치 프로그램이 실행되면 라이선스 동의 화면이 표시됩니다.
라이선스를 확인한 후 다음 항목을 선택합니다.
I accept the agreement
선택 후 Next를 클릭합니다.
8. 설치 경로 선택
설치 경로를 선택합니다.
예를 들어 다음과 같은 경로를 사용할 수 있습니다.
C:\Program Files\OpenSSL-Win64
위 경로를 무조건 사용한다고 가정하지 마세요. 설치 프로그램에 실제로 표시되는 경로를 확인하고, 이후 환경 변수 설정에서도 실제 설치 경로를 사용해야 합니다.
가장 안전한 순서는 다음과 같습니다.
설치 프로그램에서 실제 설치 경로 확인
↓
bin 폴더 확인
↓
openssl.exe 확인
↓
실제 bin 경로를 PATH에 등록
9. DLL 설치 위치 선택
설치 과정에서 OpenSSL DLL 파일을 어디에 설치할 것인지 선택하는 화면이 나타날 수 있습니다.
설치 프로그램에서 제공하는 선택지를 확인한 후 일반적인 개발 환경에서는 OpenSSL 바이너리 디렉터리를 사용하는 방식을 선택하는 것이 좋습니다.
단, 설치 프로그램의 버전에 따라 화면과 문구가 달라질 수 있으므로 현재 설치 화면에 표시되는 실제 선택지를 기준으로 진행하는 것이 좋습니다.
10. 설치 완료
설치 준비 화면에서 Install을 클릭합니다.
설치가 완료되면 Finish를 클릭합니다.
이제 OpenSSL 설치 자체는 완료되었습니다.
하지만 아직 터미널에서 다음 명령을 바로 실행할 수 없을 수도 있습니다.
openssl version
OpenSSL 실행 파일이 있는 디렉터리가 Windows의 PATH 환경 변수에 등록되어 있지 않을 수 있기 때문입니다.
11. 먼저 openssl.exe의 실제 위치 확인
환경 변수를 설정하기 전에 가장 먼저 확인해야 할 것은 실제 openssl.exe의 위치입니다.
설치한 OpenSSL 디렉터리를 Windows 탐색기에서 확인합니다.
예를 들어 다음과 같은 구조라면:
C:\Program Files\OpenSSL-Win64
└─ bin
└─ openssl.exe
PATH에는 파일 자체가 아니라 bin 디렉터리를 등록합니다.
C:\Program Files\OpenSSL-Win64\bin
12. Windows 11 환경 변수 설정
이제 OpenSSL의 bin 디렉터리를 PATH에 등록합니다.
가장 빠른 방법은 다음과 같습니다.
Win + R
실행 창에 다음을 입력합니다.
sysdm.cpl
Enter를 누릅니다.
13. 환경 변수 화면 열기
시스템 속성 화면에서 다음 순서로 이동합니다.
고급
→ 환경 변수
환경 변수 화면에는 다음 두 영역이 있습니다.
- 사용자 변수
- 시스템 변수
현재 사용자만 OpenSSL을 사용할 경우 사용자 변수의 Path에 등록할 수 있습니다.
모든 사용자에게 적용하려면 시스템 변수의 Path에 등록합니다.
14. Path에 OpenSSL 등록
Path를 선택하고 편집을 클릭합니다.
새로 만들기를 클릭한 다음 실제 OpenSSL의 bin 디렉터리를 입력합니다.
C:\Program Files\OpenSSL-Win64\bin
그리고 확인을 눌러 저장합니다.
15. OPENSSL_CONF는 반드시 설정해야 할까?
기존 Windows OpenSSL 설치 가이드에서는 다음과 같은 환경 변수를 설정하도록 안내하는 경우가 많습니다.
OPENSSL_CONF
그리고 다음과 같은 설정 파일 경로를 지정하는 방식입니다.
C:\Program Files\OpenSSL-Win64\bin\cnf\openssl.cnf
하지만 OpenSSL 4.0.2를 설치했다고 해서 모든 사용자가 OPENSSL_CONF를 반드시 직접 설정해야 하는 것은 아닙니다.
따라서 이번 가이드에서는 OPENSSL_CONF를 무조건 시스템 환경 변수로 추가하지 않습니다.
먼저 OpenSSL이 실제로 어떤 설정 및 빌드 정보를 사용하는지 확인하는 것이 좋습니다.
16. OpenSSL 설정 및 빌드 정보 확인
새 PowerShell을 실행한 후 다음 명령을 실행합니다.
openssl version -a
이 명령으로 OpenSSL의 상세 버전 및 빌드 정보를 확인할 수 있습니다.
출력 결과에서 다음과 같은 항목을 확인할 수 있습니다.
OPENSSLDIR
ENGINESDIR
MODULESDIR
특히 OpenSSL 설치 경로나 설정 관련 문제를 확인할 때 유용합니다.
17. OpenSSL 4.0.2 버전 확인
환경 변수 설정을 완료했다면 기존 터미널을 닫고 새로운 PowerShell을 실행합니다.
다음 명령을 실행합니다.
openssl version
정상적으로 설치되었다면 다음과 같이 OpenSSL 버전이 출력됩니다.
OpenSSL 4.0.2 ...
뒤쪽의 빌드 정보는 사용하는 Windows 바이너리 패키지에 따라 달라질 수 있습니다.
18. 상세 버전 정보 확인
다음 명령을 실행합니다.
openssl version -a
다음과 같은 정보를 확인할 수 있습니다.
- OpenSSL 버전
- 빌드 날짜
- 플랫폼
- 컴파일 정보
- OPENSSLDIR
- ENGINESDIR
- MODULESDIR
19. 실제 어떤 openssl.exe가 실행되는지 확인
Windows 개발 환경에서는 OpenSSL이 여러 개 설치되어 있을 수 있습니다.
예를 들어 다음과 같은 프로그램에 OpenSSL이 포함되어 있을 수 있습니다.
- Git
- OpenSSL 별도 설치본
- 다른 개발 도구
- 기존 OpenSSL 설치본
따라서 현재 실제로 실행되는 OpenSSL의 위치를 확인하는 것이 중요합니다.
PowerShell
Get-Command openssl
CMD
where openssl
예를 들어 다음과 같은 결과가 출력될 수 있습니다.
C:\Program Files\OpenSSL-Win64\bin\openssl.exe
이 경우 현재 PATH를 통해 해당 OpenSSL이 실행되고 있다는 의미입니다.
20. 여러 OpenSSL이 설치되어 있는 경우
다음과 같이 여러 경로가 출력될 수도 있습니다.
C:\Program Files\Git\usr\bin\openssl.exe
C:\Program Files\OpenSSL-Win64\bin\openssl.exe
이 경우 PATH의 순서에 따라 먼저 발견되는 openssl.exe가 실행될 수 있습니다.
따라서 다음 명령의 결과가 기대한 OpenSSL 4.0.2와 다르다면 먼저 실행 파일 위치를 확인합니다.
where openssl
OpenSSL 버전 문제를 해결하기 전에 어떤 openssl.exe가 실행되고 있는지 먼저 확인하는 것이 중요합니다.
21. OpenSSL 4.0.2 설치 최종 검증
다음 명령을 순서대로 실행합니다.
① 버전 확인
openssl version
② 상세 정보 확인
openssl version -a
③ 실행 파일 위치 확인
Get-Command openssl
또는 CMD에서:
where openssl
위 세 가지 명령이 정상적으로 실행되고 원하는 OpenSSL 버전과 실행 파일 경로가 확인된다면 기본적인 OpenSSL 설치 및 PATH 설정이 완료된 것입니다.
22. openssl 명령을 찾을 수 없는 경우
다음과 같은 오류가 발생할 수 있습니다.
openssl : The term 'openssl' is not recognized...
또는 CMD에서:
'openssl' is not recognized as an internal or external command
이 경우 다음 순서로 확인합니다.
① openssl.exe 존재 여부 확인
설치 폴더에 openssl.exe가 실제로 존재하는지 확인합니다.
② bin 디렉터리 확인
C:\Program Files\OpenSSL-Win64\bin
③ PATH 확인
PowerShell에서:
$env:Path
출력 결과에 OpenSSL의 bin 디렉터리가 포함되어 있는지 확인합니다.
④ 터미널 재시작
환경 변수를 변경했다면 기존 PowerShell 또는 Windows Terminal을 완전히 종료합니다.
그리고 새로운 터미널을 실행합니다.
⑤ 다시 확인
Get-Command openssl
openssl version
23. 환경 변수 변경 후 터미널을 다시 실행해야 하는 이유
Windows에서 실행 중인 프로세스는 실행 시점의 환경 변수를 가지고 시작합니다.
따라서 PATH를 변경한 뒤 기존 PowerShell 창에서 바로 확인하면 변경된 PATH가 반영되지 않을 수 있습니다.
환경 변수를 변경했다면 다음 순서로 확인합니다.
기존 CMD 종료
기존 PowerShell 종료
기존 Windows Terminal 종료
↓
새 터미널 실행
↓
openssl version
24. winget으로 OpenSSL 설치하기
Windows 11에서는 winget을 이용하여 OpenSSL을 설치할 수도 있습니다.
먼저 OpenSSL 패키지를 검색합니다.
winget search OpenSSL
검색 결과에서 원하는 패키지의 ID를 확인합니다.
Shining Light Productions 패키지가 다음 ID로 표시되는 경우:
ShiningLight.OpenSSL
다음과 같이 설치할 수 있습니다.
winget install -e --id ShiningLight.OpenSSL
설치가 끝난 후 새로운 터미널에서 다음 명령으로 확인합니다.
openssl version
그리고 실제 실행 파일 위치를 확인합니다.
Get-Command openssl
winget으로 설치했다고 해서 설치 메시지만 보고 정상적인 OpenSSL 버전이 실행되고 있다고 단정하지 않는 것이 좋습니다.
설치 후 openssl version과 Get-Command openssl로 실제 실행 환경을 확인하세요.
25. OpenSSL 4.0.2 설치 과정 요약
Windows 11
↓
64비트 여부 확인
↓
Win64 OpenSSL 4.0.2 Light 다운로드
↓
설치 프로그램 실행
↓
설치 경로 확인
↓
bin 폴더에서 openssl.exe 확인
↓
bin 폴더를 PATH에 등록
↓
터미널 재실행
↓
openssl version
↓
openssl version -a
↓
Get-Command openssl
↓
설치 완료
26. 설치 후 자주 사용하는 명령어
OpenSSL 버전 확인
openssl version
상세 정보 확인
openssl version -a
실제 실행 파일 위치 확인 - PowerShell
Get-Command openssl
실제 실행 파일 위치 확인 - CMD
where openssl
27. 설치 완료 최종 체크리스트
- ✓ Windows 11 64비트 확인
- ✓ Win64 OpenSSL 4.0.2 Light 다운로드
- ✓ OpenSSL 설치 완료
- ✓ openssl.exe 존재 확인
- ✓ OpenSSL bin 디렉터리 확인
- ✓ PATH 등록
- ✓ 기존 터미널 종료
- ✓ 새 PowerShell 실행
- ✓ openssl version 실행
- ✓ openssl version -a 실행
- ✓ Get-Command openssl 실행
마무리
Windows 11에서 OpenSSL 4.0.2를 설치할 때 중요한 것은 단순히 설치 프로그램을 실행하는 것만이 아닙니다.
다음 세 가지를 확인하는 것이 핵심입니다.
- openssl.exe가 실제로 설치되었는가?
- openssl.exe가 있는 bin 디렉터리가 PATH에 등록되었는가?
- 내가 의도한 OpenSSL 버전이 실제로 실행되고 있는가?
특히 개발 PC에서는 Git이나 다른 프로그램에 포함된 OpenSSL이 이미 존재할 수 있기 때문에 다음 명령으로 실제 실행 파일을 확인하는 습관을 추천합니다.
Get-Command openssl
또는 CMD에서는:
where openssl
OpenSSL 자체의 상세 정보는 다음 명령으로 확인할 수 있습니다.
openssl version -a
이제 Windows 11에서 OpenSSL 4.0.2의 기본적인 설치와 실행 환경이 준비되었습니다.
이후에는 OpenSSL을 이용하여 개인키 생성 → CSR 생성 → 인증서 확인 → PKCS#12/PFX 변환 → HTTPS 인증서 테스트 등의 작업을 진행할 수 있습니다.
대화 참여하기