>  기사  >  운영 및 유지보수  >  Nginx 역방향 프록시의 OCSP 스테이플링 최적화

Nginx 역방향 프록시의 OCSP 스테이플링 최적화

WBOY
WBOY원래의
2023-06-10 11:40:462131검색

Nginx는 널리 사용되는 고성능 웹 서버이자 역방향 프록시 서버입니다. 역방향 프록시 서버는 프록시를 통해 클라이언트에게 특정 네트워크 서비스를 제공하는 데 있어 네트워크 보안 분야에서 중요한 역할을 합니다. 역방향 프록시 프로세스에서 SSL 인증서 확인을 처리하는 것은 매우 중요한 단계입니다. OCSP 스테이플링은 SSL 프로토콜을 최적화하고 더 빠르고 안전한 SSL 인증서 확인을 제공할 수 있는 메커니즘입니다. 이 기사에서는 Nginx 리버스 프록시의 OCSP 스테이플링 최적화 방법에 중점을 둘 것입니다.

1. OCSP 스테이플링 개요

Nginx 리버스 프록시의 OCSP 스테이플링 최적화 방법에 집중하기 전에 먼저 OCSP 스테이플링이 무엇인지 알아보겠습니다.

OCSP(Online Certificate Status Protocol) 프로토콜은 SSL 인증서의 해지 상태를 확인할 수 있는 인증서 상태 확인을 위한 프로토콜입니다. TLS 핸드셰이크 과정에서 클라이언트는 SSL 인증서 확인을 위해 서버에 요청하며, 확인 서비스를 제공하기 위해 OCSP 프로토콜이 사용됩니다. 그러나 OCSP 접속을 위해서는 인증기관 CA에 대한 요청이 필요하므로 이 과정에서 네트워크 지연 및 보안 문제가 발생할 수 있습니다.

OCSP 스테이플링은 SSL 인증서 폐기 상태를 확인하는 프로세스를 클라이언트 측이 아닌 웹 서버 측으로 전송합니다. SSL 인증서의 OCSP 응답은 웹 서버(예: Nginx)를 통해 CA로부터 정기적으로 얻어져 다음 위치에 저장됩니다. 클라이언트에서 SSL 연결을 설정하는 과정에서 웹 서버는 캐시된 OCSP 응답도 클라이언트에 반환합니다. 이 방법을 사용하면 SSL 연결 속도를 높일 수 있을 뿐만 아니라 CA에 요청하는 클라이언트의 보안 문제도 방지할 수 있습니다.

2. Nginx에서 OCSP 스테이플링 활성화

Nginx에서 OCSP 스테이플링을 활성화하는 방법은 매우 간단합니다. SSL 인증서 구성에 다음 코드만 추가하면 됩니다.

ssl_stapling on;
ssl_stapling_verify on;
ssl_trusted_certificate /path/to/ca-certs;

다음은 각 옵션의 의미에 대한 설명입니다. :

  • ssl_stapling on : OCSP 스테이플링 메커니즘 활성화
  • ssl_stapling_verify on: OCSP 응답이 신뢰할 수 있는지 확인
  • ssl_trusted_certificate: OCSP 응답 확인을 위한 CA 인증서 체인 제공

Nginx가 OCSP 스테이플링을 활성화하면 자동으로 시작됩니다. 각 SSL 인증서 OCSP 요청의 발급 기관에 발행하고 10분의 유효 기간 동안 OCSP 응답을 메모리에 캐시합니다. OCSP 응답의 유효 기간이 캐시 시간을 초과하는 경우 발급 기관에 OCSP 응답을 다시 요청합니다. SSL 연결을 설정한 클라이언트가 확인을 요청하면 웹 서버(예: Nginx)는 캐시된 OCSP 응답을 클라이언트에 반환합니다. 이 프로세스는 SSL 연결의 속도와 보안에 영향을 미치지 않으며 악의적인 공격을 효과적으로 방지할 수도 있습니다.

3. OCSP 스테이플링 최적화

Nginx에서 OCSP 스테이플링을 활성화하는 것 외에도 일부 작업을 수행하여 성능과 보안을 더욱 최적화할 수도 있습니다.

  1. OCSP 응답 캐싱

Nginx는 기본적으로 OCSP 응답을 메모리에 캐시하지만 서버가 다시 시작되거나 캐시가 가득 차면 OCSP 스테이플링이 CA에 OCSP 응답을 다시 요청하므로 시간과 네트워크 대역폭이 소요됩니다. 이러한 상황을 방지하기 위해 OCSP 응답을 디스크에 캐시하여 서버가 다시 시작되더라도 OCSP 응답이 손실되지 않도록 할 수 있습니다. Nginx 구성 파일에 다음 코드만 추가하면 됩니다.

ssl_stapling_file /path/to/ocsp_response.der;

그 중 /path/to/ocsp_response.der는 OCSP 응답 캐시의 경로와 파일 이름입니다.

  1. 여러 CA 인증서 사용

여러 CA 인증서를 사용하여 SSL 인증서를 발급하는 경우 각 발급 기관은 서로 다른 OCSP 응답을 갖게 됩니다. 이 경우 여러 OCSP 응답을 동시에 캐시할 수 있습니다. ssl_trusted_certificate 지시문에 여러 OCSP 응답 파일의 경로를 추가하면 됩니다. 예:

ssl_trusted_certificate /path/to/ca-certs1 /path/to/ca-certs2;
  1. OCSP 응답을 더 자주 업데이트하세요

OCSP 응답은 30일 동안 유효하지만 OCSP를 더 자주 업데이트할 수 있습니다. 개선을 위한 응답 보안. OCSP 응답의 캐시 시간을 더 짧게 설정하면 됩니다. 예:

ssl_stapling_responder_timeout 5s;
ssl_stapling_verify_result on;

그중 ssl_stapling_responder_timeout은 OCSP 응답의 캐시 시간을 설정하는 데 사용되며 여기서는 5초로 설정되고 ssl_stapling_verify_result는 확인에 사용됩니다. OCSP 응답의 결과입니다.

  1. OCSP 응답을 정기적으로 업데이트하세요

OCSP 응답 캐시를 매우 짧게 설정하더라도 항상 최신 상태라는 보장은 없습니다. 따라서 Nginx의 예약된 작업을 통해 달성할 수 있는 OCSP 응답도 정기적으로 업데이트해야 합니다. 예:

0 * * * * /usr/sbin/nginx -s reload

이 작업은 매 시간 초에 Nginx 구성 파일을 다시 로드하고 OCSP 스테이플링 메커니즘을 다시 활성화합니다.

4. 요약

Nginx 역방향 프록시의 OCSP 스테이플링 메커니즘은 SSL 연결의 속도와 보안을 향상시키는 동시에 악의적인 공격을 방지할 수 있습니다. OCSP 스테이플링의 성능과 보안은 OCSP 응답을 캐싱하고, 여러 CA 인증서를 사용하고, OCSP 응답을 더 자주 업데이트하고, OCSP 응답을 정기적으로 업데이트하여 더욱 최적화할 수 있습니다. 따라서 Nginx 리버스 프록시 서버를 사용할 때 OCSP 스테이플링을 활성화하고 필요한 최적화를 수행해야 합니다.

위 내용은 Nginx 역방향 프록시의 OCSP 스테이플링 최적화의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.