>운영 및 유지보수 >엔진스 >Nginx의 HTTPS 성능 최적화 및 보안 설정

Nginx의 HTTPS 성능 최적화 및 보안 설정

WBOY
WBOY원래의
2023-06-10 18:13:381579검색

인터넷의 급속한 발전과 함께 데이터 전송에서 HTTPS 프로토콜의 보안이 점점 더 많은 관심을 받고 있습니다. 널리 사용되는 웹 서버인 Nginx는 HTTPS 프로토콜도 지원합니다. Nginx를 HTTPS 서버로 사용하는 경우 일부 성능 최적화 및 보안 설정에 주의해야 합니다. 이 기사에서는 웹사이트 보안을 더욱 효과적으로 보호하고 웹사이트 성능을 향상시키는 데 도움이 되는 Nginx의 HTTPS 성능 최적화 및 보안 설정에 대한 몇 가지 방법을 소개합니다.

1. HTTPS 성능 최적화

1.1 HTTP/2 프로토콜 활성화

HTTP/2는 웹 애플리케이션의 성능과 보안을 향상시킬 수 있는 최신 웹 프로토콜입니다. nginx에서 HTTP/2 프로토콜을 활성화하면 HTTPS 성능이 크게 향상될 수 있습니다. HTTP/2를 활성화하려면 먼저 적절한 nginx 버전을 사용하고 있는지 확인해야 합니다. nginx 버전은 1.9.5 이상, OpenSSL 버전은 1.0.2 이상이어야 합니다. 사용된 nginx 버전이 요구 사항을 충족하는지 확인한 후 HTTPS 서버 블록에 다음 구성을 추가할 수 있습니다.

listen 443 ssl http2;

1.2 SSL 캐시 구성

SSL 프로토콜은 암호화 프로토콜이며 암호화 및 암호 해독 프로세스가 상대적으로 복잡합니다. SSL 성능을 향상시키려면 SSL 캐싱을 구성하여 TLS 핸드셰이크 상호 작용 수를 줄일 수 있습니다. HTTPS 서버 블록에 다음 구성을 추가할 수 있습니다.

ssl_session_cache shared:SSL:10m;
ssl_session_timeout 5m;

위 구성은 10MB 공유 캐시를 활성화하고 세션 시간 제한을 5분으로 설정합니다.

1.3 ssl_prefer_server_ciphers 지시문 사용

ssl_prefer_server_ciphers는 SSL 핸드셰이크 중에 사용되는 암호 제품군을 결정하는 데 사용됩니다. 이 지시어를 활성화하면 서버가 구성된 암호화 제품군을 선호하게 됩니다. 서버측 암호화 제품군의 우선순위를 활성화하려면 다음 구성을 추가하세요.

ssl_prefer_server_ciphers On;

2. HTTPS 보안 설정

2.1 보안 SSL 구성

SSL 프로토콜은 암호화 기반 보안 프로토콜이지만 제대로 구성되지 않으면 여전히 문제가 발생할 수 있습니다. 보안 취약점이 발생합니다. 다음은 몇 가지 안전한 SSL 구성 권장 사항입니다.

  • SSLv2 및 SSLv3 프로토콜은 안전하지 않은 것으로 입증되었으므로 비활성화하세요.
  • TLSv1.0 및 TLSv1.1 프로토콜의 경우 RC4 암호화 및 약한 암호화 제품군을 비활성화해야 합니다.
  • 보안 강화를 위해 AES 암호화 제품군을 사용하세요.
  • 보안을 강화하려면 전체 모드 TLS 암호화를 활성화하세요.

2.2 보안 SSL 인증서

SSL 인증서는 웹 애플리케이션에서 가장 중요한 보안 구성 요소 중 하나이며 클라이언트와의 통신을 암호화하는 데 사용됩니다. 다음은 몇 가지 보안 인증서 구성 제안 사항입니다.

  • CA 서명 인증서를 사용하여 인증서의 진위성과 신뢰성을 보장하세요.
  • 인증서 교체 횟수를 줄이려면 더 긴 인증서 유효 기간(최대 2~3년)을 사용하세요.
  • 자체 서명된 인증서를 사용하면 연결이 안전하지 않을 수 있으므로 금지됩니다.

2.3 HSTS(HTTP 엄격한 전송 보안) 구성

HSTS는 HTTP를 사용하여 웹 사이트에 액세스하는 것이 금지되어 있음을 클라이언트에 알려 HTTPS 액세스를 보장하는 보안 메커니즘입니다. 클라이언트 브라우저에서 HSTS를 활성화하려면 HTTPS 서버 블록에 다음 구성을 추가하세요.

add_header Strict-Transport-Security "max-age=31536000; includeSubDomains; preload";

2.4 OCSP 스테이플링 활성화

OCSP 스테이플링은 클라이언트가 CA 서버에 OCSP 요청을 보낼 필요가 없는 안전한 TLS 핸드셰이크 프로토콜입니다. OCSP 스테이플링을 활성화하려면 다음 구성을 추가합니다.

ssl_stapling on;
ssl_stapling_verify on;
resolver <DNS SERVER>;

위 구성은 OCSP 스테이플링을 활성화하고 OCSP 스테이플링 확인을 활성화합니다. OCSP 스테이플링을 사용하려면 DNS 서버 주소를 제공하고 DNS 서버가 OCSP를 지원하는지 확인해야 합니다.

결론

Nginx는 HTTPS 프로토콜과 다양한 보안 최적화 설정을 지원하는 인기 있는 웹 서버입니다. 이 문서에서는 Nginx의 HTTPS 성능 및 보안 설정에 대한 몇 가지 권장 사항을 제시합니다. 이러한 설정을 사용하면 사이트 보안을 강화하고 사이트 성능을 향상시킬 수 있습니다. 이 기사가 도움이 되기를 바랍니다.

위 내용은 Nginx의 HTTPS 성능 최적화 및 보안 설정의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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