RPM 패키지로 네임서버를 구축한 후 chroot를 적용할 경우에는 데몬이 작동하지 못하고, /var/log/messages 파일에 다음과 같은 오류가 발생되었을 때 해결 방법입니다.
*** 오류 메시지
Dec 21 16:09:38 localhost named[1744]: ENGINE_by_id failed (crypto failure)
Dec 21 16:09:38 localhost named[1744]: error:25070067:DSO support routines:DSO_load:could not load the shared library:dso_lib.c:244:
Dec 21 16:09:38 localhost named[1744]: error:260B6084:engine routines:DYNAMIC_LOAD:dso not found:eng_dyn.c:450:
Dec 21 16:09:38 localhost named[1744]: error:2606A074:engine routines:ENGINE_by_id:no such engine:eng_list.c:417:id=gost
Dec 21 16:09:38 localhost named[1744]: initializing DST: crypto failure
Dec 21 16:09:38 localhost named[1744]: exiting (due to fatal error)
**** 대책
chroot를 적용할 경우 dnssec에 사용되는 GOST 알고리즘을 실행하는 crypto-engine의 라이브러리가 로딩되지 못하기 때문에 발생하는 문제입니다.
이것은 openssl의 libgost.so 라이브러리가 관여하는데 chroot가 적용되는 네임서버의 /usr/lib 디렉토리에 이 모듈이 존재하지 않으면 오류가 발생됩니다.
그러면 문제를 해결하기 위해서 다음과 같이 실행해 주면 됩니다.
# cp -avr /usr/lib/openssl-1.0.0j /var/lib/named/usr/lib/openssl-1.0.0j