728x90
반응형
1. 인증서 형식 오류 (PEM 형식 아님)
- 인증서 파일은 반드시 **PEM 형식 (Base64 인코딩)**이어야 하며, 다음과 같은 헤더가 포함되어야 합니다:
-----BEGIN CERTIFICATE-----
... (Base64 encoded content)
-----END CERTIFICATE-----
- 형식이 맞지 않으면 무시됩니다.
확인 방법:
cat /etc/pki/ca-trust/source/anchors/your-cert.crt.pem
2. 잘못된 경로에 파일을 넣음
- 유효한 경로는 다음 중 하나입니다:
- /etc/pki/ca-trust/source/anchors/ ✅ (권장)
- /etc/pki/ca-trust/source/blacklist/ ❌ (차단 리스트)
- /usr/share/pki/ca-trust-source/ (시스템 전역)
- anchors 폴더 외 경로에 넣으면 적용되지 않습니다.
3. 파일 확장자가 .crt 또는 .pem이 아님
- 파일 확장자는 반드시 .crt, .pem, .cer 중 하나여야 하며, 그렇지 않으면 무시됩니다.
✔️ 권장 예:
your-cert.crt
4. 인증서 내용이 실제로 CA 인증서가 아님
- 개인 인증서(Client Cert)나 중간 인증서가 아닌 Root 또는 Intermediate CA 인증서여야 합니다.
- openssl x509 -in cert.pem -text -noout 명령어로 Basic Constraints: CA:TRUE 여부를 확인하세요.
5. extract 실행 후 시스템에 적용 안 됨
- update-ca-trust extract는 시스템 내 /etc/ssl/certs/ca-bundle.crt 등을 갱신하지만,
- 이를 사용하는 앱(OpenSSL, curl 등)만 영향을 받음
- Java는 전혀 영향을 받지 않습니다. (cacerts 별도 관리)
빠르게 점검하는 체크리스트
항목점검
.crt 파일이 PEM 형식인가요? | ✅ |
파일에 -----BEGIN CERTIFICATE----- 헤더가 있나요? | ✅ |
anchors 폴더에 위치했나요? (/etc/pki/ca-trust/source/anchors/) | ✅ |
update-ca-trust extract를 실행했나요? | ✅ |
openssl verify로 테스트해 봤나요? | ✅ |
적용 여부 테스트
openssl verify -CAfile /etc/ssl/certs/ca-bundle.crt your-target-cert.pem
이 명령어로 시스템에 반영되었는지 테스트할 수 있습니다.
/etc/pki/ca-trust/extracted/java/cacerts 에 update-ca-trust extract로 your-cert.cer를 등록하는 방법
/etc/pki/ca-trust/extracted/java/cacerts 경로에 인증서를 등록하려는 경우, 이는 Java용 Trust Store에 해당하는 시스템 CA 통합 결과 파일입니다. 이 파일은 직접 수정하는 것이 아니라, update-ca-trust extract 명령으로 자동 생성되며, 다음 절차에 따라야 등록이 성공합니다.
목적:
update-ca-trust extract 실행 시 **/etc/pki/ca-trust/extracted/java/cacerts**에
your-cert.cer 인증서가 포함되도록 만드는 절차
등록 절차 요약
1. 인증서를 PEM 형식으로 준비
# 확인: PEM 형식인지 체크
grep "BEGIN CERTIFICATE" your-cert.cer
2. anchors 폴더에 복사
sudo cp your-cert.cer /etc/pki/ca-trust/source/anchors/
⚠️ 반드시 .cer, .crt, .pem 확장자 중 하나여야 하고, PEM 형식이어야 합니다.
3. Trust Store 갱신
sudo update-ca-trust extract
이 명령은 /etc/ssl/certs/ca-bundle.crt와 함께 /etc/pki/ca-trust/extracted/java/cacerts도 함께 갱신합니다.
4. 등록 성공 여부 확인
grep -A 1 "BEGIN CERTIFICATE" /etc/pki/ca-trust/extracted/java/cacerts | less
또는, 파일 내부에 인증서 정보가 포함됐는지 openssl로 확인:
openssl x509 -in /etc/pki/ca-trust/extracted/java/cacerts -text -noout
(위 명령은 일부 시스템에서 오류 발생 가능 — 이 경우 단순 문자열 검색이 더 유효함)
인증서가 포함되지 않는 경우 주요 원인
원인설명
인증서 형식이 DER | openssl x509 -inform der로 확인 및 PEM 변환 필요 |
인증서에 CA:TRUE가 없음 | 루트 또는 중간 CA 인증서가 아닌 경우 무시됨 |
파일 위치 또는 확장자 오류 | /anchors/가 아닌 위치거나 확장자가 비표준일 경우 무시됨 |
필요시 PEM 변환
openssl x509 -in your-cert.cer -inform der -out your-cert.pem -outform pem
sudo cp your-cert.pem /etc/pki/ca-trust/source/anchors/
sudo update-ca-trust extract
결론
/etc/pki/ca-trust/extracted/java/cacerts는 수동 수정 대상이 아니며,
PEM 인증서를 anchors/에 넣고 update-ca-trust extract를 실행해야 반영됩니다.
728x90
반응형
'python > tips' 카테고리의 다른 글
Linux Java TrustStore에서 오래된 인증서 예전 인증서 제거하는 방법 (1) | 2025.05.14 |
---|---|
Excel에서 두 시분초(예, 010203)값의 차이를 초로 계산하기 (0) | 2025.04.28 |
HTTP Request Smuggling (요청 스머글링)이란? (0) | 2025.04.28 |
jQuery 1.4에서 jQuery 3.5 이상으로 업그레이드 Plan (0) | 2025.04.22 |
linux 지정한 날짜 이전 변경된 파일 찾기 (0) | 2025.04.22 |