helm nginx http_secure_link_module 삽질 기록

구운몽·2024년 1월 17일
0

1. 목적과 계기

  • 웹서버용 nginx 가 필요했다.
  • url이 암호화가 일부 필요했다.
  • http_secure_link_module 을 이용하면 간단한 암호화가 가능하다고 생각했다.
  • helm을 쓰면 편하다. (문제의 시작)

2. 진행 과정

  • helm을 통해 설치하는 것이 편리하다고 생각하여, bitnami/nginx를 k8s에 올렸다.
  • serverBlock이라는 values.yml을 수정하여 간단한 경로처리를 진행
  • 이후 바로 secure_link_secret secret 코드를 가이드에 맞춰 진행 (nginx http secure link)
  • 실패

3. 실패의 원인

  • This module is not built by default, it should be enabled with the --with-http_secure_link_module configuration parameter.
  • nginx에서 기본적으로 해당 옵션이 꺼져있나보다 라고 착각

4. 실패를 극복하기 위한 삽질

  • bitnami/nginx 에서 Adding custom NGINX modules 를 발견하고 직접 빌드하여 구현할 수 있지 않을까 생각.
  • --with-http_secure_link_module 구문을 추가하는 등의 삽질을 했으나, 모조리 실패
  • 로컬에 nginx.tar를 받아 직접 컴파일, 도커 우분투 안에서 컴파일 등의 시도 (이때까지만해도 nginx -V로 configure를 확인하지 않음)
  • (당연히 This module is not built by default 이런 구문을 넣어둬서.. nginx:latest에도 당연히 없을 것이라고 생각함)
  • nginx -V로 현재 구동되고 있는 nginx의 ./configure 정보를 확인 할 수 있다.

5. 삽질의 결론

  • 현재 스터디 상태에서는 불가능하다에 도달
  • bitnami/nginx의 helm과 같이 쓰려면 bitnami/nginx에 컴파일된 소스(nginx)도 필요할 것 같고, 그런 생각이 듬.
  • bitnami/nginx chart안에 단순히 nginx 버전을 변경한다고 해결될 문제가 아니었음.
  • bitnami는 기본적으로 make 전에 prefix를 붙여주는데, 경로에 관한 문제도 꽤나 복잡할 것 같다는 생각이 듬
  • 찐 결론 nginx 는 개별스크립트를 작성해서 관리하자.

6. 에필로그

https://velog.io/@edwin/nginx-httpsecurelinkmodule-사용하기

0개의 댓글