algorithm_constraints_check_failed_on_signature_algorithm_sha1withrsa

Algorithm constraints check failed on signature algorithm: SHA1withRSA

RHEL/Rocky 9 버전 이상에서 SSL관련 기능 사용시 아래와 같은 오류가 발생하는 경우가 있다.

Caused by: java.security.cert.CertificateException: Certificates do not conform to algorithm constraints
	at java.base/sun.security.ssl.AbstractTrustManagerWrapper.checkAlgorithmConstraints(SSLContextImpl.java:1571)
	at java.base/sun.security.ssl.AbstractTrustManagerWrapper.checkAdditionalTrust(SSLContextImpl.java:1496)
	at java.base/sun.security.ssl.AbstractTrustManagerWrapper.checkServerTrusted(SSLContextImpl.java:1440)
	at java.base/sun.security.ssl.CertificateMessage$T12CertificateConsumer.checkServerCerts(CertificateMessage.java:638)
	... 33 more
Caused by: java.security.cert.CertPathValidatorException: Algorithm constraints check failed on signature algorithm: SHA1withRSA
	at java.base/sun.security.provider.certpath.AlgorithmChecker.check(AlgorithmChecker.java:237)
	at java.base/sun.security.ssl.AbstractTrustManagerWrapper.checkAlgorithmConstraints(SSLContextImpl.java:1567)
	... 36 more

이와 같은 오류가 발생하는 이유는 RHEL/Rocky 9 버전부터 기본 보안 알고리즘 정책이 바뀌어서 SHA1을 더이상 허용하지 않기 때문이다.

OS에서 해당 알고리즘이 전역설정으로 비활성화 되어있기 때문에 해당 알고리즘을 허용하거나 예전 정책으로 변경하면 된다.

update-crypto-policies --set LEGACY
update-crypto-policies --set DEFAULT:SHA1

이 명령어를 실행하려면 OS에 파이썬이 설치되어있어야 한다. 만약 파이썬이 없는 시스템이라면 /etc/crypto-policies/back-ends/java.config 파일의 disabledAlgorithms 목록에서 SHA1을 제거하면 동일하게 적용된다.

이후 시스템을 리부팅 하여야 적용된다.

로그인하면 댓글을 남길 수 있습니다.
  • algorithm_constraints_check_failed_on_signature_algorithm_sha1withrsa.txt
  • 마지막으로 수정됨: 2024/09/05 04:41
  • 저자 koov