nginx 'module "ngx_http_modsecurity_module.so" is not binary compatible' 에러 다루기

by antibiotics posted Jul 26, 2021
?

단축키

Prev이전 문서

Next다음 문서

ESC닫기

크게 작게 위로 아래로 댓글로 가기 인쇄

1.PNG

 

nginx 1.14.0에 modsecurity 모듈을 설치하자 위와 같이 "module ~ngx_http_modsecurity_module.so is not binary compatible ~" 에러를 뱉어내며 nginx 리로드에 실패합니다.

 

저는 nginx를 최신 버전인 1.18.0으로 업데이트하자 이 문제가 해결되었습니다.

 

# add-apt-repository ppa:nginx/stable

# apt update

# apt install nginx

 

# nginx -V

 

nginx를 업데이트하고 버전을 확인합니다.

 

# wget http://nginx.org/download/nginx-1.18.0.tar.gz

# tar xvzf nginx-1.18.0.tar.gz

# cd nginx-1.18.0/

# ./configure --with-compat --add-dynamic-module=../ModSecurity-nginx

# make modules

 

업데이트한 버전의 nginx 소스를 다운받고 동적 모듈을 다시 컴파일합니다.

 

# cp objs/ngx_http_modsecurity_module.so /usr/share/nginx/modules/

 

컴파일한 동적 모듈을 nginx에 복사합니다.

 

# systemctl restart nginx

 

nginx를 리로드하면 정상적으로 modsecurity가 적용됩니다.

 

 

nginx의 modsecurity 설정에 관한 내용은 아래 블로그에 잘 나와있어서 링크를 첨부합니다.

 

[Nginx ModSecurity 설치 및 설정 - Nginx 웹 방화벽]

https://hoing.io/archives/9487